Hi Henning,
sorry for the delay. We had some busy days :-(
Have you tried to use only a subset of the modules, and see if the error happens again? And if you ommit the mi_fifo module, do you get another error?
We tried without the mi_fifo and xlog modules, but the error still occured. The log-msg was slightly different:
/usr/local/sbin/openser[21357]: CRITICAL:core:init_io_wait: could not alloc fd hashtable (25008 bytes)
Then we removed mysql and suddenly openser worked fine. So we tried some different scenarios for compiling the mysql module. What now works for us is:
- Linking against the static mysqlclient library (/usr/lib/mysql/libmysqlclient.a) - Additionally using the following libs: -lcrypt -lnsl -lssl -lcrypto (those were suggested by the 'mysql_config' tool - which is not available on our machine, but we got the output from running mysql_config on another machine)
The "LIBS="-section of modules/mysql/Makefile now looks like that:
# libmysqlclient locations on RH/Suse, Solaris /OpenBSD, FreeBSD # (Debian does the right thing and puts it in /usr/lib) LIBS=/usr/lib/mysql/libmysqlclient.a -L$(SYSBASE)/lib -L$(LOCALBASE)/lib -L$(LOCALBASE)/lib/mysql \ -L$(LOCALBASE)/mysql/lib/mysql/ \ -L$(LOCALBASE)/mysql/lib \ -L$(SYSBASE)/lib64/mysql \ -lm -lz -lcrypt -lnsl -lssl -lcrypto
(When trying this on a machine with mysql_config available don't forget to remove the autodetection from the makefile!)
We suspect the mysqlclient installation on that machine to be a little corrupt. Perhaps headers and libs don't belong to the same mysql version. But we have no clue why it doesn't work with the dynamic library but with the static one. Additionally it's interessting that the problem depends on the number of openser childs (as stated in our first mail, with only 2 childs everything works fine - even with the dynamic lib). So perhaps using the static lib is only a workaround for a bug in openser - we simply don't know. Nevertheless, we've got a working openser installation now!!!!!
Thanks for your help and hints, which led us to the solution.
Regards, Christian