in reply to Do XS-components require special considerations with CGI? [SOLVED]

My explorations, alas, are taking me deep into DBIguts ...

I have now established that the software is falling-down because it cannot find the _login subroutine (in the XS)... only in the Apache-CGI environment. And, I have established that in that environment it has successfully DynaLoaded mysql.so as well as a great many other things. I know that DBI->connect() calls, again in that environment, can be issued and do succeed. But the _login subroutine still is not there.

Looking further (in this extemporaneous train-of-thought), I can see that no .so module actually contains that routine, on their system or on mine. Determined viz:

grep -rilw _login . | grep \.so | xargs nm | grep _login

A side-by-side diff of two logs... one from CGI and one from the command-line, shows no difference between them except that one fails and one does not. In particular, DynaLoader's recitation of its search-path (which it gives at startup), is identical in both cases. The LD_LIBRARY_PATH environment-variable in both cases is undef. I frankly no longer believe that the root cause of the failure has to do with dynamic-loading, at least not in any obvious way. But that pesky out of memory message (not seen here in either log, but induced by various ways I've previously related...)... what did it mean?

And so my quest through mounds of dirty DBI “guts” continues. News at 11... (But no video. I promise.)