Opened 13 years ago

Closed 13 years ago

#558 closed defect (fixed)

Make check fails in perl bindings test for symbol-test.t

Reported by: Xapiary Tester Owned by: Olly Betts
Priority: normal Milestone: 1.2.7
Component: Xapian-bindings Version: 1.2.6
Severity: normal Keywords:
Cc: Blocked By:
Blocking: Operating System: Linux

Description (last modified by Xapiary Tester)

Slackware 13.1 (fully updated), gcc 4.4.4, 32 bit, 1GB RAM (non-HighMem kernel, so only about 820MB of available RAM). PHP is version 5.2.17, PERL is v5.10.1 (*) built for i486-linux-thread-multi, python is 2.6.4, and ruby is ruby 1.9.1p378 (2010-01-10 revision 26273) [i486-linux].

SWIG Version 1.3.38

Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/root              8175648   4687128   3488520  58% /
tmpfs                   664096     45648    618448   7% /dev/shm

Freshly built xapian-core 1.2.6 (make check fully passes) and then the xapian-bindings 1.2.6 with the manually downloaded PHP .h file included.

Build + testing is done out of /dev/shm (ram disk).

Test failure output follows:

./t/symbol-test.t .. 1/3 
#   Failed test 'use SymbolTest;'
#   at ./t/symbol-test.t line 17.
#     Tried to use 'SymbolTest'.
#     Error:  Can't locate loadable object for module SymbolTest in @INC (@INC contains: blib/arch/auto/SymbolTest/.libs blib/lib /dev/shm/xapian-bindings-1.2.6/perl/.libs /dev/shm/xapian-bindings-1.2.6/perl /usr/lib/perl5/5.10.1/i486-linux-thread-multi /usr/lib/perl5/5.10.1 /usr/lib/perl5/site_perl/5.10.1/i486-linux-thread-multi /usr/lib/perl5/site_perl/5.10.1 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.10.1/i486-linux-thread-multi /usr/lib/perl5/vendor_perl/5.10.1 /usr/lib/perl5/vendor_perl .) at (eval 38) line 2
# Compilation failed in require at (eval 38) line 2.
# BEGIN failed--compilation aborted at (eval 38) line 2.

#   Failed test 'Correct exception caught'
#   at ./t/symbol-test.t line 19.
#                   'Can't locate auto/SymbolTest/throw_from_.al in @INC (@INC contains: blib/arch/auto/SymbolTest/.libs blib/lib /dev/shm/xapian-bindings-1.2.6/perl/.libs /dev/shm/xapian-bindings-1.2.6/perl /usr/lib/perl5/5.10.1/i486-linux-thread-multi /usr/lib/perl5/5.10.1 /usr/lib/perl5/site_perl/5.10.1/i486-linux-thread-multi /usr/lib/perl5/site_perl/5.10.1 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.10.1/i486-linux-thread-multi /usr/lib/perl5/vendor_perl/5.10.1 /usr/lib/perl5/vendor_perl .) at ./t/symbol-test.t line 18
# '
#     doesn't match '(?-xism:DatabaseOpeningError caught in SymbolTest)'

#   Failed test 'Correct exception caught'
#   at ./t/symbol-test.t line 24.
#                   'Can't locate auto/SymbolTest/throw_from_.al in @INC (@INC contains: blib/arch/auto/SymbolTest/.libs blib/lib /dev/shm/xapian-bindings-1.2.6/perl/.libs /dev/shm/xapian-bindings-1.2.6/perl /usr/lib/perl5/5.10.1/i486-linux-thread-multi /usr/lib/perl5/5.10.1 /usr/lib/perl5/site_perl/5.10.1/i486-linux-thread-multi /usr/lib/perl5/site_perl/5.10.1 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.10.1/i486-linux-thread-multi /usr/lib/perl5/vendor_perl/5.10.1 /usr/lib/perl5/vendor_perl .) at ./t/symbol-test.t line 23
# '
#     doesn't match '(?-xism:DatabaseOpeningError caught in SymbolTest)'
# Looks like you failed 3 tests of 3.
./t/symbol-test.t .. Dubious, test returned 3 (wstat 768, 0x300)
Failed 3/3 subtests 

Test Summary Report
-------------------
./t/symbol-test.t (Wstat: 768 Tests: 3 Failed: 3)
  Failed tests:  1-3
  Non-zero exit status: 3
Files=1, Tests=3,  0 wallclock secs ( 0.02 usr  0.01 sys +  0.59 cusr  0.20 csys =  0.82 CPU)
Result: FAIL
FAIL: t/symbol-test.t

Configure line:

CFLAGS='-O2 -fstack-protector -march=core2 -mtune=core2' CXXFLAGS='-O2 -stack-protector -march=core2 -mtune=core2' ./configure --prefix=/usr --with-php --with-python --with-perl --with-ruby

Attachments (1)

xapian-bindings-1.2.6-fix-perl-symboltest-with-installed-xapian-core.patch (486 bytes ) - added by Olly Betts 13 years ago.
Fix applied for this

Download all attachments as: .zip

Change History (8)

comment:1 by Xapiary Tester, 13 years ago

Description: modified (diff)

comment:2 by Olly Betts, 13 years ago

I believe this was the "make check" issue fixed by r15674 after 1.2.6 was released, but sadly I didn't write a great ChangeLog entry.

The fix was backported to the 1.2 branch (r15765) so the current snapshots from that branch should work:

http://oligarchy.co.uk/xapian/branches/1.2/

Can you confirm? No need to worry about using the newer xapian-core from there, just the newer xapian-bindings (though you can use all newer if you want).

in reply to:  2 comment:3 by Xapiary Tester, 13 years ago

Replying to olly:

I downloaded and configured xapian-bindings-1.2.6_svn15938 from the branches directory you listed above and used the same configure command to build the bindings.

The test still fails.

Is there a way I can provide more detailed information from the test?

I used the same 1.2.6 release xapian-core I'd built + installed on the system before.

./t/symbol-test.t .. 1/3 
#   Failed test 'use SymbolTest;'
#   at ./t/symbol-test.t line 17.
#     Tried to use 'SymbolTest'.
#     Error:  Can't locate loadable object for module SymbolTest in @INC (@INC contains: blib/arch/auto/SymbolTest/.libs blib/lib /dev/shm/xapian-bindings-1.2.6_svn15938/perl /usr/lib/perl5/5.10.1/i486-linux-thread-multi /usr/lib/perl5/5.10.1 /usr/lib/perl5/site_perl/5.10.1/i486-linux-thread-multi /usr/lib/perl5/site_perl/5.10.1 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.10.1/i486-linux-thread-multi /usr/lib/perl5/vendor_perl/5.10.1 /usr/lib/perl5/vendor_perl .) at (eval 38) line 2
# Compilation failed in require at (eval 38) line 2.
# BEGIN failed--compilation aborted at (eval 38) line 2.

#   Failed test 'Correct exception caught'
#   at ./t/symbol-test.t line 19.
#                   'Can't locate auto/SymbolTest/throw_from_.al in @INC (@INC contains: blib/arch/auto/SymbolTest/.libs blib/lib /dev/shm/xapian-bindings-1.2.6_svn15938/perl /usr/lib/perl5/5.10.1/i486-linux-thread-multi /usr/lib/perl5/5.10.1 /usr/lib/perl5/site_perl/5.10.1/i486-linux-thread-multi /usr/lib/perl5/site_perl/5.10.1 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.10.1/i486-linux-thread-multi /usr/lib/perl5/vendor_perl/5.10.1 /usr/lib/perl5/vendor_perl .) at ./t/symbol-test.t line 18
# '
#     doesn't match '(?-xism:DatabaseOpeningError caught in SymbolTest)'

#   Failed test 'Correct exception caught'
#   at ./t/symbol-test.t line 24.
#                   'Can't locate auto/SymbolTest/throw_from_.al in @INC (@INC contains: blib/arch/auto/SymbolTest/.libs blib/lib /dev/shm/xapian-bindings-1.2.6_svn15938/perl /usr/lib/perl5/5.10.1/i486-linux-thread-multi /usr/lib/perl5/5.10.1 /usr/lib/perl5/site_perl/5.10.1/i486-linux-thread-multi /usr/lib/perl5/site_perl/5.10.1 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.10.1/i486-linux-thread-multi /usr/lib/perl5/vendor_perl/5.10.1 /usr/lib/perl5/vendor_perl .) at ./t/symbol-test.t line 23
# '
#     doesn't match '(?-xism:DatabaseOpeningError caught in SymbolTest)'
# Looks like you failed 3 tests of 3.
./t/symbol-test.t .. Dubious, test returned 3 (wstat 768, 0x300)
Failed 3/3 subtests 

Test Summary Report
-------------------
./t/symbol-test.t (Wstat: 768 Tests: 3 Failed: 3)
  Failed tests:  1-3
  Non-zero exit status: 3
Files=1, Tests=3,  1 wallclock secs ( 0.02 usr  0.01 sys +  0.75 cusr  0.30 csys =  1.08 CPU)
Result: FAIL
FAIL: t/symbol-test.t
....
make[3]: *** [check-TESTS] Error 1
make[3]: Leaving directory `/dev/shm/xapian-bindings-1.2.6_svn15938/perl'

comment:4 by Olly Betts, 13 years ago

Milestone: 1.2.7

OK, I've found the issue - the paths aren't set up to work with an installed xapian-core (the test passes in built against an uninstalled xapian-core, as we do when developing).

Fixed in trunk r15944. Marking for backporting for 1.2.7.

in reply to:  4 comment:5 by Xapiary Tester, 13 years ago

Replying to olly:

OK, I've found the issue - the paths aren't set up to work with an installed xapian-core (the test passes in built against an uninstalled xapian-core, as we do when developing).

Ah, I'd never have thought to build + test it this way. Is this the recommended method?

comment:6 by Olly Betts, 13 years ago

It's more convenient if you're working on the code, as you don't need to remember to re-install xapian-core if you've changed it before switching to working on xapian-bindings. If you're working from SVN/git, then the bootstrap script will set up your tree this way automatically.

If you're just building to install but want to run the testsuite to make sure all is well on your platform, then it probably makes more sense to test against the xapian-core you just installed, just as you were doing. This should also work - there was just a bug in this case.

comment:7 by Olly Betts, 13 years ago

Resolution: fixed
Status: newclosed

Backported for 1.2.7 in r15981.

Note: See TracTickets for help on using tickets.