Mike O'Rourke already wrote:
<<<.....>>>
After a couple of stratigically placed fprintf's, I determined that the function hash_insert () was _never_ being called! I saw where it was passing "partition_default" as the key and "/var/spool/imap" as the newval, but the fprintf to verify these values that I put immediately after the variable declarations in hash.c / hash_insert () never printed anything!
It turns out that mysql (3.23.53 here) has a hash_insert function that expects the hash table as the first argument and not the last as in the cyrus implementation. Without recompiling mysql to put a fprintf statement in it's hash_insert () function, I can't verify that cyrus is trying to use that one, but the assumption seems reasonable.
Why do I have "-lmysqlclient" in the $LIBS variable in the first place??? I compiled SASL 2.1.12 with mysql support, and cyrus-imapd fails with undefined symbols (all from the libmysqlclient) if I do not include it.
Suggestions??
Mike.
That seems to be it. I changed all of the hash_insert to cyrus_hash_insert and master was happy. Anybody know how to avoid this kind of confusion with compiler options, put this before that in ld.so.conf, etc.? And will any solution for cyrus likely break future mysql compiles on the machine?
Once cyrus-imapd was running, up came problem 2 ... the dreaded Too many files open error. See my next message.
Mike.