0

Getting error while starting apache + SVN

Below is the error -

-bash-4.1$ ./apachectl configtest
httpd: Syntax error on line 149 of /ngs/app/istsvnp/httpd/conf/httpd.conf: Cannot load modules/mod_dav_svn.so into server: /ngs/app/istsvnp/httpd/modules/mod_dav_svn.so: undefined symbol: svn_error_purge_tracing

When checking for shared library dependencies for mod_dav_svn.so -

bash-4.1$ ldd -r /ngs/app/istsvnp/httpd/modules/mod_dav_svn.so

            linux-vdso.so.1 =>  (0x00007fff9f7ff000)
            libsvn_repos-1.so.0 => /usr/lib64/libsvn_repos-1.so.0 (0x00007f42a4b58000)
            libsvn_fs-1.so.0 => /usr/lib64/libsvn_fs-1.so.0 (0x00007f42a4950000)
            libsvn_fs_fs-1.so.0 => /usr/lib64/libsvn_fs_fs-1.so.0 (0x00007f42a4728000)
            libsvn_fs_util-1.so.0 => /usr/lib64/libsvn_fs_util-1.so.0 (0x00007f42a4526000)
            libsvn_delta-1.so.0 => /usr/lib64/libsvn_delta-1.so.0 (0x00007f42a431a000)
            libsvn_subr-1.so.0 => /usr/lib64/libsvn_subr-1.so.0 (0x00007f42a40c9000)
            libaprutil-1.so.0 => /ngs/app/istsvnp/library/lib/libaprutil-1.so.0 (0x00007f42a3ea4000)
            libexpat.so.0 => /ngs/app/istsvnp/library/lib/libexpat.so.0 (0x00007f42a3c7c000)
            libapr-1.so.0 => /ngs/app/istsvnp/library/lib/libapr-1.so.0 (0x00007f42a3a4a000)
            librt.so.1 => /lib64/librt.so.1 (0x00007f42a3842000)
            libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007f42a360a000)
            libz.so.1 => /lib64/libz.so.1 (0x00007f42a33f4000)
            libdl.so.2 => /lib64/libdl.so.2 (0x00007f42a31f0000)
            libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f42a2fd2000)
            libc.so.6 => /lib64/libc.so.6 (0x00007f42a2c3e000)
            libsvn_fs_base-1.so.0 => /usr/lib64/libsvn_fs_base-1.so.0 (0x00007f42a2a0f000)
            libsqlite3.so.0 => /usr/lib64/libsqlite3.so.0 (0x00007f42a277f000)
            libexpat.so.1 => /ngs/app/istsvnp/Libexpat/lib/libexpat.so.1 (0x00007f42a2557000)
            libdb-4.7.so => /lib64/libdb-4.7.so (0x00007f42a21e3000)
            /lib64/ld-linux-x86-64.so.2 (0x00007f42a4fb9000)
            libfreebl3.so => /lib64/libfreebl3.so (0x00007f42a1f6b000)
            undefined symbol: ap_filter_flush   (/ngs/app/istsvnp/httpd/modules/mod_dav_svn.so)
            undefined symbol: svn_error_purge_tracing   (/ngs/app/istsvnp/httpd/modules/mod_dav_svn.so)
            undefined symbol: svn_repos_fs_change_rev_prop4 (/ngs/app/istsvnp/httpd/modules/mod_dav_svn.so)
            undefined symbol: svn_repos__fs_type    (/ngs/app/istsvnp/httpd/modules/mod_dav_svn.so)
            undefined symbol: dav_register_provider (/ngs/app/istsvnp/httpd/modules/mod_dav_svn.so)
            undefined symbol: ap_fputstrs   (/ngs/app/istsvnp/httpd/modules/mod_dav_svn.so)
            ......
            ......

I can start apache with same configuration in a test box where I have installed Apache + SVN without any issue.

But copying all necessary binary files to a Production box and starting apache over there creating the above mentioned error.

I have verified that there is no issue with LD_LIBRARY_PATH and all the contents of Test box is copied to production box by creating tar file and doing sftp.

Even though I deleted all Apache + SVN reference from production box and installed Apache + SVN modules afresh in Test box and copied the binaries once again from Test box to production box, same error is occurring.

But I can start apache module only without SVN modules (i.e by removing mod_dav_svn.so and mod_authz_svn.so from httpd.conf)

Below is the way I have installed SVN in Test box.

tar jxf subversion-1.8.11.tar.bz2
cd subversion-1.8.11           

./configure --prefix=/ngs/app/apstoold/ApacheAndSVN/subversion --disable-static --with-expat=/ngs/app/apstoold/ApacheAndSVN/Libexpat/include:/ngs/app/apstoold/ApacheAndSVN/Libexpat:lib --with-apxs=/ngs/app/apstoold/ApacheAndSVN/httpd/bin/apxs --with-apr=/ngs/app/apstoold/ApacheAndSVN/library/bin/apr-1-config --with-apr-util=/ngs/app/apstoold/ApacheAndSVN/library/bin/apu-1-config

make
make install

I have the following versions installed.

Server: Apache/2.4.12 (Unix) OpenSSL/1.0.2 SVN/1.8.11 PHP/5.5.21 

Can someone please help me out.

Thanks

user3583381
  • 11
  • 1
  • 4

1 Answers1

1

You have obviously a dependency problem. I do not know which distribution you are using but I guess(!) you have manually updated SVN to 1.8.x and have run into these problems. There are multiple problems possible:

  1. you have a problem with libapache2-svn 2.2 vs. 2.4
  2. you have a problem with libsvn1 1.6.x/1.7.x vs 1.8.x
  3. you may have an loadmodule dependency problem see here: https://serverfault.com/questions/540873/problems-after-updating-svn-to-1-8-3-on-ubuntu-12-10-using-wandisco-package
Community
  • 1
  • 1
Peter Parker
  • 29,093
  • 5
  • 52
  • 80
  • Hi Peter, Thanks for the update. But I am clueless over here. In both source and destination (Test box as well as Production box) I am using Linux system (Linux 2.6.39-400.214.4.el6uek.x86_64 x86_64) and I have not updated SVN to 1.8 manually. I have installed following modules (openssl-1.0.2, httpd-2.4.12, pcre-8.36, apr-1.5.1, apr-util-1.5.4, expat-2.1.0, subversion-1.8.11, php-5.5.21) and have set LD_LIBRARY_PATH properly. Any help is greatly appreciated. – user3583381 Mar 28 '15 at 20:41
  • I think you compiled the SVN with apache 2.2 support. check for a parameter there. – Peter Parker Mar 30 '15 at 16:46