[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

All swig binding tests fail miserably on OpenBSD

From: Stefan Sperling <stsp_at_elego.de>
Date: Wed, 20 Aug 2008 21:50:14 +0200

Hi,

I am in the process of putting together a proper Subversion-1.5.1
port for OpenBSD. Their current port is still at 1.4.4.

I got most things working, except for the binding regression tests.
I haven't tried javahl yet (planning to tackle that at some later time),
but for all the swig-based bindings, the regression tests just flat
out fail.

E.g, this is what happens when I run 'make check-swig-pl':

--- snip ---
if test "/usr/obj/subversion-1.5.1/subversion-1.5.1/subversion/bindings/swig/perl" != "/usr/obj/subversion-1.5.1/subversion-1.5.1/subversion/bindings/swig/perl"; then ln -sf /usr/obj/subversion-1.5.1/subversion-1.5.1/subversion/bindings/swig/perl/native/*.c /usr/obj/subversion-1.5.1/subversion-1.5.1/subversion/bindings/swig/perl/native; fi
cd /usr/obj/subversion-1.5.1/subversion-1.5.1/subversion/bindings/swig/perl/native; make
cd /usr/obj/subversion-1.5.1/subversion-1.5.1/subversion/bindings/swig/perl/native; make test
PERL_DL_NONLAZY=1 LD_LIBRARY_PATH=/usr/obj/subversion-1.5.1/subversion-1.5.1/subversion/bindings/swig/perl/libsvn_swig_perl/.libs:/usr/obj/subversion-1.5.1/subversion-1.5.1/subversion/libsvn_client/.libs:/usr/obj/subversion-1.5.1/subversion-1.5.1/subversion/libsvn_delta/.libs:/usr/obj/subversion-1.5.1/subversion-1.5.1/subversion/libsvn_fs/.libs:/usr/obj/subversion-1.5.1/subversion-1.5.1/subversion/libsvn_ra/.libs:/usr/obj/subversion-1.5.1/subversion-1.5.1/subversion/libsvn_repos/.libs:/usr/obj/subversion-1.5.1/subversion-1.5.1/subversion/libsvn_wc/.libs:/usr/obj/subversion-1.5.1/subversion-1.5.1/subversion/libsvn_diff/.libs:/usr/obj/subversion-1.5.1/subversion-1.5.1/subversion/libsvn_subr/.libs:/usr/obj/subversion-1.5.1/subversion-1.5.1/subversion/libsvn_ra_local/.libs:/usr/obj/subversion-1.5.1/subversion-1.5.1/subversion/libsvn_ra_svn/.libs:/usr/obj/subversion-1.5.1/subversion-1.5.1/subversion/libsvn_ra_neon/.libs:/usr/obj/subversion-1.5.1/subversion-1.5.1/subversion/libsvn_ra_serf/.libs:/usr/obj/subversion
-1.5.1/subversion-1.5.1/subversion/libsvn_fs_base/.libs:/usr/obj/subversion-1.5.1/subversion-1.5.1/subversion/libsvn_fs_util/.libs:/usr/obj/subversion-1.5.1/subversion-1.5.1/subversion/libsvn_fs_fs/.libs /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" ../../../../../subversion/bindings/swig/perl/native/t/*.t
../../../../../subversion/bindings/swig/perl/native/t/0use.............ok
../../../../../subversion/bindings/swig/perl/native/t/1repos...........# committed 1,2008-08-20T19:29:15.161368Z,root
# committed 2,2008-08-20T19:29:15.193212Z,root
dubious
        Test returned status 0 (wstat 139, 0x8b)
DIED. FAILED tests 4-6
        Failed 3/6 tests, 50.00% okay
../../../../../subversion/bindings/swig/perl/native/t/2fs..............dubious
        Test returned status 0 (wstat 139, 0x8b)
DIED. FAILED tests 9-22
        Failed 14/22 tests, 36.36% okay
../../../../../subversion/bindings/swig/perl/native/t/3client..........dubious
        Test returned status 0 (wstat 139, 0x8b)
DIED. FAILED tests 6-118
        Failed 113/118 tests, 4.24% okay
../../../../../subversion/bindings/swig/perl/native/t/4pool............dubious
        Test returned status 0 (wstat 139, 0x8b)
DIED. FAILED tests 5-6
        Failed 2/6 tests, 66.67% okay
../../../../../subversion/bindings/swig/perl/native/t/5delta-compat....dubious
        Test returned status 0 (wstat 139, 0x8b)
DIED. FAILED test 2
        Failed 1/2 tests, 50.00% okay
../../../../../subversion/bindings/swig/perl/native/t/5delta...........dubious
        Test returned status 0 (wstat 139, 0x8b)
DIED. FAILED tests 2-3
        Failed 2/3 tests, 33.33% okay
../../../../../subversion/bindings/swig/perl/native/t/6ra..............dubious
        Test returned status 0 (wstat 139, 0x8b)
DIED. FAILED tests 2-40
        Failed 39/40 tests, 2.50% okay
../../../../../subversion/bindings/swig/perl/native/t/7editor..........# committed 1,2008-08-20T19:29:20.172639Z,root
dubious
        Test returned status 0 (wstat 139, 0x8b)
DIED. FAILED test 1
        Failed 1/1 tests, 0.00% okay
../../../../../subversion/bindings/swig/perl/native/t/8lock............dubious
        Test returned status 0 (wstat 139, 0x8b)
DIED. FAILED tests 3-8
        Failed 6/8 tests, 25.00% okay
Failed Test Stat Wstat Total Fail Failed List of Failed
-------------------------------------------------------------------------------
../../../../../subversion/binding 0 139 6 6 100.00% 4-6
../../../../../subversion/binding 0 139 22 28 127.27% 9-22
../../../../../subversion/binding 0 139 118 226 191.53% 6-118
../../../../../subversion/binding 0 139 6 4 66.67% 5-6
../../../../../subversion/binding 0 139 2 2 100.00% 2
../../../../../subversion/binding 0 139 3 4 133.33% 2-3
../../../../../subversion/binding 0 139 40 78 195.00% 2-40
../../../../../subversion/binding 0 139 1 2 200.00% 1
../../../../../subversion/binding 0 139 8 12 150.00% 3-8
Failed 9/10 test scripts, 10.00% okay. 181/213 subtests failed, 15.02% okay.
*** Error code 255

Stop in /usr/obj/subversion-1.5.1/subversion-1.5.1/subversion/bindings/swig/perl/native (line 952 of Makefile).
*** Error code 1

Stop in /usr/obj/subversion-1.5.1/subversion-1.5.1 (line 652 of Makefile).
--- snip ---

With Python, it just segfaults. Here's the trace from the core dump:

--- snip ---
(gdb) bt
#0 0x0773a953 in PyObject_Call () from /usr/local/lib/libpython2.5.so.1.0
#1 0x077a2d88 in PyEval_CallObjectWithKeywords ()
   from /usr/local/lib/libpython2.5.so.1.0
#2 0x0773a940 in PyObject_CallObject ()
   from /usr/local/lib/libpython2.5.so.1.0
#3 0x0aeb69c9 in SWIG_Python_NewPointerObj ()
   from /usr/local/lib/libsvn_swig_py-1.so.1.0
#4 0x0aeb6da0 in svn_swig_NewPointerObj ()
   from /usr/local/lib/libsvn_swig_py-1.so.1.0
#5 0x0aeb6b89 in svn_swig_py_get_pool_arg ()
   from /usr/local/lib/libsvn_swig_py-1.so.1.0
#6 0x06a63624 in _wrap_svn_pool_create ()
   from /usr/obj/subversion-1.5.1/subversion-1.5.1/subversion/bindings/swig/python/.libs/_core.so
#7 0x07762832 in PyCFunction_Call () from /usr/local/lib/libpython2.5.so.1.0
#8 0x0773a970 in PyObject_Call () from /usr/local/lib/libpython2.5.so.1.0
#9 0x077a2d88 in PyEval_CallObjectWithKeywords ()
   from /usr/local/lib/libpython2.5.so.1.0
#10 0x0779a61f in builtin_apply () from /usr/local/lib/libpython2.5.so.1.0
#11 0x07762832 in PyCFunction_Call () from /usr/local/lib/libpython2.5.so.1.0
#12 0x077a32af in call_function () from /usr/local/lib/libpython2.5.so.1.0
#13 0x077a12fb in PyEval_EvalFrameEx () from /usr/local/lib/libpython2.5.so.1.0
#14 0x077a1c4c in PyEval_EvalCodeEx () from /usr/local/lib/libpython2.5.so.1.0
#15 0x077a33e7 in fast_function () from /usr/local/lib/libpython2.5.so.1.0
#16 0x077a3025 in call_function () from /usr/local/lib/libpython2.5.so.1.0
#17 0x077a12fb in PyEval_EvalFrameEx () from /usr/local/lib/libpython2.5.so.1.0
#18 0x077a1c4c in PyEval_EvalCodeEx () from /usr/local/lib/libpython2.5.so.1.0
#19 0x0779ee33 in PyEval_EvalCode () from /usr/local/lib/libpython2.5.so.1.0
#20 0x077b29df in PyImport_ExecCodeModuleEx ()
   from /usr/local/lib/libpython2.5.so.1.0
#21 0x077b2fbd in load_source_module () from /usr/local/lib/libpython2.5.so.1.0
#22 0x077b405c in load_module () from /usr/local/lib/libpython2.5.so.1.0
#23 0x077b5145 in import_submodule () from /usr/local/lib/libpython2.5.so.1.0
#24 0x077b4baf in load_next () from /usr/local/lib/libpython2.5.so.1.0
#25 0x077b476e in import_module_level ()
   from /usr/local/lib/libpython2.5.so.1.0
#26 0x077b4869 in PyImport_ImportModuleLevel ()
   from /usr/local/lib/libpython2.5.so.1.0
#27 0x0779a360 in builtin___import__ () from /usr/local/lib/libpython2.5.so.1.0
#28 0x07762832 in PyCFunction_Call () from /usr/local/lib/libpython2.5.so.1.0
#29 0x0773a970 in PyObject_Call () from /usr/local/lib/libpython2.5.so.1.0
#30 0x077a2d88 in PyEval_CallObjectWithKeywords ()
   from /usr/local/lib/libpython2.5.so.1.0
#31 0x077a1059 in PyEval_EvalFrameEx () from /usr/local/lib/libpython2.5.so.1.0
#32 0x077a1c4c in PyEval_EvalCodeEx () from /usr/local/lib/libpython2.5.so.1.0
#33 0x0779ee33 in PyEval_EvalCode () from /usr/local/lib/libpython2.5.so.1.0
#34 0x077b29df in PyImport_ExecCodeModuleEx ()
   from /usr/local/lib/libpython2.5.so.1.0
#35 0x077b2fbd in load_source_module () from /usr/local/lib/libpython2.5.so.1.0
#36 0x077b405c in load_module () from /usr/local/lib/libpython2.5.so.1.0
#37 0x077b5145 in import_submodule () from /usr/local/lib/libpython2.5.so.1.0
#38 0x077b4df5 in ensure_fromlist () from /usr/local/lib/libpython2.5.so.1.0
#39 0x077b4680 in import_module_level ()
   from /usr/local/lib/libpython2.5.so.1.0
#40 0x077b4869 in PyImport_ImportModuleLevel ()
   from /usr/local/lib/libpython2.5.so.1.0
#41 0x0779a360 in builtin___import__ () from /usr/local/lib/libpython2.5.so.1.0
#42 0x07762832 in PyCFunction_Call () from /usr/local/lib/libpython2.5.so.1.0
#43 0x0773a970 in PyObject_Call () from /usr/local/lib/libpython2.5.so.1.0
#44 0x077a2d88 in PyEval_CallObjectWithKeywords ()
   from /usr/local/lib/libpython2.5.so.1.0
#45 0x077a1059 in PyEval_EvalFrameEx () from /usr/local/lib/libpython2.5.so.1.0
#46 0x077a1c4c in PyEval_EvalCodeEx () from /usr/local/lib/libpython2.5.so.1.0
#47 0x0779ee33 in PyEval_EvalCode () from /usr/local/lib/libpython2.5.so.1.0
#48 0x077b29df in PyImport_ExecCodeModuleEx ()
   from /usr/local/lib/libpython2.5.so.1.0
#49 0x077b2fbd in load_source_module () from /usr/local/lib/libpython2.5.so.1.0
#50 0x077b405c in load_module () from /usr/local/lib/libpython2.5.so.1.0
#51 0x077b5145 in import_submodule () from /usr/local/lib/libpython2.5.so.1.0
#52 0x077b4baf in load_next () from /usr/local/lib/libpython2.5.so.1.0
#53 0x077b45e1 in import_module_level ()
   from /usr/local/lib/libpython2.5.so.1.0
#54 0x077b4869 in PyImport_ImportModuleLevel ()
   from /usr/local/lib/libpython2.5.so.1.0
#55 0x0779a360 in builtin___import__ () from /usr/local/lib/libpython2.5.so.1.0
#56 0x07762832 in PyCFunction_Call () from /usr/local/lib/libpython2.5.so.1.0
#57 0x0773a970 in PyObject_Call () from /usr/local/lib/libpython2.5.so.1.0
#58 0x077a2d88 in PyEval_CallObjectWithKeywords ()
   from /usr/local/lib/libpython2.5.so.1.0
#59 0x077a1059 in PyEval_EvalFrameEx () from /usr/local/lib/libpython2.5.so.1.0
#60 0x077a1c4c in PyEval_EvalCodeEx () from /usr/local/lib/libpython2.5.so.1.0
#61 0x0779ee33 in PyEval_EvalCode () from /usr/local/lib/libpython2.5.so.1.0
#62 0x077bd522 in run_mod () from /usr/local/lib/libpython2.5.so.1.0
#63 0x077bd4b0 in PyRun_FileExFlags () from /usr/local/lib/libpython2.5.so.1.0
#64 0x077bc5cd in PyRun_SimpleFileExFlags ()
   from /usr/local/lib/libpython2.5.so.1.0
#65 0x077bbfd9 in PyRun_AnyFileExFlags ()
   from /usr/local/lib/libpython2.5.so.1.0
#66 0x077c65dd in Py_Main () from /usr/local/lib/libpython2.5.so.1.0
#67 0x1c000dd0 in main ()
--- snip ---

Ruby also has issues, I'm just going to quote the summary:

--- snip ---
  212 tests, 514 assertions, 2 failures, 136 errors
--- snip ---

I'm not very familiar with the bindings, so I don't really know where
to look for what might be causing this. It looks like there was some
common cause that affects all bindings, but I simply don't know how
to debug this properly. Can anyone help?

Some information on possibly relevant software installed:

  $ swig -version
  
  SWIG Version 1.3.24
  
  $ perl --version
  
  This is perl, v5.8.8 built for i386-openbsd
  
  $ python --version
  Python 2.5.2
  
  $ ruby --version
  ruby 1.8.6 (2008-03-03 patchlevel 114) [i386-openbsd4.4]
  
  $ pkg_info | grep apr
  apr-1.2.11p2 Apache Portable Runtime
  apr-util-1.2.10p1 companion library to APR

Both perl and apr are built without thread support, AFAIK.
I found a post[*] by clkao indicating that the threading configuration
of the two should match, that's why I'm mentioning this.

I will gladly provide any further information needed to get this
sorted out.

I will try reproducing these failures with trunk now, but I
don't have much hope that they won't appear there.

Thanks,
Stefan

[*] http://svn.haxx.se/dev/archive-2005-07/0403.shtml

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: dev-help_at_subversion.tigris.org
Received on 2008-08-20 21:50:34 CEST

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.