Hi Sergej, thanks for your tip! A first test shows that this work now. I will do some more tests tomorrow. And in case of further problems I will come back. Thanks!!! AugustQ On Do, 2013-12-05 at 19:06 +0100, Sergei Golubchik wrote:
Hi, AugustQ!
On Dec 05, AugustQ wrote:
just one question: I have a simple plugin (a minimal storage engine) that does not load. When I try to load it I get this error-message:
MariaDB [(none)]> install plugin dummy soname 'ha_dummy'; ERROR 1126 (HY000): Can't open shared library '/home/august/MariaDB/pgm/lib/plugin/ha_dummy.so' (errno: 2 undefined symbol: _ZN9ha_myisam5cloneEPKcP11st_mem_root)
Can you please give me a tip. Thanks.
Environment is MariaDB 10.0.4.
The same code works without any problems in MySQL (5.5.8 - just for a test).
This happens because in MariaDB statically linked plugins don't export all their symbols. This helps to avoid name clashes with dynamically loaded plugins (like, when InnoDB is loaded and XtraDB is compiled in). Unlike MySQL we have a lot more of community developed storage engines, and we have to take these issues seriously.
Because of that, the symbol _ZN9ha_myisam5cloneEPKcP11st_mem_root is local in MariaDB, and your plugin doesn't see it. In MySQL this symbol is global.
I'll see if I can remove this.
Alternatively, you can try to link your plugin explicitly with libmyisam.a
Regards, Sergei