[MDEV-7503] CONNECT table for mdb files Created: 2015-01-25 Updated: 2022-11-20 Resolved: 2022-11-20 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Storage Engine - Connect |
| Affects Version/s: | 10.0.15 |
| Fix Version/s: | N/A |
| Type: | Bug | Priority: | Major |
| Reporter: | Takuya Aoki (Inactive) | Assignee: | Olivier Bertrand |
| Resolution: | Cannot Reproduce | Votes: | 1 |
| Labels: | None | ||
| Environment: |
CentOS release 6.5 (X86_64) |
||
| Attachments: |
|
| Description |
|
Like in the below manual, Installing mdbtools
checking isql
making a CONNECT table
record in log file(/var/lib/mysql/servername.err)
|
| Comments |
| Comment by Takuya Aoki (Inactive) [ 2015-01-26 ] | ||||||||||||||||||||||||||||||||||||||
|
I also tested on 10.0.16 build-7290.
record in log file(/var/lib/mysql/servername.err)
| ||||||||||||||||||||||||||||||||||||||
| Comment by Olivier Bertrand [ 2015-01-27 ] | ||||||||||||||||||||||||||||||||||||||
|
Apparently there are two issues in what you are reporting: (1) ERROR 1105 (HY000): [unixODBC][Driver Manager]Connnection does not exist This can be caused by something wrong in the unixodbc data source description. The above message is a driver message and is not issued by CONNECT. It tells that given the connection 'DSN=testmdb3' it is unable to contact the data source. Before I try to reproduce this, be sure to check all is right in the data source definition. (2) Crash of theMariaDB server when trying to create the CONNECT table. Looking into the log, it seems to happen in the function VerifyConnect. I remember having already experienced crashes in this function in the past and now it is no more called. Are you using an old CONNECT version? I don't remember when this was fixed but I am sure that version 10.0.15 does not call it anymore. | ||||||||||||||||||||||||||||||||||||||
| Comment by Takuya Aoki (Inactive) [ 2015-01-27 ] | ||||||||||||||||||||||||||||||||||||||
|
I tested in 2 versions. 10.0.16 build-7290 (1) ERROR 1105 (HY000): [unixODBC][Driver Manager]Connnection does not exist As you say, the crash problem seems to be fixed already. /etc/odbc.ini
making a CONNECT table
record in log file(/var/lib/mysql/servername.err)
| ||||||||||||||||||||||||||||||||||||||
| Comment by Olivier Bertrand [ 2015-01-27 ] | ||||||||||||||||||||||||||||||||||||||
|
From your description I see two problems: (1) ERROR 1105 (HY000): Unsupported SQL type 52. Looking into sql.h and sqlext.h I see not ODBC data type equal to 52. Do you know what data types you are using in your table? (2) After printing the above messge, the connect_assisted_discovery function returns HA_ERR_INTERNAL_ERROR to MariaDB. The crash happens then but not in CONNECT. | ||||||||||||||||||||||||||||||||||||||
| Comment by Takuya Aoki (Inactive) [ 2015-01-28 ] | ||||||||||||||||||||||||||||||||||||||
|
About (1) I get below for text types About(2) | ||||||||||||||||||||||||||||||||||||||
| Comment by Olivier Bertrand [ 2015-01-28 ] | ||||||||||||||||||||||||||||||||||||||
|
All these SQL types number do not exist. I don't know where they can come from. There is something strange in your data source. connect_assisted_discovery is the function called when a table is created with no column definition. It retrieves the column definition from the data source and builds the complete create table statement that you can see using the SHOW CREATE TABLE command. It is a CONNECT function but, after it returns, no more CONNECT code is executed. The reason for the crash is indeed in MariaDB, but may be outside of CONNECT. | ||||||||||||||||||||||||||||||||||||||
| Comment by Takuya Aoki (Inactive) [ 2015-02-02 ] | ||||||||||||||||||||||||||||||||||||||
|
I added the data file so you can have a look. | ||||||||||||||||||||||||||||||||||||||
| Comment by Olivier Bertrand [ 2015-02-03 ] | ||||||||||||||||||||||||||||||||||||||
|
Using your data file, I was able to read it as well on Windows and Linux (ubuntu) On Windows
On Linux (ubuntu)I downloaded and install MDBTools. After that I was able to connect to the mdb file and read the t_test table using the same create table than on Windows. There seem to be nothing special with CONNECT. However, this and some other related issues such as |