Bug 508568 - python client module import fails with missing symbol db_create
Summary: python client module import fails with missing symbol db_create
Keywords:
Status: CLOSED DUPLICATE of bug 508424
Alias: None
Product: Fedora
Classification: Fedora
Component: subversion
Version: 10
Hardware: All
OS: Linux
low
high
Target Milestone: ---
Assignee: Joe Orton
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-06-28 16:33 UTC by Carl Roth
Modified: 2009-07-06 15:53 UTC (History)
7 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2009-07-06 12:59:25 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Carl Roth 2009-06-28 16:33:58 UTC
Description of problem:

The Python client interface to Subversion stopped working:

$ python
Python 2.5.2 (r252:60911, Sep 30 2008, 15:42:03)
[GCC 4.3.2 20080917 (Red Hat 4.3.2-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import svn.client
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib64/python2.5/site-packages/svn/client.py", line 19, in <module>
    from libsvn.client import *
  File "/usr/lib64/python2.5/site-packages/libsvn/client.py", line 7, in <module>
    import _client
ImportError: /usr/lib64/libsvn_fs_base-1.so.0: undefined symbol: db_create
>>>

This seems to coincide with a recent update to apr-util (which Subversion depends on).

Version-Release number of selected component (if applicable):

python-2.5.2-1.fc10.x86_64
subversion-1.5.4-3.x86_64
apr-util-1.3.7-1.fc10.x86_64
db4-4.7.25-7.fc10.x86_64

How reproducible:

Always.  The problem affects F10, but not F9 or F11.

Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:

Comment 1 Carl Roth 2009-06-28 16:58:28 UTC
Reverting the F10 system to apr-util-1.3.4 seems to correct the problem for now.  Systems I have with F9 are using the same, most-recent version (1.3.7-1) and do not exhibit the problem.

Comment 2 Carl Roth 2009-06-28 20:52:26 UTC
Correction, the F11 systems use the same version (1.3.7-1).  F9 uses an older version is is of no consequence.

On F10, I see

old version

$ ldd /usr/lib64/libaprutil-1.so.0
        linux-vdso.so.1 =>  (0x00007fff22bff000)
        libuuid.so.1 => /lib64/libuuid.so.1 (0x00007f56f32ab000)
        libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007f56f3073000)
        libdb-4.7.so => /lib64/libdb-4.7.so (0x00007f56f2cff000)
        libexpat.so.1 => /lib64/libexpat.so.1 (0x00007f56f2ad5000)
        libapr-1.so.0 => /usr/lib64/libapr-1.so.0 (0x00007f56f28aa000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f56f268e000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007f56f2489000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f56f2117000)
        /lib64/ld-linux-x86-64.so.2 (0x0000003506000000)

new version

$ ldd /usr/lib64/libaprutil-1.so.0
        linux-vdso.so.1 =>  (0x00007fff2b0a9000)
        libuuid.so.1 => /lib64/libuuid.so.1 (0x00007fa9a2b1a000)
        libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007fa9a28e2000)
        libexpat.so.1 => /lib64/libexpat.so.1 (0x00007fa9a26b9000)
        libapr-1.so.0 => /usr/lib64/libapr-1.so.0 (0x00007fa9a248d000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fa9a2271000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007fa9a206d000)
        libc.so.6 => /lib64/libc.so.6 (0x00007fa9a1cfa000)
        /lib64/ld-linux-x86-64.so.2 (0x0000003506000000)

i.e. not linked against libdb (to provide 'db_create').

On F11, other components of Subversion (i.e. libsvn_delta.so) are linked against libdb to get this symbol.

Comment 3 Nick Upson 2009-07-06 12:41:24 UTC
I believe I have the same problem with FC10, only I'm not using 64 bit

downgrading the apr-util to 1.3.4 as described gives me 

# python
Python 2.5.2 (r252:60911, Sep 30 2008, 15:41:38)
[GCC 4.3.2 20080917 (Red Hat 4.3.2-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import svn.client
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.5/site-packages/svn/client.py", line 19, in <module>
    from libsvn.client import *
  File "/usr/lib/python2.5/site-packages/libsvn/client.py", line 7, in <module>
    import _client
ImportError: libaprutil-1.so.0: cannot open shared object file: No such file or directory

after reinstalling apr-util-1.3.7-1.fc10, I get:

# python
Python 2.5.2 (r252:60911, Sep 30 2008, 15:41:38)
[GCC 4.3.2 20080917 (Red Hat 4.3.2-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import svn.client
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.5/site-packages/svn/client.py", line 19, in <module>
    from libsvn.client import *
  File "/usr/lib/python2.5/site-packages/libsvn/client.py", line 7, in <module>
    import _client
ImportError: /usr/lib/libsvn_fs_base-1.so.0: undefined symbol: db_create

# ldd /usr/lib/libaprutil-1.so.0
        linux-gate.so.1 =>  (0x00110000)
        libuuid.so.1 => /lib/libuuid.so.1 (0x00133000)
        libcrypt.so.1 => /lib/libcrypt.so.1 (0x00137000)
        libexpat.so.1 => /lib/libexpat.so.1 (0x0016a000)
        libapr-1.so.0 => /usr/lib/libapr-1.so.0 (0x00191000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x001bc000)
        libdl.so.2 => /lib/libdl.so.2 (0x001d6000)
        libc.so.6 => /lib/libc.so.6 (0x001db000)
        /lib/ld-linux.so.2 (0x00641000)

Comment 4 Joe Orton 2009-07-06 12:59:25 UTC
Please test this apr-util update:

https://admin.fedoraproject.org/updates/F10/FEDORA-2009-7187

and leave feedback on the update tool if this works for you.

*** This bug has been marked as a duplicate of bug 508424 ***

Comment 5 Pete Stieber 2009-07-06 15:53:37 UTC
Nick, after downgrading you probably have old symbolic links in /usr/lib for libapr-1.so.0 and libaprutil-1.so.0.  Does removing the invalid links and running

# ln -s libapr-1.so.0.3.3 libapr-1.so.0
# ln -s libaprutil-1.so.0 libaprutil-1.so.0.3.4

help?


Note You need to log in before you can comment on or make changes to this bug.