bug 231848 is back with the sqlite module integrated into python. symclash says: # ./symclash.py /usr/lib64/python2.5/lib-dynload/*.so \ /usr/lib64/httpd/modules/*.so Clashes by library: Clashes for /usr/lib64/python2.5/lib-dynload/timemodule.so: with /usr/lib64/python2.5/lib-dynload/datetime.so => inittime inittimezone Clashes for /usr/lib64/python2.5/lib-dynload/_sqlite3.so: with /usr/lib64/httpd/modules/mod_mem_cache.so => cache_init Clashes for /usr/lib64/httpd/modules/mod_mem_cache.so: with /usr/lib64/python2.5/lib-dynload/_sqlite3.so => cache_init Clashes for /usr/lib64/python2.5/lib-dynload/datetime.so: with /usr/lib64/python2.5/lib-dynload/timemodule.so => inittime inittimezone Clashes for /usr/lib64/python2.5/lib-dynload/_ctypes_test.so: with /usr/lib64/python2.5/lib-dynload/_ctypes.so => module_methods Clashes for /usr/lib64/python2.5/lib-dynload/_ctypes.so: with /usr/lib64/python2.5/lib-dynload/_ctypes_test.so => module_methods
(reassigned, since I already have a bug to track getting this fixed in httpd; it needs to be fixed in _sqlite3.so too)
Created attachment 237231 [details] minimal fix This is a minimal patch for the issue. (tested to build only) Note that this is a regression since F7 and it breaks several web applications.
... and hence, please fix for F8.
How is this a regression, because we didn't ship sqlite in Fed-7 and do in Fed-8? The sqlite module in python looks like a complete namespace violation, AFAICS the only thing that should be exported directly from the entire .so is init_sqlite3() ... even the same file that exports "cache_init" also exports "new_node" and "cache_get" *sigh*. So I'm hesitant to add just a tiny patch that fixes this one symbol clash. I can fairly easily get it down to a reasonable number of better named functions (init_sqlite3 + one pysqlite_* for each file), but even then I don't want to put it into our package unless upstream takes it -- as it's bound to cause conflict as we update to newer upstreams.
python-sqlite2-2.3.3 is in F7. And in fact, it's also still in F8! Which is fubar. I gave a minimal patch with minimal risk. A complete fix would be upgrade the copy of python-sqlite bundled in the Python tarball to 2.3.3. Or to stop shipping the old, broken copy of sqlite2 as well as the new, fixed one.
Ok, I see that this patch is a minimal pysqlite2-2.3.3 update ... so I'm much happier with the patch from comment#2. And a Fed-8 blocker issue came up that required a python update, so I added the patch and it should be in GA.
python-2.5-15.fc7 has been pushed to the Fedora 7 testing repository. If problems still persist, please make note of it in this bug report. If you want to test the update, you can install it with su -c 'yum --enablerepo=updates-testing update python'
python-2.5-15.fc7 has been pushed to the Fedora 7 stable repository. If problems still persist, please make note of it in this bug report.