[MDEV-7804] Segfault when creating CONNECT table Created: 2015-03-19 Updated: 2015-07-28 Resolved: 2015-07-28 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Galera, Storage Engine - Connect |
| Affects Version/s: | 10.0.17-galera |
| Fix Version/s: | N/A |
| Type: | Bug | Priority: | Major |
| Reporter: | Chris Casto | Assignee: | Nirbhay Choubey (Inactive) |
| Resolution: | Duplicate | Votes: | 1 |
| Labels: | connect-engine | ||
| Environment: |
CentOS release 6.6 (Final) Linux 2.6.32-504.12.2.el6.x86_64 #1 SMP Wed Mar 11 22:03:14 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux VMWare guest w/ SAN storage 2 vCPUs |
||
| Attachments: |
|
| Description |
|
I installed MariaDB-Galera-server and MariaDB-connect-engine via the yum repository. Whenever I tried creating a CONNECT table via ODBC, I get this error:
I thought that maybe the CONNECT engine wasn't installed, but when I ran SHOW ENGINES it had a "Yes" under support. Oh well. It's annoying that it won't auto-detect the column names, but whatever. So I tried connecting to a different MySQL database using TABLE_TYPE=MYSQL, and I get this instead:
Weird. So I tried taking table_type out...
Uh oh. Sure enough, the error log has a nice little stacktrace telling me all about the segfault it just encountered, and I'm left with a shell of a table that causes additional segfaults any time I try to SELECT against it. The attached error log contains two segfaults: one from the CREATE and one from the SELECT. I've tried uninstalling and reinstalling the various MarisDB packages in different order to no avail. This was a clean OS install, so there is currently nothing else installed on it other than the CentOS stock packages, Puppet, and unixODBC. I don't know if this is relevant or not, but while the CONNECT engine does show up when I run SHOW ENGINES, it does not show up in the list of engines available when using the MySQL Workbench GUI to create a table. |
| Comments |
| Comment by Elena Stepanova [ 2015-03-19 ] | |||||||||||||||||||||||||||||||||||||||||
|
Could you please check it out before we get Olivier involved? Or maybe you already know and have it documented that Galera does not support Connect engine? I would expect it to be true, but then it would be great to somehow prevent installing unsupported engines. | |||||||||||||||||||||||||||||||||||||||||
| Comment by Chris Casto [ 2015-03-19 ] | |||||||||||||||||||||||||||||||||||||||||
|
I forgot to add the galera.cnf, but I have wsrep_on set to OFF because I'm testing things on a single instance before I start scaling out. Also, when the CONNECT engine didn't work I tried the same thing with the FEDERATED engine and it worked fine. | |||||||||||||||||||||||||||||||||||||||||
| Comment by Nirbhay Choubey (Inactive) [ 2015-03-21 ] | |||||||||||||||||||||||||||||||||||||||||
|
Hi! I tried repeating some of provided scenarios on CentOS and Ubuntu on
The issue does not seem to be specific to galera cluster. | |||||||||||||||||||||||||||||||||||||||||
| Comment by Olivier Bertrand [ 2015-03-21 ] | |||||||||||||||||||||||||||||||||||||||||
|
I never used galera and cannot make any test on it.
Are you sure they are defined in the compile process?
Normally all this should be handled in CMakeLists.txt in which for instance you can find:
Perhaps CONNECT_WITH_MYSQL and CONNECT_WITH_ODBC are not ON by default on your system. This does not explain why TABLE_TYPE is not recognized as an option. This is like CONNECT was not recognized at all. About the error log, it does not provide useful information. It should if the version is a _DEBUG version but is useless if using a RELEASE version. Your last comment seems to show that everything worked allright. So what was specific in the test that failed? In your last comment you execute:
Did you mean:
| |||||||||||||||||||||||||||||||||||||||||
| Comment by Nirbhay Choubey (Inactive) [ 2015-03-21 ] | |||||||||||||||||||||||||||||||||||||||||
|
The issue does not seem to be related to galera cluster. The connect engine package https://github.com/MariaDB/server/blob/10.0/storage/connect/CMakeLists.txt#L168 Also, from the attached error log, the connect engine does not looks pretty new :
INSTALL SONAME is a variant of INSTALL PLUGIN that loads all the plugins | |||||||||||||||||||||||||||||||||||||||||
| Comment by Olivier Bertrand [ 2015-03-21 ] | |||||||||||||||||||||||||||||||||||||||||
|
Can you compile a DEBUG version of the server that crashes. Then I could see where the error occured. Another hint: | |||||||||||||||||||||||||||||||||||||||||
| Comment by Olivier Bertrand [ 2015-03-21 ] | |||||||||||||||||||||||||||||||||||||||||
|
I have done some more tests: INSTALL SONAME works (even if UDF's are not installed) Therefore the only thing that could help me find the cause of your error is a log file from a DEBUG version. | |||||||||||||||||||||||||||||||||||||||||
| Comment by Nirbhay Choubey (Inactive) [ 2015-07-28 ] | |||||||||||||||||||||||||||||||||||||||||
|
Duplicate of |