Opened 3 years ago

Closed 16 months ago

#814 closed defect (worksforme)

bind() fails with ENOENT running remotetcp tests

Reported by: Tomasz Kloczko Owned by: Olly Betts
Priority: normal Milestone:
Component: Test Suite Version: 1.4.22
Severity: normal Keywords:
Cc: Blocked By:
Blocking: Operating System: All

Description (last modified by Olly Betts)


Change History (18)

comment:1 by Olly Betts, 3 years ago

Only when I run it with -j1 I was able to see below:

Prsumably the lack of output with -j48 in effect is due to make -O which AIUI buffers all output for each job until it is complete, so a job that doesn't complete will presumably show no output.

What distro and CPU architecture is this on?

How is configure run? You can see with ./config.status --config if that's easiest.

And is the packaging applying any patches?

It's strange for zerodocid1 to be problematic as it is very simple - it searches a single document database for a term that should match and checks that there's exactly one returned result and it has a non-zero docid. I'm wondering if make -O is causing some extra buffering even with -j1 and actually things stall a little later.

Either way, finding out where it's getting stuck would be useful.

Can you see if rerunning without valgrind makes a difference? You can do that with:

make check VALGRIND=

If it still hangs, find the pid of the apitest process and attach gdb to it (e.g. gdb --pid=12345) then bt inside gdb to get a backtrace.

If it only happens under valgrind, I think you can't usefully just attached gdb as then you're debugging valgrind itself, and instead we'd need to use valgrind options like --vgdb but let's only worry about that if we have to.

Last edited 3 years ago by Olly Betts (previous) (diff)

comment:2 by Olly Betts, 3 years ago

Version: 1.4.18

comment:3 by Tomasz Kloczko, 3 years ago

Description: modified (diff)

CPU:

[tkloczko@barrel rpmbuild]$ grep name /proc/cpuinfo | uniq
model name      : Intel(R) Xeon(R) Silver 4116 CPU @ 2.10GHz

Distribytion: my own distribution which is similar to Fedora rawhide but on topp of that it has thosands bugs fixed. Fedora [package has no executing test suite in %check so they've not geen able to stiump on that issue. but it should be possible to reporoduce that on Fedora rawhide.

Source code configuratio: Parto of my spec file:

autoreconf -fiv
%configure \
        --disable-static \
        %{nil}

So I'm only disabling buiod and install static libraries. I;m building xapian-core with LTO (details nelow) Begin of the %build log:

+ cd xapian-core-1.4.18
+ autoreconf -fiv
autoreconf: export WARNINGS=
autoreconf: Entering directory '.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal --force -I m4
autoreconf: configure.ac: tracing
autoreconf: running: libtoolize --copy --force
libtoolize: putting auxiliary files in '.'.
libtoolize: copying file './ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'.
libtoolize: copying file 'm4/libtool.m4'
libtoolize: copying file 'm4/ltoptions.m4'
libtoolize: copying file 'm4/ltsugar.m4'
libtoolize: copying file 'm4/ltversion.m4'
libtoolize: copying file 'm4/lt~obsolete.m4'
autoreconf: configure.ac: not using Intltool
autoreconf: configure.ac: not using Gtkdoc
autoreconf: running: aclocal --force -I m4
autoreconf: running: /usr/bin/autoconf --force
configure.ac:205: warning: The macro `AC_LANG_CPLUSPLUS' is obsolete.
configure.ac:205: You should run autoupdate.
./lib/autoconf/c.m4:262: AC_LANG_CPLUSPLUS is expanded from...
configure.ac:205: the top level
configure.ac:207: warning: The macro `AC_TRY_LINK' is obsolete.
configure.ac:207: You should run autoupdate.
./lib/autoconf/general.m4:2920: AC_TRY_LINK is expanded from...
lib/m4sugar/m4sh.m4:692: _AS_IF_ELSE is expanded from...
lib/m4sugar/m4sh.m4:699: AS_IF is expanded from...
./lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from...
configure.ac:207: the top level
configure.ac:207: warning: The macro `AC_TRY_RUN' is obsolete.
configure.ac:207: You should run autoupdate.
./lib/autoconf/general.m4:2997: AC_TRY_RUN is expanded from...
lib/m4sugar/m4sh.m4:692: _AS_IF_ELSE is expanded from...
lib/m4sugar/m4sh.m4:699: AS_IF is expanded from...
./lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from...
configure.ac:207: the top level
configure.ac:265: warning: The macro `AC_LANG_CPLUSPLUS' is obsolete.
configure.ac:265: You should run autoupdate.
./lib/autoconf/c.m4:262: AC_LANG_CPLUSPLUS is expanded from...
configure.ac:265: the top level
configure.ac:367: warning: The macro `AC_TRY_LINK' is obsolete.
configure.ac:367: You should run autoupdate.
./lib/autoconf/general.m4:2920: AC_TRY_LINK is expanded from...
configure.ac:367: the top level
configure.ac:367: warning: The macro `AC_TRY_LINK' is obsolete.
configure.ac:367: You should run autoupdate.
./lib/autoconf/general.m4:2920: AC_TRY_LINK is expanded from...
lib/m4sugar/m4sh.m4:692: _AS_IF_ELSE is expanded from...
lib/m4sugar/m4sh.m4:699: AS_IF is expanded from...
./lib/autoconf/general.m4:2894: _AC_LINK_IFELSE is expanded from...
./lib/autoconf/general.m4:2911: AC_LINK_IFELSE is expanded from...
./lib/autoconf/general.m4:2920: AC_TRY_LINK is expanded from...
configure.ac:367: the top level
configure.ac:432: warning: The macro `AC_TRY_COMPILE' is obsolete.
configure.ac:432: You should run autoupdate.
./lib/autoconf/general.m4:2847: AC_TRY_COMPILE is expanded from...
configure.ac:432: the top level
configure.ac:520: warning: The macro `AC_TRY_COMPILE' is obsolete.
configure.ac:520: You should run autoupdate.
./lib/autoconf/general.m4:2847: AC_TRY_COMPILE is expanded from...
configure.ac:520: the top level
configure.ac:552: warning: The macro `AC_TRY_COMPILE' is obsolete.
configure.ac:552: You should run autoupdate.
./lib/autoconf/general.m4:2847: AC_TRY_COMPILE is expanded from...
configure.ac:552: the top level
configure.ac:973: warning: The macro `AC_TRY_COMPILE' is obsolete.
configure.ac:973: You should run autoupdate.
./lib/autoconf/general.m4:2847: AC_TRY_COMPILE is expanded from...
lib/m4sugar/m4sh.m4:692: _AS_IF_ELSE is expanded from...
lib/m4sugar/m4sh.m4:699: AS_IF is expanded from...
./lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from...
m4/xapian_type_socklen_t.m4:11: XAPIAN_TYPE_SOCKLEN_T is expanded from...
configure.ac:973: the top level
configure.ac:1047: warning: The macro `AC_TRY_COMPILE' is obsolete.
configure.ac:1047: You should run autoupdate.
./lib/autoconf/general.m4:2847: AC_TRY_COMPILE is expanded from...
lib/m4sugar/m4sh.m4:692: _AS_IF_ELSE is expanded from...
lib/m4sugar/m4sh.m4:699: AS_IF is expanded from...
./lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from...
lib/m4sugar/m4sh.m4:699: AS_IF is expanded from...
./lib/autoconf/functions.m4:66: AC_CHECK_FUNC is expanded from...
configure.ac:1047: the top level
configure.ac:1081: warning: The macro `AC_TRY_COMPILE' is obsolete.
configure.ac:1081: You should run autoupdate.
./lib/autoconf/general.m4:2847: AC_TRY_COMPILE is expanded from...
lib/m4sugar/m4sh.m4:692: _AS_IF_ELSE is expanded from...
lib/m4sugar/m4sh.m4:699: AS_IF is expanded from...
./lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from...
lib/m4sugar/m4sh.m4:699: AS_IF is expanded from...
./lib/autoconf/functions.m4:66: AC_CHECK_FUNC is expanded from...
configure.ac:1081: the top level
autoreconf: running: /usr/bin/autoheader --force
autoreconf: running: automake --add-missing --copy --force-missing
configure.ac:108: installing './compile'
configure.ac:101: installing './missing'
Makefile.am: installing './depcomp'
autoreconf: Leaving directory '.'
+ CFLAGS='-O2 -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fdata-sections -ffunction-sections -flto=auto -flto-partition=none'
+ CXXFLAGS='-O2 -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fdata-sections -ffunction-sections -flto=auto -flto-partition=none'
+ FFLAGS='-O2 -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fdata-sections -ffunction-sections -flto=auto -flto-partition=none -I/usr/lib64/gfortran/modules'
+ FCFLAGS='-O2 -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fdata-sections -ffunction-sections -flto=auto -flto-partition=none -I/usr/lib64/gfortran/modules'
+ LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,--gc-sections -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -flto=auto -flto-partition=none -fuse-linker-plugin'
+ CC=/usr/bin/gcc
+ CXX=/usr/bin/g++
+ FC=/usr/bin/gfortran
+ AR=/usr/bin/gcc-ar
+ NM=/usr/bin/gcc-nm
+ RANLIB=/usr/bin/gcc-ranlib
+ export CFLAGS CXXFLAGS FFLAGS FCFLAGS LDFLAGS CC CXX FC AR NM RANLIB
+ ./configure --build=x86_64-redhat-linux-gnu --host=x86_64-redhat-linux-gnu --program-prefix= --disable-dependency-tracking --disable-silent-rules --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/libexec --localstatedir=/var --runstatedir=/run --sharedstatedir=/var/lib --mandir=/usr/share/man --infodir=/usr/share/info --disable-static
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether UID '1000' is supported by ustar format... yes
checking whether GID '1000' is supported by ustar format... yes
checking how to create a ustar tar archive... gnutar
checking whether make supports the include directive... yes (GNU style)
checking for x86_64-redhat-linux-gnu-gcc... /usr/bin/gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether /usr/bin/gcc accepts -g... yes
checking for /usr/bin/gcc option to enable C11 features... none needed
checking whether /usr/bin/gcc understands -c and -o together... yes
checking dependency style of /usr/bin/gcc... none
checking for x86_64-redhat-linux-gnu-ar... /usr/bin/gcc-ar
checking the archiver (/usr/bin/gcc-ar) interface... ar
checking build system type... x86_64-redhat-linux-gnu
checking host system type... x86_64-redhat-linux-gnu
checking how to print strings... printf
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by /usr/bin/gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/gcc-nm
checking the name lister (/usr/bin/gcc-nm) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking how to convert x86_64-redhat-linux-gnu file names to x86_64-redhat-linux-gnu format... func_convert_file_noop
checking how to convert x86_64-redhat-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for x86_64-redhat-linux-gnu-objdump... no
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for x86_64-redhat-linux-gnu-dlltool... no
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for x86_64-redhat-linux-gnu-ar... (cached) /usr/bin/gcc-ar
checking for archiver @FILE support... @
checking for x86_64-redhat-linux-gnu-strip... no
checking for strip... strip
checking for x86_64-redhat-linux-gnu-ranlib... /usr/bin/gcc-ranlib
checking command to parse /usr/bin/gcc-nm output from /usr/bin/gcc object... ok
checking for sysroot... no
checking for a working dd... /usr/bin/dd
checking how to truncate binary pipes... /usr/bin/dd bs=4096 count=1
checking for x86_64-redhat-linux-gnu-mt... no
checking for mt... no
checking if : is a manifest tool... no
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if /usr/bin/gcc supports -fno-rtti -fno-exceptions... no
checking for /usr/bin/gcc option to produce PIC... -fPIC -DPIC
checking if /usr/bin/gcc PIC flag -fPIC -DPIC works... yes
checking if /usr/bin/gcc static flag -static works... no
checking if /usr/bin/gcc supports -c -o file.o... yes
checking if /usr/bin/gcc supports -c -o file.o... (cached) yes
checking whether the /usr/bin/gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking whether to enable maintainer-specific portions of Makefiles... no
checking whether the compiler supports GNU C++... yes
checking whether /usr/bin/g++ accepts -g... yes
checking for /usr/bin/g++ option to enable C++11 features... none needed
checking dependency style of /usr/bin/g++... none
checking how to run the C++ preprocessor... /usr/bin/g++ -E
checking for ld used by /usr/bin/g++... /usr/bin/ld -m elf_x86_64
checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld... yes
checking whether the /usr/bin/g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking for /usr/bin/g++ option to produce PIC... -fPIC -DPIC
checking if /usr/bin/g++ PIC flag -fPIC -DPIC works... yes
checking if /usr/bin/g++ static flag -static works... no
checking if /usr/bin/g++ supports -c -o file.o... yes
checking if /usr/bin/g++ supports -c -o file.o... (cached) yes
checking whether the /usr/bin/g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking dynamic linker characteristics... (cached) GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether /usr/bin/g++ is a working C++ compiler... yes
checking whether /usr/bin/g++ supports C++11 features by default... yes
checking for x86_64-redhat-linux-gnu-gcc... (cached) /usr/bin/gcc
checking whether the compiler supports GNU C... (cached) yes
checking whether /usr/bin/gcc accepts -g... (cached) yes
checking for /usr/bin/gcc option to enable C11 features... (cached) none needed
checking whether /usr/bin/gcc understands -c and -o together... (cached) yes
checking dependency style of /usr/bin/gcc... (cached) none
checking whether byte ordering is bigendian... no
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
checking if -lm is required for maths functions... no
checking for /usr/bin/g++ options needed to detect all undeclared functions... none needed
checking whether log2 is declared... yes
checking whether exp10 is declared... yes
checking whether __exp10 is declared... yes
checking for __builtin_exp10... yes
checking if RTTI is supported... yes
checking whether __builtin_add_overflow is declared... yes
checking whether __builtin_mul_overflow is declared... yes
checking whether __builtin_bswap16 is declared... yes
checking whether __builtin_bswap32 is declared... yes
checking whether __builtin_bswap64 is declared... yes
checking whether _byteswap_ushort is declared... no
checking whether _byteswap_ulong is declared... no
checking whether _byteswap_uint64 is declared... no
checking whether __builtin_clz is declared... yes
checking whether __builtin_clzl is declared... yes
checking whether __builtin_clzll is declared... yes
checking whether __builtin_ctz is declared... yes
checking whether __builtin_ctzl is declared... yes
checking whether __builtin_ctzll is declared... yes
checking whether __builtin_expect is declared... yes
checking whether __builtin_popcount is declared... yes
checking whether __builtin_popcountl is declared... yes
checking whether __builtin_popcountll is declared... yes
checking whether __popcnt is declared... no
checking whether __popcnt64 is declared... no
checking for poll... yes
checking for clock_gettime... yes
checking for sleep... yes
checking for nanosleep... yes
checking for gettimeofday... yes
checking for ftime... yes
checking for library containing timer_create... none required
checking for timer_create() usability... yes
checking for srandom... yes
checking for random... yes
checking for sigaction... yes
checking for sigsetjmp and siglongjmp... yes
checking for getrusage... yes
checking for times... yes
checking for sysconf... yes
checking for nftw... yes
checking for setenv... yes
checking for _putenv_s... no
checking whether _putenv_s is declared... no
checking for closefrom... yes
checking for getdirentries... yes
checking for getrlimit... yes
checking return type of ftime... int
checking for sys/utsname.h... yes
checking for gethostname... yes
checking for ssize_t... yes
checking for pid_t... yes
checking for mode_t... yes
checking size of short... 2
checking size of int... 4
checking size of long... 8
checking size of long long... 8
checking for sys/types.h... (cached) yes
checking for 32 bit integer type... int
checking for 64 bit integer type... long
checking for perl... /usr/bin/perl
checking for fcntl.h... yes
checking for limits.h... yes
checking for poll.h... yes
checking for sys/select.h... yes
checking for sys/resource.h... yes
checking for cxxabi.h... yes
checking for valgrind... /usr/bin/valgrind
checking if valgrind supports --log-file with %p and --child-silent-after-fork=yes... yes
checking for valgrind/memcheck.h... yes
checking for eatmydata... no
checking whether strerror_r is declared... yes
checking whether strerror_r returns char *... yes
checking for sys_errlist and sys_nerr... no
checking for _sys_errlist and _sys_nerr... no
checking for  snprintf... snprintf
checking for zlib.h... yes
checking for library containing zlibVersion... -lz
checking for uuid/uuid.h... yes
checking for library containing uuid_generate... -luuid
checking for fork... yes
checking for library containing socketpair... none required
checking for library containing getaddrinfo... none required
checking for library containing inet_ntop... none required
checking for type to use for 5th parameter to getsockopt... socklen_t
checking whether fdatasync is declared... yes
checking for library containing fdatasync... none required
checking for fdatasync... yes
checking for fsync... yes
checking for posix_fadvise... yes
checking for ftruncate... yes
checking for pread... yes
checking for any prototype needed for pread... none required
checking for pwrite... yes
checking for any prototype needed for pwrite... none required
checking for directory separator(s)... /
checking for link... yes
checking for version of /usr/bin/g++... GCC 11.2.1
checking if /usr/bin/g++ -fvisibility=hidden -fvisibility-inlines-hidden works... yes
checking for /usr/bin/g++ with -Wl,-Bsymbolic-functions in LDFLAGS... yes
checking for /usr/bin/g++ with -xldscope=symbolic in LDFLAGS... no
checking whether to use SSE instructions on x86... non-x86 arch (x86_64)
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating tests/Makefile
config.status: creating docs/Makefile
config.status: creating docs/doxygen_api.conf
config.status: creating docs/doxygen_source.conf
config.status: creating xapian-core.spec
config.status: creating cmake/xapian-config.cmake
config.status: creating cmake/xapian-config-version.cmake
config.status: creating pkgconfig/xapian-core.pc
config.status: creating makemanpage
config.status: creating tests/runtest
config.status: creating tests/runsrv
config.status: creating tests/submitperftest
config.status: creating tests/perftest/get_machine_info
config.status: creating xapian-config
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands

Other requested parts in second comment as I need to modyfy build procesure and check results.

About valgrind: all valgrind process are active and each one is fully statrates sibgle CPU core all the time. I'm using latest valgrind 3.17.0. valgrind options used in hanging unit are in "ps auxwf" ouptut icluded on opening ticket.

comment:4 by Tomasz Kloczko, 3 years ago

Just finishes build with VALGRIND= No problems.

comment:5 by Olly Betts, 3 years ago

Thanks for the info.

--disable-static is the default anyway now in xapian-core (since before 1.4.0).

I'm successfully using LTO with git master - this uncovered an ODR violation in the test suite code (fixed by ef1099c229ae69f7de1ed2f50d6609b30773581d which I backported to 1.4 as 55b7b85f04cce7a82e131df71571b3894f80b072 which was in 1.4.14). Not sure if I've actually tried to build 1.4 with LTO though. I'll kick off a build now.

As a general point, if you're turning on LTO in package builds you probably want to make the ODR warnings that this reports into errors with -Wodr=error.

comment:6 by Olly Betts, 3 years ago

My LTO build passed the testsuite under valgrind no problems on amd64 debian unstable. I don't have a Fedora install to hand to try.

Does the hang reproduce if you run just the single testcase/backend combination that seems to be the issue - in the tests subdirectory:

./runtest ./apitest -b multi_glass_remoteprog_glass zerodocid1

comment:7 by Olly Betts, 3 years ago

Component: OtherTest Suite

I ran a test build of 1.4.18 using on the GCC compiler farm's CentOS 8 machine, which seems to be the closest to Fedora I have access to without having to set up something specially, which I don't really have time for currently.

I used options as close to your build as possible (it's aarch64 so I had to remove a few x86*-specific options, and it's also a bit older so I had to drop -fcf-protection). This ran the testsuite OK under valgrind.

So I think you'll need to get a backtrace for where the process(es) are for us to make progress on this. For how to use gdb under valgrind see: https://www.valgrind.org/docs/manual/manual-core-adv.html#manual-core-adv.gdbserver

comment:8 by Olly Betts, 2 years ago

Resolution: incomplete
Status: newclosed

I can't reproduce the reported problem, and it's been over 8 months without a response from the submitter so I'm going to close the ticket.

If you are still seeing this, please respond with the requested additional information and we can reopen and investigate.

comment:9 by Tomasz Kloczko, 2 years ago

Description: modified (diff)

Seems you focused on testing LTO instead giving me any advices what I can try to do to diagnose freezing test suite. LTO probably has nothing to do with that issue. I've dropped only that to give you full context.

Last edited 2 years ago by Olly Betts (previous) (diff)

comment:10 by Olly Betts, 2 years ago

Resolution: incomplete
Status: closedreopened

I was trying to reproduce your problem so built on as similar a platform to yours as I had access to with the same compile options you used.

I already gave you advice on how to debug this in comment:7:

So I think you'll need to get a backtrace for where the process(es) are for us to make progress on this. For how to use gdb under valgrind see: ​https://www.valgrind.org/docs/manual/manual-core-adv.html#manual-core-adv.gdbserver

BTW, please add a comment as a comment rather than modifying the ticket description with your comment text or else the discussion will be very difficult to follow. I'll move your comment to be a comment this time.

comment:11 by Olly Betts, 2 years ago

Description: modified (diff)

comment:12 by Olly Betts, 2 years ago

Tomasz: Did you resolve this?

comment:13 by Olly Betts, 2 years ago

Tomasz: Any update?

comment:14 by Olly Betts, 22 months ago

Resolution: worksforme
Status: reopenedclosed

I can't reproduce so there's nothing we can do without more information from the submitter, so closing as unreproducible.

If you can reproduce with the latest 1.4.x release, please can you get a backtrace for where it's getting stuck under valgrind and we can reopen.

comment:15 by Olly Betts, 22 months ago

Trac told me that the notification email failed to send when I closed this a few days ago, so repeating my closing comment (apologies if it actually did send and this is a duplicate):

I can't reproduce so there's nothing we can do without more information from the submitter, so closing as unreproducible.

If you can reproduce with the latest 1.4.x release, please can you get a backtrace for where it's getting stuck under valgrind and we can reopen.

comment:16 by Tomasz Kloczko, 17 months ago

Version: 1.4.181.4.22

Just tested 1.4.22 and test suite still fails

/usr/bin/make  check-TESTS
make[4]: Entering directory '/home/tkloczko/rpmbuild/BUILD/xapian-core-1.4.22/tests'
Running tests with backend "none"...
Running test: stubdb7... ok
Running test: stubdb4... ok
Running test: databasenotfounderror2... ok
Running test: defaultctor1... ok
Running test: copyassign1... ok
Running test: latlongcoords1... ok
Running test: latlongmetric1... ok
Running test: latlongmetric2... ok
Running test: latlongkeymaker1... ok
Running test: matchspy6... ok
Running test: matchspy7... ok
Running test: trivial1... ok
Running test: getqterms1... ok
Running test: getqterms2... ok
Running test: emptyquery2... ok
Running test: emptyquery3... ok
Running test: querylen1... ok
Running test: querylen2... ok
Running test: queryvalid1... ok
Running test: dontflattensubqueries1... ok
Running test: emptyquerypart1... ok
Running test: stemlangs1... ok
Running test: weight1... ok
Running test: nosuchdb1... ok
Running test: addvalue1... ok
Running test: poscollapse2... ok
Running test: uninitdb1... ok
Running test: scaleweight3... ok
Running test: rset3... ok
Running test: rset4... ok
Running test: valuesetmatchdecider1... ok
Running test: emptymset1... ok
Running test: expanddeciderfilterprefix1... ok
Running test: version1... ok
Running test: nosubdatabases1... ok
Running test: document1... ok
Running test: document2... ok
Running test: documentclearterms1... ok
Running test: documentclearvalues1... ok
Running test: documentemptyterm1... ok
Running test: emptyquery4... ok
Running test: singlesubquery1... ok
Running test: singlesubquery2... ok
Running test: singlesubquery3... ok
Running test: combinewqfnomore1... ok
Running test: subclassablerefcount1... ok
Running test: subclassablerefcount2... ok
Running test: subclassablerefcount4... ok
Running test: subclassablerefcount5... ok
Running test: subclassablerefcount8... ok
Running test: nonutf8docdesc1... ok
Running test: deletewhileiterating1... ok
Running test: removepostings... ok
Running test: errorcopyctor... ok
Running test: valuege3... ok
Running test: postingsourceclone1... ok
Running test: queryterms1... ok
Running test: matchall2... ok
Running test: matchnothing1... ok
Running test: overload1... ok
Running test: nonutf8termdesc1... ok
Running test: queryintro1... ok
Running test: queryparser1... ok
Running test: qp_default_op1... ok
Running test: qp_default_prefix1... ok
Running test: qp_default_prefix2... ok
Running test: qp_odd_chars1... ok
Running test: qp_flag_bool_any_case1... ok
Running test: qp_stopper1... ok
Running test: qp_flag_pure_not1... ok
Running test: qp_unstem_boolean_prefix... ok
Running test: qp_accumulate... ok
Running test: qp_value_range1... ok
Running test: qp_range1... ok
Running test: qp_value_range2... ok
Running test: qp_range2... ok
Running test: qp_value_range4... ok
Running test: qp_range4... ok
Running test: qp_value_daterange1... ok
Running test: qp_daterange1... ok
Running test: qp_value_daterange2... ok
Running test: qp_daterange2... ok
Running test: qp_value_stringrange1... ok
Running test: qp_stringrange1... ok
Running test: qp_value_customrange1... ok
Running test: qp_customrange1... ok
Running test: qp_fieldproc1... ok
Running test: qp_fieldproc2... ok
Running test: qp_fieldproc3... ok
Running test: qp_stoplist1... ok
Running test: qp_stem_all1... ok
Running test: qp_stem_all_z1... ok
Running test: qp_near1... ok
Running test: qp_phrase1... ok
Running test: qp_default_op2... ok
Running test: qp_default_op3... ok
Running test: qp_defaultstrategysome1... ok
Running test: qp_stemsomefullpos... ok
Running test: qp_nopos... ok
Running test: querypairwise1... ok
Running test: serialise_document1... ok
Running test: serialise_query1... ok
Running test: serialise_query2... ok
Running test: serialise_query3... ok
Running test: serialise_query4... ok
Running test: double_register_leak... ok
Running test: registry1... ok
Running test: registry2... ok
Running test: registry3... ok
Running test: snippet_empty_mset2... ok
Running test: multivaluekeymaker1... ok
Running test: stem1... ok
Running test: stem2... ok
Running test: stem3... ok
Running test: stemempty1... ok
Running test: stemlangs2... ok
Running test: termgen1... ok
Running test: tg_spell2... ok
Running test: tg_max_word_length1... ok
Running test: utf8iterator1... ok
Running test: utf8iterator2... ok
Running test: unicode1... ok
Running test: caseconvert1... ok
Running test: caseconvert2... ok
Running test: utf8convert1... ok
Running test: unicodepredicates1... ok
Running test: valuestats5... ok
Running test: fixedweightsource2... ok
Running test: tradweight3... ok
Running test: unigramlmweight3... ok
Running test: bm25weight3... ok
Running test: bm25plusweight1... ok
Running test: inl2weight1... ok
Running test: inl2weight2... ok
Running test: ifb2weight1... ok
Running test: ifb2weight2... ok
Running test: ineb2weight1... ok
Running test: ineb2weight2... ok
Running test: bb2weight1... ok
Running test: bb2weight2... ok
Running test: dlhweight2... ok
Running test: pl2weight1... ok
Running test: pl2weight2... ok
Running test: pl2plusweight1... ok
Running test: pl2plusweight2... ok
Running test: pl2plusweight3... ok
Running test: dphweight2... ok
Running test: tfidfweight1... ok
Running test: tfidfweight2... ok
Running test: unigramlmweight6... ok
Running test: boolweight1... ok
Running test: coordweight2... ok
./apitest backend none: All 152 tests passed.
Running tests with backend "inmemory"...
Running test: zerodocid1... ok
Running test: emptyquery1... ok
Running test: simplequery1... ok
Running test: simplequery2... ok
Running test: simplequery3... ok
Running test: msetmaxitems1... ok
Running test: expandweights1... ok
Running test: expandweights2... ok
Running test: expandweights3... ok
Running test: expandweights4... ok
Running test: expandweights5... ok
Running test: expandweights6... ok
Running test: expandweights7... ok
Running test: expandweights8... ok
Running test: expandmaxitems1... ok
Running test: boolquery1... ok
Running test: msetfirst1... ok
Running test: topercent1... ok
Running test: topercent2... ok
Running test: expandfunctor1... ok
Running test: expanddeciderfilterprefix2... ok
Running test: pctcutoff1... ok
Running test: pctcutoff2... ok
Running test: pctcutoff3... ok
Running test: cutoff1... ok
Running test: allowqterms1... ok
Running test: maxattain1... ok
Running test: reversebool1... ok
Running test: reversebool2... ok
Running test: getmterms1... ok
Running test: getmterms2... ok
Running test: repeatquery1... ok
Running test: fetchdocs1... ok
Running test: absentterm1... ok
Running test: absentterm2... ok
Running test: rset1... ok
Running test: rset2... ok
Running test: eliteset3... ok
Running test: eliteset5... ok
Running test: termlisttermfreq1... ok
Running test: qterminfo1... ok
Running test: qterminfo2... ok
Running test: msetzeroitems1... ok
Running test: matches1... ok
Running test: wqf1... ok
Running test: qlen1... ok
Running test: termlist1... ok
Running test: termlist2... ok
Running test: termlist3... ok
Running test: termlist4... ok
Running test: puncterms1... ok
Running test: spaceterms1... ok
Running test: xor1... ok
Running test: xor2... ok
Running test: getdoc1... ok
Running test: emptyop1... ok
Running test: checkatleast1... ok
Running test: checkatleast2... ok
Running test: checkatleast3... ok
Running test: allpostlist1... ok
Running test: emptyterm1... ok
Running test: scaleweight1... ok
Running test: scaleweight2... ok
Running test: bm25weight1... ok
Running test: tradweight1... ok
Running test: tradweight4... ok
Running test: dbstats1... ok
Running test: dbstats2... ok
Running test: alldocspl3... ok
Running test: msetfirst2... ok
Running test: bm25weight2... ok
Running test: unigramlmweight2... ok
Running test: tradweight2... ok
Running test: emptydb1... ok
Running test: multiargop1... ok
Running test: msetweights1... ok
Running test: itorskiptofromend1... ok
Running test: sortvalue2... ok
Running test: enquiregetquery1... ok
Running test: exactxor1... ok
Running test: getdocumentlazy1... ok
Running test: getdocumentlazy2... ok
Running test: checkatleast4... ok
Running test: multidb1... ok
Running test: allterms7... ok
Running test: nosuchterm... ok
Running test: closedb1... ok
Running test: closedb3... ok
Running test: collapsekey5... ok
Running test: termstats... ok
Running test: msetiterator1... ok
Running test: msetiterator2... ok
Running test: msetiterator3... ok
Running test: esetiterator1... ok
Running test: esetiterator2... ok
Running test: collapsekey1... ok
Running test: collapsekey2... SKIPPED
api_db.cc:883: Don't have a suitable database currently

Running test: collapsekey3... ok
Running test: collapsekey4... ok
Running test: allterms1... ok
Running test: allterms2... ok
Running test: allterms3... ok
Running test: allterms4... ok
Running test: allterms5... ok
Running test: allterms6... ok
Running test: specialterms1... ok
Running test: specialterms2... ok
Running test: postlist1... ok
Running test: postlist2... ok
Running test: postlist3... ok
Running test: postlist4... ok
Running test: postlist5... ok
Running test: postlist6... ok
Running test: collfreq1... ok
Running test: sortvalue1... ok
Running test: sortrel1... ok
Running test: matchall1... ok
Running test: matchspy5... ok
Running test: subclassablerefcount3... ok
Running test: subclassablerefcount6... ok
Running test: subclassablerefcount7... ok
Running test: synonym1... ok
Running test: synonym2... ok
Running test: synonym3... ok
Running test: synonym4... ok
Running test: opmax1... ok
Running test: valuerange1... ok
Running test: valuege1... ok
Running test: valuege2... ok
Running test: valuele1... ok
Running test: valuege4... ok
Running test: valuerange3... ok
Running test: valuerange4... ok
Running test: valuerangematchesub1... ok
Running test: consistency3... ok
Running test: pctcutoff5... ok
Running test: topercent3... ok
Running test: topercent4... ok
Running test: topercent5... ok
Running test: topercent6... ok
Running test: valueweightsource1... ok
Running test: fixedweightsource1... ok
Running test: xor3... ok
Running test: phrasealldocs1... ok
Running test: wildcard1... ok
Running test: wildcard2... ok
Running test: dualprefixwildcard1... ok
Running test: loosephrase1... ok
Running test: loosenear1... ok
Running test: complexphrase1... ok
Running test: complexnear1... ok
Running test: complexphrase2... ok
Running test: complexnear2... ok
Running test: zeroestimate1... ok
Running test: complexphrase3... ok
Running test: complexnear3... ok
Running test: notandor1... ok
Running test: boolorbug1... ok
Running test: hoistnotbug1... ok
Running test: emptynot1... ok
Running test: emptymaybe1... ok
Running test: phraseweightcheckbug1... ok
Running test: orphanedhint1... ok
Running test: wildquery1... ok
Running test: snippet1... ok
Running test: snippetstem1... ok
Running test: snippetphrase1... ok
Running test: snippet_termcover1... ok
Running test: snippet_termcover2... ok
Running test: snippet_empty... ok
Running test: snippet_start_nonspace... ok
Running test: snippet_small_zerolength... ok
Running test: snippet_empty_mset... ok
Running test: valuestream2... ok
Running test: valuestream3... ok
Running test: valuemapsource1... ok
Running test: bm25weight4... ok
Running test: bm25weight5... ok
Running test: bm25plusweight2... ok
Running test: bm25plusweight3... ok
Running test: inl2weight3... ok
Running test: ifb2weight3... ok
Running test: ineb2weight3... ok
Running test: bb2weight3... ok
Running test: bb2weight4... ok
Running test: dlhweight1... ok
Running test: pl2weight3... ok
Running test: pl2plusweight4... ok
Running test: pl2plusweight5... ok
Running test: dphweight1... ok
Running test: tfidfweight3... ok
Running test: unigramlmweight4... ok
Running test: unigramlmweight5... ok
Running test: unigramlmweight7... ok
Running test: unigramlmweight8... ok
Running test: coordweight1... ok
Running test: multidb3... ok
Running test: multidb4... ok
Running test: multidb5... ok
Running test: rsetmultidb1... ok
Running test: rsetmultidb3... ok
Running test: eliteset1... ok
Running test: eliteset2... ok
Running test: eliteset4... ok
Running test: uuid1... SKIPPED
apitest.cc:142: Test not supported for inmemory backend

Running test: rsetmultidb2... ok
Running test: multiexpand1... ok
Running test: valuestream1... ok
Running test: valuemapsource2... ok
Running test: decvalwtsource4... ok
Running test: estimaterounding1... ok
Running test: checkinitweight1... ok
Running test: matchdecider1... ok
Running test: matchdecider2... ok
Running test: matchdecider3... ok
Running test: consistency1... ok
Running test: userweight1... ok
Running test: valuesetmatchdecider2... ok
Running test: matchspy1... ok
Running test: checkzeromaxpartopt1... ok
Running test: externalsource4... ok
Running test: postingsourcebounds1... ok
Running test: sortfunctor1... ok
Running test: changesorter1... ok
Running test: sortfunctorempty1... ok
Running test: checkstatsweight1... ok
Running test: checkstatsweight2... ok
Running test: pctcutoff4... ok
Running test: externalsource1... ok
Running test: externalsource3... ok
Running test: changemaxweightsource1... ok
Running test: emptyvalwtsource1... ok
Running test: checkstatsweight3... ok
Running test: checkstatsweight4... ok
Running test: sortfunctor3... ok
Running test: msize1... ok
Running test: msize2... ok
Running test: xordecay1... ok
Running test: ordecay1... ok
Running test: ordecay2... ok
Running test: orcheck1... ok
Running test: getuniqueterms1... ok
Running test: nopositionbug1... ok
Running test: netstats1... ok
Running test: matchspy2... ok
Running test: matchspy4... ok
Running test: valuerange5... ok
Running test: valuerange6... ok
Running test: valuerange7... ok
Running test: topercent7... ok
Running test: subdbwithoutpos1... ok
Running test: snippetmisc1... ok
Running test: snippet_cjkngrams... ok
Running test: dlhweight3... ok
Running test: dphweight3... ok
Running test: matchtimelimit1... ok
Running test: phrasebug1... ok
Running test: testlock3... ok
Running test: stubdb6... ok
Running test: stubdb8... ok
Running test: metadata3... ok
Running test: phrase3... ok
Running test: near1... ok
Running test: near2... ok
Running test: phrase1... ok
Running test: phrase2... ok
Running test: poslist1... ok
Running test: positfromtermit1... ok
Running test: poslist2... ok
Running test: poslist3... ok
Running test: poslistupdate1... ok
Running test: valueweightsource2... ok
Running test: valuestats3... ok
Running test: valueweightsource3... ok
Running test: alldocspl1... ok
Running test: alldocspl2... ok
Running test: totaldoclen1... ok
Running test: exceed32bitcombineddb1... ok
Running test: modifiedpostlist1... ok
Running test: doclenaftercommit1... ok
Running test: valuesaftercommit1... ok
Running test: replacedoc8... ok
Running test: newfreelistblock1... ok
Running test: splitpostings1... ok
Running test: closedb7... ok
Running test: metadata1... ok
Running test: metadata5... SKIPPED
apitest.cc:142: Test not supported for inmemory backend

Running test: valuerange2... ok
Running test: possubqueries1... ok
Running test: qp_flag_wildcard1... ok
Running test: qp_flag_wildcard2... ok
Running test: qp_flag_wildcard3... ok
Running test: qp_flag_partial1... ok
Running test: qp_value_range3... ok
Running test: qp_range3... ok
Running test: qp_stopword_group1... ok
Running test: modtermwdf1... ok
Running test: bigoaddvalue1... ok
Running test: serialise_document2... ok
Running test: decvalwtsource1... ok
Running test: decvalwtsource2... ok
Running test: decvalwtsource3... ok
Running test: decvalwtsource5... ok
Running test: adddoc1... ok
Running test: adddoc3... ok
Running test: adddoc4... ok
Running test: adddoc6... SKIPPED
apitest.cc:142: Test not supported for inmemory backend

Running test: implicitendsession1... ok
Running test: databaseassign1... ok
Running test: deldoc1... ok
Running test: deldoc2... ok
Running test: deldoc3... ok
Running test: deldoc4... ok
Running test: deldoc5... ok
Running test: deldoc6... ok
Running test: replacedoc1... ok
Running test: replacedoc2... ok
Running test: replacedoc3... ok
Running test: replacedoc4... ok
Running test: replacedoc5... ok
Running test: replacedoc6... ok
Running test: uniqueterm1... ok
Running test: allpostlist2... ok
Running test: emptyterm2... ok
Running test: phraseorneartoand1... ok
Running test: longpositionlist1... ok
Running test: consistency2... ok
Running test: nomoredocids1... SKIPPED
apitest.cc:142: Test not supported for inmemory backend

Running test: termtoolong1... SKIPPED
apitest.cc:142: Test not supported for inmemory backend

Running test: postlist7... ok
Running test: modifyvalues1... ok
Running test: adddoc2... ok
Running test: adddoc5... SKIPPED
apitest.cc:142: Test not supported for inmemory backend

Running test: sortfunctor2... ok
Running test: closedb10... ok
Running test: writeread1... ok
Running test: valuestats1... ok
Running test: valueweightsource5... SKIPPED
apitest.cc:142: Test not supported for inmemory backend

./apitest backend inmemory: All 330 tests passed, 8 skipped.
Running tests with backend "glass"...
Running test: zerodocid1... ok
Running test: emptyquery1... ok
Running test: simplequery1... ok
Running test: simplequery2... ok
Running test: simplequery3... ok
Running test: msetmaxitems1... ok
Running test: expandweights1... ok
Running test: expandweights2... ok
Running test: expandweights3... ok
Running test: expandweights4... ok
Running test: expandweights5... ok
Running test: expandweights6... ok
Running test: expandweights7... ok
Running test: expandweights8... ok
Running test: expandmaxitems1... ok
Running test: boolquery1... ok
Running test: msetfirst1... ok
Running test: topercent1... ok
Running test: topercent2... ok
Running test: expandfunctor1... ok
Running test: expanddeciderfilterprefix2... ok
Running test: pctcutoff1... ok
Running test: pctcutoff2... ok
Running test: pctcutoff3... ok
Running test: cutoff1... ok
Running test: allowqterms1... ok
Running test: maxattain1... ok
Running test: reversebool1... ok
Running test: reversebool2... ok
Running test: getmterms1... ok
Running test: getmterms2... ok
Running test: repeatquery1... ok
Running test: fetchdocs1... ok
Running test: absentterm1... ok
Running test: absentterm2... ok
Running test: rset1... ok
Running test: rset2... ok
Running test: eliteset3... ok
Running test: eliteset5... ok
Running test: termlisttermfreq1... ok
Running test: qterminfo1... ok
Running test: qterminfo2... ok
Running test: msetzeroitems1... ok
Running test: matches1... ok
Running test: wqf1... ok
Running test: qlen1... ok
Running test: termlist1... ok
Running test: termlist2... ok
Running test: termlist3... ok
Running test: termlist4... ok
Running test: puncterms1... ok
Running test: spaceterms1... ok
Running test: xor1... ok
Running test: xor2... ok
Running test: getdoc1... ok
Running test: emptyop1... ok
Running test: checkatleast1... ok
Running test: checkatleast2... ok
Running test: checkatleast3... ok
Running test: allpostlist1... ok
Running test: emptyterm1... ok
Running test: scaleweight1... ok
Running test: scaleweight2... ok
Running test: bm25weight1... ok
Running test: tradweight1... ok
Running test: tradweight4... ok
Running test: dbstats1... ok
Running test: dbstats2... ok
Running test: alldocspl3... ok
Running test: msetfirst2... ok
Running test: bm25weight2... ok
Running test: unigramlmweight2... ok
Running test: tradweight2... ok
Running test: emptydb1... ok
Running test: multiargop1... ok
Running test: msetweights1... ok
Running test: itorskiptofromend1... ok
Running test: sortvalue2... ok
Running test: enquiregetquery1... ok
Running test: exactxor1... ok
Running test: getdocumentlazy1... ok
Running test: getdocumentlazy2... ok
Running test: checkatleast4... ok
Running test: multidb1... ok
Running test: allterms7... ok
Running test: nosuchterm... ok
Running test: closedb1... ok
Running test: closedb3... ok
Running test: collapsekey5... ok
Running test: termstats... ok
Running test: msetiterator1... ok
Running test: msetiterator2... ok
Running test: msetiterator3... ok
Running test: esetiterator1... ok
Running test: esetiterator2... ok
Running test: collapsekey1... ok
Running test: collapsekey2... SKIPPED
api_db.cc:883: Don't have a suitable database currently

Running test: collapsekey3... ok
Running test: collapsekey4... ok
Running test: allterms1... ok
Running test: allterms2... ok
Running test: allterms3... ok
Running test: allterms4... ok
Running test: allterms5... ok
Running test: allterms6... ok
Running test: specialterms1... ok
Running test: specialterms2... ok
Running test: postlist1... ok
Running test: postlist2... ok
Running test: postlist3... ok
Running test: postlist4... ok
Running test: postlist5... ok
Running test: postlist6... ok
Running test: collfreq1... ok
Running test: sortvalue1... ok
Running test: sortrel1... ok
Running test: matchall1... ok
Running test: matchspy5... ok
Running test: subclassablerefcount3... ok
Running test: subclassablerefcount6... ok
Running test: subclassablerefcount7... ok
Running test: synonym1... ok
Running test: synonym2... ok
Running test: synonym3... ok
Running test: synonym4... ok
Running test: opmax1... ok
Running test: valuerange1... ok
Running test: valuege1... ok
Running test: valuege2... ok
Running test: valuele1... ok
Running test: valuege4... ok
Running test: valuerange3... ok
Running test: valuerange4... ok
Running test: valuerangematchesub1... ok
Running test: consistency3... ok
Running test: pctcutoff5... ok
Running test: topercent3... ok
Running test: topercent4... ok
Running test: topercent5... ok
Running test: topercent6... ok
Running test: valueweightsource1... ok
Running test: fixedweightsource1... ok
Running test: xor3... ok
Running test: phrasealldocs1... ok
Running test: wildcard1... ok
Running test: wildcard2... ok
Running test: dualprefixwildcard1... ok
Running test: loosephrase1... ok
Running test: loosenear1... ok
Running test: complexphrase1... ok
Running test: complexnear1... ok
Running test: complexphrase2... ok
Running test: complexnear2... ok
Running test: zeroestimate1... ok
Running test: complexphrase3... ok
Running test: complexnear3... ok
Running test: notandor1... ok
Running test: boolorbug1... ok
Running test: hoistnotbug1... ok
Running test: emptynot1... ok
Running test: emptymaybe1... ok
Running test: phraseweightcheckbug1... ok
Running test: orphanedhint1... ok
Running test: wildquery1... ok
Running test: snippet1... ok
Running test: snippetstem1... ok
Running test: snippetphrase1... ok
Running test: snippet_termcover1... ok
Running test: snippet_termcover2... ok
Running test: snippet_empty... ok
Running test: snippet_start_nonspace... ok
Running test: snippet_small_zerolength... ok
Running test: snippet_empty_mset... ok
Running test: valuestream2... ok
Running test: valuestream3... ok
Running test: valuemapsource1... ok
Running test: bm25weight4... ok
Running test: bm25weight5... ok
Running test: bm25plusweight2... ok
Running test: bm25plusweight3... ok
Running test: inl2weight3... ok
Running test: ifb2weight3... ok
Running test: ineb2weight3... ok
Running test: bb2weight3... ok
Running test: bb2weight4... ok
Running test: dlhweight1... ok
Running test: pl2weight3... ok
Running test: pl2plusweight4... ok
Running test: pl2plusweight5... ok
Running test: dphweight1... ok
Running test: tfidfweight3... ok
Running test: unigramlmweight4... ok
Running test: unigramlmweight5... ok
Running test: unigramlmweight7... ok
Running test: unigramlmweight8... ok
Running test: coordweight1... ok
Running test: multidb3... ok
Running test: multidb4... ok
Running test: multidb5... ok
Running test: rsetmultidb1... ok
Running test: rsetmultidb3... ok
Running test: eliteset1... ok
Running test: eliteset2... ok
Running test: eliteset4... ok
Running test: uuid1... ok
Running test: rsetmultidb2... ok
Running test: multiexpand1... ok
Running test: valuestream1... ok
Running test: valuemapsource2... ok
Running test: decvalwtsource4... ok
Running test: estimaterounding1... ok
Running test: checkinitweight1... ok
Running test: matchdecider1... ok
Running test: matchdecider2... ok
Running test: matchdecider3... ok
Running test: consistency1... ok
Running test: userweight1... ok
Running test: valuesetmatchdecider2... ok
Running test: matchspy1... ok
Running test: checkzeromaxpartopt1... ok
Running test: externalsource4... ok
Running test: postingsourcebounds1... ok
Running test: sortfunctor1... ok
Running test: changesorter1... ok
Running test: sortfunctorempty1... ok
Running test: checkstatsweight1... ok
Running test: checkstatsweight2... ok
Running test: pctcutoff4... ok
Running test: externalsource1... ok
Running test: externalsource3... ok
Running test: changemaxweightsource1... ok
Running test: emptyvalwtsource1... ok
Running test: checkstatsweight3... ok
Running test: checkstatsweight4... ok
Running test: sortfunctor3... ok
Running test: lockfileumask1... ok
Running test: lockfilefd0or1... ok
Running test: lockfilealreadyopen1... ok
Running test: testlock1... ok
Running test: testlock4... ok
Running test: failedreplace1... ok
Running test: failedreplace2... ok
Running test: blocksize1... ok
Running test: readonlyparentdir1... ok
Running test: dbfilefd012... ok
Running test: cursorbug1... ok
Running test: getrevision1... ok
Running test: lazytablebug1... ok
Running test: compactmerge1... ok
Running test: compactstub1... ok
Running test: compactstub2... ok
Running test: compactstub3... ok
Running test: compactstub4... ok
Running test: compactempty1... ok
Running test: compactoldmerge1... ok
Running test: compactoldstub1... ok
Running test: compactoldstub2... ok
Running test: compactoldstub3... ok
Running test: compactoldstub4... ok
Running test: compactoldempty1... ok
Running test: compacttofd1... ok
Running test: compacttofd2... ok
Running test: compactmultichunks1... ok
Running test: compactmissingtables1... ok
Running test: compactmergesynonym1... ok
Running test: compactmultipass1... ok
Running test: compactoldmultichunks1... ok
Running test: compactoldmissingtables1... ok
Running test: compactoldmergesynonym1... ok
Running test: compactoldmultipass1... ok
Running test: compactnorenumber1... ok
Running test: compactoldnorenumber1... ok
Running test: compact1... ok
Running test: compactsingle1... ok
Running test: msize1... ok
Running test: msize2... ok
Running test: xordecay1... ok
Running test: ordecay1... ok
Running test: ordecay2... ok
Running test: orcheck1... ok
Running test: getuniqueterms1... ok
Running test: nopositionbug1... ok
Running test: netstats1... ok
Running test: matchspy2... ok
Running test: matchspy4... ok
Running test: valuerange5... ok
Running test: valuerange6... ok
Running test: valuerange7... ok
Running test: topercent7... ok
Running test: subdbwithoutpos1... ok
Running test: snippetmisc1... ok
Running test: snippet_cjkngrams... ok
Running test: dlhweight3... ok
Running test: dphweight3... ok
Running test: matchtimelimit1... ok
Running test: latlongpostingsource1... ok
Running test: phrasebug1... ok
Running test: notermlist1... ok
Running test: getrevision2... ok
Running test: glassdatabasenotfounderror1... ok
Running test: metadata3... ok
Running test: metadata2... ok
Running test: metadata4... ok
Running test: stubdb1... ok
Running test: stubdb2... ok
Running test: stubdb3... ok
Running test: stubdb5... ok
Running test: stubdb9... ok
Running test: phrase3... ok
Running test: near1... ok
Running test: near2... ok
Running test: phrase1... ok
Running test: phrase2... ok
Running test: poslist1... ok
Running test: positfromtermit1... ok
Running test: poslist2... ok
Running test: poslist3... ok
Running test: poslistupdate1... ok
Running test: replicate1... ok
Running test: replicate2... SKIPPED
apitest.cc:142: Test not supported for glass backend

Running test: replicate3... ok
Running test: replicate4... ok
Running test: replicate5... ok
Running test: replicate6... ok
Running test: replicate7... ok
Running test: qp_spell1... ok
Running test: qp_spell2... ok
Running test: qp_spellwild1... ok
Running test: qp_spellpartial1... ok
Running test: qp_synonym1... ok
Running test: spell1... ok
Running test: spell2... ok
Running test: spell3... ok
Running test: spell4... ok
Running test: spell5... ok
Running test: spell6... ok
Running test: spell7... ok
Running test: spell8... ok
Running test: tg_spell1... ok
Running test: spell0... ok
Running test: qpsynonympartial1... ok
Running test: qp_synonym2... ok
Running test: qp_synonym3... ok
Running test: qp_scale1... ok
Running test: closedb5... ok
Running test: badtransaction1... ok
Running test: committransaction1... ok
Running test: canceltransaction1... ok
Running test: canceltransaction2... ok
Running test: nodocs1... ok
Running test: canceltransaction3... ok
Running test: valuestats2... ok
Running test: valuestats4... ok
Running test: valueweightsource2... ok
Running test: valuestats3... ok
Running test: valueweightsource3... ok
Running test: alldocspl1... ok
Running test: alldocspl2... ok
Running test: totaldoclen1... ok
Running test: exceed32bitcombineddb1... ok
Running test: modifiedpostlist1... ok
Running test: doclenaftercommit1... ok
Running test: valuesaftercommit1... ok
Running test: replacedoc8... ok
Running test: newfreelistblock1... ok
Running test: splitpostings1... ok
Running test: closedb7... ok
Running test: metadata1... ok
Running test: metadata5... ok
Running test: valuerange2... ok
Running test: possubqueries1... ok
Running test: qp_flag_wildcard1... ok
Running test: qp_flag_wildcard2... ok
Running test: qp_flag_wildcard3... ok
Running test: qp_flag_partial1... ok
Running test: qp_value_range3... ok
Running test: qp_range3... ok
Running test: qp_stopword_group1... ok
Running test: modtermwdf1... ok
Running test: bigoaddvalue1... ok
Running test: serialise_document2... ok
Running test: decvalwtsource1... ok
Running test: decvalwtsource2... ok
Running test: decvalwtsource3... ok
Running test: decvalwtsource5... ok
Running test: adddoc1... ok
Running test: adddoc3... ok
Running test: adddoc4... ok
Running test: adddoc6... ok
Running test: implicitendsession1... ok
Running test: databaseassign1... ok
Running test: deldoc1... ok
Running test: deldoc2... ok
Running test: deldoc3... ok
Running test: deldoc4... ok
Running test: deldoc5... ok
Running test: deldoc6... ok
Running test: replacedoc1... ok
Running test: replacedoc2... ok
Running test: replacedoc3... ok
Running test: replacedoc4... ok
Running test: replacedoc5... ok
Running test: replacedoc6... ok
Running test: uniqueterm1... ok
Running test: allpostlist2... ok
Running test: emptyterm2... ok
Running test: phraseorneartoand1... ok
Running test: longpositionlist1... ok
Running test: consistency2... ok
Running test: nomoredocids1... ok
Running test: termtoolong1... ok
Running test: postlist7... ok
Running test: modifyvalues1... ok
Running test: qpmemoryleak1... SKIPPED
api_backend.cc:574: didn't manage to trigger DatabaseModifiedError

Running test: closedb4... ok
Running test: replacedoc7... ok
Running test: databasemodified1... ok
Running test: adddoc2... ok
Running test: adddoc5... ok
Running test: sortfunctor2... ok
Running test: closedb10... ok
Running test: writeread1... ok
Running test: retrylock1... ok
Running test: closedb2... ok
Running test: cursordelbug1... ok
Running test: closedb8... ok
Running test: closedb9... ok
Running test: synonymitor1... ok
Running test: valuestats1... ok
Running test: valueweightsource5... ok
./apitest backend glass: All 427 tests passed, 3 skipped.
Running tests with backend "singlefile_glass"...
Running test: zerodocid1... ok
Running test: emptyquery1... ok
Running test: simplequery1... ok
Running test: simplequery2... ok
Running test: simplequery3... ok
Running test: msetmaxitems1... ok
Running test: expandweights1... ok
Running test: expandweights2... ok
Running test: expandweights3... ok
Running test: expandweights4... ok
Running test: expandweights5... ok
Running test: expandweights6... ok
Running test: expandweights7... ok
Running test: expandweights8... ok
Running test: expandmaxitems1... ok
Running test: boolquery1... ok
Running test: msetfirst1... ok
Running test: topercent1... ok
Running test: topercent2... ok
Running test: expandfunctor1... ok
Running test: expanddeciderfilterprefix2... ok
Running test: pctcutoff1... ok
Running test: pctcutoff2... ok
Running test: pctcutoff3... ok
Running test: cutoff1... ok
Running test: allowqterms1... ok
Running test: maxattain1... ok
Running test: reversebool1... ok
Running test: reversebool2... ok
Running test: getmterms1... ok
Running test: getmterms2... ok
Running test: repeatquery1... ok
Running test: fetchdocs1... ok
Running test: absentterm1... ok
Running test: absentterm2... ok
Running test: rset1... ok
Running test: rset2... ok
Running test: eliteset3... ok
Running test: eliteset5... ok
Running test: termlisttermfreq1... ok
Running test: qterminfo1... ok
Running test: qterminfo2... ok
Running test: msetzeroitems1... ok
Running test: matches1... ok
Running test: wqf1... ok
Running test: qlen1... ok
Running test: termlist1... ok
Running test: termlist2... ok
Running test: termlist3... ok
Running test: termlist4... ok
Running test: puncterms1... ok
Running test: spaceterms1... ok
Running test: xor1... ok
Running test: xor2... ok
Running test: getdoc1... ok
Running test: emptyop1... ok
Running test: checkatleast1... ok
Running test: checkatleast2... ok
Running test: checkatleast3... ok
Running test: allpostlist1... ok
Running test: emptyterm1... ok
Running test: scaleweight1... ok
Running test: scaleweight2... ok
Running test: bm25weight1... ok
Running test: tradweight1... ok
Running test: tradweight4... ok
Running test: dbstats1... ok
Running test: dbstats2... ok
Running test: alldocspl3... ok
Running test: msetfirst2... ok
Running test: bm25weight2... ok
Running test: unigramlmweight2... ok
Running test: tradweight2... ok
Running test: emptydb1... ok
Running test: multiargop1... ok
Running test: msetweights1... ok
Running test: itorskiptofromend1... ok
Running test: sortvalue2... ok
Running test: enquiregetquery1... ok
Running test: exactxor1... ok
Running test: getdocumentlazy1... ok
Running test: getdocumentlazy2... ok
Running test: checkatleast4... ok
Running test: multidb1... ok
Running test: allterms7... ok
Running test: nosuchterm... ok
Running test: closedb1... ok
Running test: closedb3... ok
Running test: collapsekey5... ok
Running test: termstats... ok
Running test: msetiterator1... ok
Running test: msetiterator2... ok
Running test: msetiterator3... ok
Running test: esetiterator1... ok
Running test: esetiterator2... ok
Running test: collapsekey1... ok
Running test: collapsekey2... SKIPPED
api_db.cc:883: Don't have a suitable database currently

Running test: collapsekey3... ok
Running test: collapsekey4... ok
Running test: allterms1... ok
Running test: allterms2... ok
Running test: allterms3... ok
Running test: allterms4... ok
Running test: allterms5... ok
Running test: allterms6... ok
Running test: specialterms1... ok
Running test: specialterms2... ok
Running test: postlist1... ok
Running test: postlist2... ok
Running test: postlist3... ok
Running test: postlist4... ok
Running test: postlist5... ok
Running test: postlist6... ok
Running test: collfreq1... ok
Running test: sortvalue1... ok
Running test: sortrel1... ok
Running test: matchall1... ok
Running test: matchspy5... ok
Running test: subclassablerefcount3... ok
Running test: subclassablerefcount6... ok
Running test: subclassablerefcount7... ok
Running test: synonym1... ok
Running test: synonym2... ok
Running test: synonym3... ok
Running test: synonym4... ok
Running test: opmax1... ok
Running test: valuerange1... ok
Running test: valuege1... ok
Running test: valuege2... ok
Running test: valuele1... ok
Running test: valuege4... ok
Running test: valuerange3... ok
Running test: valuerange4... ok
Running test: valuerangematchesub1... ok
Running test: consistency3... ok
Running test: pctcutoff5... ok
Running test: topercent3... ok
Running test: topercent4... ok
Running test: topercent5... ok
Running test: topercent6... ok
Running test: valueweightsource1... ok
Running test: fixedweightsource1... ok
Running test: xor3... ok
Running test: phrasealldocs1... ok
Running test: wildcard1... ok
Running test: wildcard2... ok
Running test: dualprefixwildcard1... ok
Running test: loosephrase1... ok
Running test: loosenear1... ok
Running test: complexphrase1... ok
Running test: complexnear1... ok
Running test: complexphrase2... ok
Running test: complexnear2... ok
Running test: zeroestimate1... ok
Running test: complexphrase3... ok
Running test: complexnear3... ok
Running test: notandor1... ok
Running test: boolorbug1... ok
Running test: hoistnotbug1... ok
Running test: emptynot1... ok
Running test: emptymaybe1... ok
Running test: phraseweightcheckbug1... ok
Running test: orphanedhint1... ok
Running test: wildquery1... ok
Running test: snippet1... ok
Running test: snippetstem1... ok
Running test: snippetphrase1... ok
Running test: snippet_termcover1... ok
Running test: snippet_termcover2... ok
Running test: snippet_empty... ok
Running test: snippet_start_nonspace... ok
Running test: snippet_small_zerolength... ok
Running test: snippet_empty_mset... ok
Running test: valuestream2... ok
Running test: valuestream3... ok
Running test: valuemapsource1... ok
Running test: bm25weight4... ok
Running test: bm25weight5... ok
Running test: bm25plusweight2... ok
Running test: bm25plusweight3... ok
Running test: inl2weight3... ok
Running test: ifb2weight3... ok
Running test: ineb2weight3... ok
Running test: bb2weight3... ok
Running test: bb2weight4... ok
Running test: dlhweight1... ok
Running test: pl2weight3... ok
Running test: pl2plusweight4... ok
Running test: pl2plusweight5... ok
Running test: dphweight1... ok
Running test: tfidfweight3... ok
Running test: unigramlmweight4... ok
Running test: unigramlmweight5... ok
Running test: unigramlmweight7... ok
Running test: unigramlmweight8... ok
Running test: coordweight1... ok
Running test: multidb3... ok
Running test: multidb4... ok
Running test: multidb5... ok
Running test: rsetmultidb1... ok
Running test: rsetmultidb3... ok
Running test: eliteset1... ok
Running test: eliteset2... ok
Running test: eliteset4... ok
Running test: uuid1... ok
Running test: rsetmultidb2... ok
Running test: multiexpand1... ok
Running test: valuestream1... ok
Running test: valuemapsource2... ok
Running test: decvalwtsource4... ok
Running test: estimaterounding1... ok
Running test: checkinitweight1... ok
Running test: matchdecider1... ok
Running test: matchdecider2... ok
Running test: matchdecider3... ok
Running test: consistency1... ok
Running test: userweight1... ok
Running test: valuesetmatchdecider2... ok
Running test: matchspy1... ok
Running test: checkzeromaxpartopt1... ok
Running test: externalsource4... ok
Running test: postingsourcebounds1... ok
Running test: sortfunctor1... ok
Running test: changesorter1... ok
Running test: sortfunctorempty1... ok
Running test: checkstatsweight1... ok
Running test: checkstatsweight2... ok
Running test: pctcutoff4... ok
Running test: externalsource1... ok
Running test: externalsource3... ok
Running test: changemaxweightsource1... ok
Running test: emptyvalwtsource1... ok
Running test: checkstatsweight3... ok
Running test: checkstatsweight4... ok
Running test: sortfunctor3... ok
Running test: testlock2... ok
Running test: compactmerge1... ok
Running test: compactstub1... ok
Running test: compactstub2... ok
Running test: compactstub3... ok
Running test: compactstub4... ok
Running test: compactempty1... ok
Running test: compactoldmerge1... ok
Running test: compactoldstub1... ok
Running test: compactoldstub2... ok
Running test: compactoldstub3... ok
Running test: compactoldstub4... ok
Running test: compactoldempty1... ok
Running test: compacttofd1... ok
Running test: compacttofd2... ok
Running test: stubdb1... ok
Running test: stubdb2... ok
Running test: stubdb3... ok
Running test: stubdb5... ok
Running test: stubdb9... ok
Running test: phrase3... ok
Running test: near1... ok
Running test: near2... ok
Running test: phrase1... ok
Running test: phrase2... ok
Running test: poslist1... ok
Running test: positfromtermit1... ok
Running test: embedded1... ok
Running test: valueweightsource2... ok
Running test: valuestats3... ok
Running test: valueweightsource3... ok
./apitest backend singlefile_glass: All 265 tests passed, 1 skipped.
Running tests with backend "multi_glass"...
Running test: zerodocid1... ok
Running test: emptyquery1... ok
Running test: simplequery1... ok
Running test: simplequery2... ok
Running test: simplequery3... ok
Running test: msetmaxitems1... ok
Running test: expandweights1... ok
Running test: expandweights2... ok
Running test: expandweights3... ok
Running test: expandweights4... ok
Running test: expandweights5... ok
Running test: expandweights6... ok
Running test: expandweights7... ok
Running test: expandweights8... ok
Running test: expandmaxitems1... ok
Running test: boolquery1... ok
Running test: msetfirst1... ok
Running test: topercent1... ok
Running test: topercent2... ok
Running test: expandfunctor1... ok
Running test: expanddeciderfilterprefix2... ok
Running test: pctcutoff1... ok
Running test: pctcutoff2... ok
Running test: pctcutoff3... ok
Running test: cutoff1... ok
Running test: allowqterms1... ok
Running test: maxattain1... ok
Running test: reversebool1... ok
Running test: reversebool2... ok
Running test: getmterms1... ok
Running test: getmterms2... ok
Running test: repeatquery1... ok
Running test: fetchdocs1... ok
Running test: absentterm1... ok
Running test: absentterm2... ok
Running test: rset1... ok
Running test: rset2... ok
Running test: eliteset3... ok
Running test: eliteset5... ok
Running test: termlisttermfreq1... ok
Running test: qterminfo1... ok
Running test: qterminfo2... ok
Running test: msetzeroitems1... ok
Running test: matches1... ok
Running test: wqf1... ok
Running test: qlen1... ok
Running test: termlist1... ok
Running test: termlist2... ok
Running test: termlist3... ok
Running test: termlist4... ok
Running test: puncterms1... ok
Running test: spaceterms1... ok
Running test: xor1... ok
Running test: xor2... ok
Running test: getdoc1... ok
Running test: emptyop1... ok
Running test: checkatleast1... ok
Running test: checkatleast2... ok
Running test: checkatleast3... ok
Running test: allpostlist1... ok
Running test: emptyterm1... ok
Running test: scaleweight1... ok
Running test: scaleweight2... ok
Running test: bm25weight1... ok
Running test: tradweight1... ok
Running test: tradweight4... ok
Running test: dbstats1... ok
Running test: dbstats2... ok
Running test: alldocspl3... ok
Running test: msetfirst2... ok
Running test: bm25weight2... ok
Running test: unigramlmweight2... ok
Running test: tradweight2... ok
Running test: emptydb1... ok
Running test: multiargop1... ok
Running test: msetweights1... ok
Running test: itorskiptofromend1... ok
Running test: sortvalue2... ok
Running test: enquiregetquery1... ok
Running test: exactxor1... ok
Running test: getdocumentlazy1... ok
Running test: getdocumentlazy2... ok
Running test: checkatleast4... ok
Running test: multidb1... ok
Running test: allterms7... ok
Running test: nosuchterm... ok
Running test: closedb1... ok
Running test: closedb3... ok
Running test: collapsekey5... ok
Running test: termstats... ok
Running test: msetiterator1... ok
Running test: msetiterator2... ok
Running test: msetiterator3... ok
Running test: esetiterator1... ok
Running test: esetiterator2... ok
Running test: collapsekey1... ok
Running test: collapsekey2... SKIPPED
api_db.cc:883: Don't have a suitable database currently

Running test: collapsekey3... ok
Running test: collapsekey4... ok
Running test: allterms1... ok
Running test: allterms2... ok
Running test: allterms3... ok
Running test: allterms4... ok
Running test: allterms5... ok
Running test: allterms6... ok
Running test: specialterms1... ok
Running test: specialterms2... ok
Running test: postlist1... ok
Running test: postlist2... ok
Running test: postlist3... ok
Running test: postlist4... ok
Running test: postlist5... ok
Running test: postlist6... ok
Running test: collfreq1... ok
Running test: sortvalue1... ok
Running test: sortrel1... ok
Running test: matchall1... ok
Running test: matchspy5... ok
Running test: subclassablerefcount3... ok
Running test: subclassablerefcount6... ok
Running test: subclassablerefcount7... ok
Running test: synonym1... ok
Running test: synonym2... ok
Running test: synonym3... ok
Running test: synonym4... ok
Running test: opmax1... ok
Running test: valuerange1... ok
Running test: valuege1... ok
Running test: valuege2... ok
Running test: valuele1... ok
Running test: valuege4... ok
Running test: valuerange3... ok
Running test: valuerange4... ok
Running test: valuerangematchesub1... ok
Running test: consistency3... ok
Running test: pctcutoff5... ok
Running test: topercent3... ok
Running test: topercent4... ok
Running test: topercent5... ok
Running test: topercent6... ok
Running test: valueweightsource1... ok
Running test: fixedweightsource1... ok
Running test: xor3... ok
Running test: phrasealldocs1... ok
Running test: wildcard1... SKIPPED
apitest.cc:142: Test not supported for multi backend

Running test: wildcard2... SKIPPED
apitest.cc:142: Test not supported for multi backend

Running test: dualprefixwildcard1... ok
Running test: loosephrase1... ok
Running test: loosenear1... ok
Running test: complexphrase1... ok
Running test: complexnear1... ok
Running test: complexphrase2... ok
Running test: complexnear2... ok
Running test: zeroestimate1... ok
Running test: complexphrase3... ok
Running test: complexnear3... ok
Running test: notandor1... ok
Running test: boolorbug1... ok
Running test: hoistnotbug1... ok
Running test: emptynot1... ok
Running test: emptymaybe1... ok
Running test: phraseweightcheckbug1... ok
Running test: orphanedhint1... ok
Running test: wildquery1... ok
Running test: snippet1... ok
Running test: snippetstem1... ok
Running test: snippetphrase1... ok
Running test: snippet_termcover1... ok
Running test: snippet_termcover2... ok
Running test: snippet_empty... ok
Running test: snippet_start_nonspace... ok
Running test: snippet_small_zerolength... ok
Running test: snippet_empty_mset... ok
Running test: valuestream2... ok
Running test: valuestream3... ok
Running test: valuemapsource1... ok
Running test: bm25weight4... ok
Running test: bm25weight5... ok
Running test: bm25plusweight2... ok
Running test: bm25plusweight3... ok
Running test: inl2weight3... ok
Running test: ifb2weight3... ok
Running test: ineb2weight3... ok
Running test: bb2weight3... ok
Running test: bb2weight4... ok
Running test: dlhweight1... ok
Running test: pl2weight3... ok
Running test: pl2plusweight4... ok
Running test: pl2plusweight5... ok
Running test: dphweight1... ok
Running test: tfidfweight3... ok
Running test: unigramlmweight4... ok
Running test: unigramlmweight5... ok
Running test: unigramlmweight7... ok
Running test: unigramlmweight8... ok
Running test: coordweight1... ok
Running test: matchdecider1... ok
Running test: matchdecider2... ok
Running test: matchdecider3... ok
Running test: consistency1... ok
Running test: userweight1... ok
Running test: valuesetmatchdecider2... ok
Running test: matchspy1... ok
Running test: checkzeromaxpartopt1... ok
Running test: externalsource4... ok
Running test: postingsourcebounds1... ok
Running test: sortfunctor1... ok
Running test: changesorter1... ok
Running test: sortfunctorempty1... ok
Running test: checkstatsweight1... ok
Running test: checkstatsweight2... ok
Running test: sortfunctor3... ok
Running test: compactmerge1... ok
Running test: compactstub1... ok
Running test: compactstub2... ok
Running test: compactstub3... ok
Running test: compactstub4... ok
Running test: compactempty1... ok
Running test: compactoldmerge1... ok
Running test: compactoldstub1... ok
Running test: compactoldstub2... ok
Running test: compactoldstub3... ok
Running test: compactoldstub4... ok
Running test: compactoldempty1... ok
Running test: compacttofd1... ok
Running test: compacttofd2... ok
Running test: compactmultichunks1... ok
Running test: compactmissingtables1... ok
Running test: compactmergesynonym1... ok
Running test: compactmultipass1... ok
Running test: compactoldmultichunks1... ok
Running test: compactoldmissingtables1... ok
Running test: compactoldmergesynonym1... ok
Running test: compactoldmultipass1... ok
Running test: compact1... ok
Running test: compactsingle1... ok
Running test: msize1... ok
Running test: msize2... ok
Running test: xordecay1... ok
Running test: ordecay1... ok
Running test: ordecay2... ok
Running test: orcheck1... ok
Running test: getuniqueterms1... ok
Running test: nopositionbug1... ok
Running test: netstats1... ok
Running test: matchspy2... ok
Running test: matchspy4... ok
Running test: valuerange5... ok
Running test: valuerange6... ok
Running test: valuerange7... ok
Running test: topercent7... ok
Running test: subdbwithoutpos1... ok
Running test: snippetmisc1... ok
Running test: snippet_cjkngrams... ok
Running test: dlhweight3... ok
Running test: dphweight3... ok
Running test: matchtimelimit1... ok
Running test: latlongpostingsource1... ok
Running test: phrasebug1... ok
Running test: metadata3... ok
Running test: metadata2... ok
Running test: metadata4... ok
Running test: elitesetmulti1... ok
Running test: elitesetmulti2... ok
Running test: elitesetmulti4... ok
Running test: postingsourceshardindex1... ok
Running test: stubdb1... ok
Running test: stubdb2... ok
Running test: stubdb3... ok
Running test: stubdb5... ok
Running test: stubdb9... ok
Running test: phrase3... ok
Running test: near1... ok
Running test: near2... ok
Running test: phrase1... ok
Running test: phrase2... ok
Running test: poslist1... ok
Running test: positfromtermit1... ok
Running test: poslist2... ok
Running test: poslist3... ok
Running test: poslistupdate1... ok
Running test: qpsynonympartial1... ok
Running test: qp_synonym2... ok
Running test: qp_synonym3... ok
Running test: qp_scale1... ok
Running test: valueweightsource2... ok
Running test: valuestats3... ok
Running test: alldocspl1... ok
Running test: alldocspl2... ok
Running test: totaldoclen1... ok
Running test: exceed32bitcombineddb1... ok
Running test: modifiedpostlist1... ok
Running test: doclenaftercommit1... ok
Running test: valuesaftercommit1... ok
Running test: replacedoc8... ok
Running test: newfreelistblock1... ok
Running test: splitpostings1... ok
Running test: closedb7... ok
Running test: metadata1... ok
Running test: metadata5... ok
Running test: valuerange2... ok
Running test: possubqueries1... ok
Running test: qp_flag_wildcard1... ok
Running test: qp_flag_wildcard2... ok
Running test: qp_flag_wildcard3... ok
Running test: qp_flag_partial1... ok
Running test: qp_value_range3... ok
Running test: qp_range3... ok
Running test: qp_stopword_group1... ok
Running test: modtermwdf1... ok
Running test: bigoaddvalue1... ok
Running test: serialise_document2... ok
Running test: decvalwtsource1... ok
Running test: decvalwtsource2... ok
Running test: decvalwtsource3... ok
Running test: decvalwtsource5... ok
Running test: adddoc1... ok
Running test: adddoc3... ok
Running test: adddoc4... ok
Running test: adddoc6... ok
Running test: implicitendsession1... ok
Running test: databaseassign1... ok
Running test: deldoc1... ok
Running test: deldoc2... ok
Running test: deldoc3... ok
Running test: deldoc4... ok
Running test: deldoc5... ok
Running test: deldoc6... ok
Running test: replacedoc1... ok
Running test: replacedoc2... ok
Running test: replacedoc3... ok
Running test: replacedoc4... ok
Running test: replacedoc5... ok
Running test: replacedoc6... ok
Running test: uniqueterm1... ok
Running test: allpostlist2... ok
Running test: emptyterm2... ok
Running test: phraseorneartoand1... ok
Running test: longpositionlist1... ok
Running test: consistency2... ok
Running test: nomoredocids1... ok
Running test: termtoolong1... ok
Running test: postlist7... ok
Running test: modifyvalues1... ok
Running test: qpmemoryleak1... SKIPPED
api_backend.cc:574: didn't manage to trigger DatabaseModifiedError

Running test: closedb4... ok
Running test: replacedoc7... ok
Running test: sortfunctor2... ok
Running test: closedb10... ok
Running test: writeread1... ok
Running test: retrylock1... ok
Running test: closedb2... ok
Running test: cursordelbug1... ok
Running test: closedb9... ok
Running test: synonymitor1... ok
Running test: valuestats1... ok
Running test: valueweightsource5... ok
./apitest backend multi_glass: All 353 tests passed, 4 skipped.
Running tests with backend "multi_glass_remoteprog_glass"...
Running test: zerodocid1... ok
Running test: emptyquery1... ok
Running test: simplequery1... ok
Running test: simplequery2... ok
Running test: simplequery3... ok
Running test: msetmaxitems1... ok
Running test: expandweights1... ok
Running test: expandweights2... ok
Running test: expandweights3... ok
Running test: expandweights4... ok
Running test: expandweights5... ok
Running test: expandweights6... ok
Running test: expandweights7... ok
Running test: expandweights8... ok
Running test: expandmaxitems1... ok
Running test: boolquery1... ok
Running test: msetfirst1... ok
Running test: topercent1... ok
Running test: topercent2... ok
Running test: expandfunctor1... ok
Running test: expanddeciderfilterprefix2... ok
Running test: pctcutoff1... ok
Running test: pctcutoff2... ok
Running test: pctcutoff3... ok
Running test: cutoff1... ok
Running test: allowqterms1... ok
Running test: maxattain1... ok
Running test: reversebool1... ok
Running test: reversebool2... ok
Running test: getmterms1... ok
Running test: getmterms2... ok
Running test: repeatquery1... ok
Running test: fetchdocs1... ok
Running test: absentterm1... ok
Running test: absentterm2... ok
Running test: rset1... ok
Running test: rset2... ok
Running test: eliteset3... ok
Running test: eliteset5... ok
Running test: termlisttermfreq1... ok
Running test: qterminfo1... ok
Running test: qterminfo2... ok
Running test: msetzeroitems1... ok
Running test: matches1... ok
Running test: wqf1... ok
Running test: qlen1... ok
Running test: termlist1... ok
Running test: termlist2... ok
Running test: termlist3... ok
Running test: termlist4... ok
Running test: puncterms1... ok
Running test: spaceterms1... ok
Running test: xor1... ok
Running test: xor2... ok
Running test: getdoc1... ok
Running test: emptyop1... ok
Running test: checkatleast1... ok
Running test: checkatleast2... ok
Running test: checkatleast3... ok
Running test: allpostlist1... ok
Running test: emptyterm1... ok
Running test: scaleweight1... ok
Running test: scaleweight2... ok
Running test: bm25weight1... ok
Running test: tradweight1... ok
Running test: tradweight4... ok
Running test: dbstats1... ok
Running test: dbstats2... ok
Running test: alldocspl3... ok
Running test: msetfirst2... ok
Running test: bm25weight2... ok
Running test: unigramlmweight2... ok
Running test: tradweight2... ok
Running test: emptydb1... ok
Running test: multiargop1... ok
Running test: msetweights1... ok
Running test: itorskiptofromend1... ok
Running test: sortvalue2... ok
Running test: enquiregetquery1... ok
Running test: exactxor1... ok
Running test: getdocumentlazy1... ok
Running test: getdocumentlazy2... ok
Running test: checkatleast4... ok
Running test: multidb1... ok
Running test: allterms7... ok
Running test: nosuchterm... ok
Running test: closedb1... ok
Running test: closedb3... ok
Running test: collapsekey5... ok
Running test: termstats... ok
Running test: msetiterator1... ok
Running test: msetiterator2... ok
Running test: msetiterator3... ok
Running test: esetiterator1... ok
Running test: esetiterator2... ok
Running test: collapsekey1... ok
Running test: collapsekey2... SKIPPED
api_db.cc:883: Don't have a suitable database currently

Running test: collapsekey3... ok
Running test: collapsekey4... ok
Running test: allterms1... ok
Running test: allterms2... ok
Running test: allterms3... ok
Running test: allterms4... ok
Running test: allterms5... ok
Running test: allterms6... ok
Running test: specialterms1... ok
Running test: specialterms2... ok
Running test: postlist1... ok
Running test: postlist2... ok
Running test: postlist3... ok
Running test: postlist4... ok
Running test: postlist5... ok
Running test: postlist6... ok
Running test: collfreq1... ok
Running test: sortvalue1... ok
Running test: sortrel1... ok
Running test: matchall1... ok
Running test: matchspy5... ok
Running test: subclassablerefcount3... ok
Running test: subclassablerefcount6... ok
Running test: subclassablerefcount7... ok
Running test: synonym1... ok
Running test: synonym2... ok
Running test: synonym3... ok
Running test: synonym4... ok
Running test: opmax1... ok
Running test: valuerange1... ok
Running test: valuege1... ok
Running test: valuege2... ok
Running test: valuele1... ok
Running test: valuege4... ok
Running test: valuerange3... ok
Running test: valuerange4... ok
Running test: valuerangematchesub1... ok
Running test: consistency3... ok
Running test: pctcutoff5... ok
Running test: topercent3... ok
Running test: topercent4... ok
Running test: topercent5... ok
Running test: topercent6... ok
Running test: valueweightsource1... ok
Running test: fixedweightsource1... ok
Running test: xor3... ok
Running test: phrasealldocs1... ok
Running test: wildcard1... SKIPPED
apitest.cc:142: Test not supported for multi backend

Running test: wildcard2... SKIPPED
apitest.cc:142: Test not supported for multi backend

Running test: dualprefixwildcard1... ok
Running test: loosephrase1... ok
Running test: loosenear1... ok
Running test: complexphrase1... ok
Running test: complexnear1... ok
Running test: complexphrase2... ok
Running test: complexnear2... ok
Running test: zeroestimate1... ok
Running test: complexphrase3... ok
Running test: complexnear3... ok
Running test: notandor1... ok
Running test: boolorbug1... ok
Running test: hoistnotbug1... ok
Running test: emptynot1... ok
Running test: emptymaybe1... ok
Running test: phraseweightcheckbug1... ok
Running test: orphanedhint1... ok
Running test: wildquery1... ok
Running test: snippet1... ok
Running test: snippetstem1... ok
Running test: snippetphrase1... ok
Running test: snippet_termcover1... ok
Running test: snippet_termcover2... ok
Running test: snippet_empty... ok
Running test: snippet_start_nonspace... ok
Running test: snippet_small_zerolength... ok
Running test: snippet_empty_mset... ok
Running test: valuestream2... ok
Running test: valuestream3... ok
Running test: valuemapsource1... ok
Running test: bm25weight4... ok
Running test: bm25weight5... ok
Running test: bm25plusweight2... ok
Running test: bm25plusweight3... ok
Running test: inl2weight3... ok
Running test: ifb2weight3... ok
Running test: ineb2weight3... ok
Running test: bb2weight3... ok
Running test: bb2weight4... ok
Running test: dlhweight1... ok
Running test: pl2weight3... ok
Running test: pl2plusweight4... ok
Running test: pl2plusweight5... ok
Running test: dphweight1... ok
Running test: tfidfweight3... ok
Running test: unigramlmweight4... ok
Running test: unigramlmweight5... ok
Running test: unigramlmweight7... ok
Running test: unigramlmweight8... ok
Running test: coordweight1... ok
Running test: msize1... ok
Running test: msize2... ok
Running test: xordecay1... ok
Running test: ordecay1... ok
Running test: ordecay2... ok
Running test: orcheck1... ok
Running test: getuniqueterms1... ok
Running test: nopositionbug1... ok
Running test: netstats1... ok
Running test: matchspy2... ok
Running test: matchspy4... XFAIL (Matchspy counts hits on remote and locally)
api_matchspy.cc:218: ((spyb0.get_total()) == (25))
Expected 'spyb0.get_total()' and '25' to be equal: were 34 and 25


Running test: valuerange5... ok
Running test: valuerange6... ok
Running test: valuerange7... ok
Running test: topercent7... ok
Running test: subdbwithoutpos1... ok
Running test: snippetmisc1... ok
Running test: snippet_cjkngrams... ok
Running test: dlhweight3... ok
Running test: dphweight3... ok
Running test: elitesetmulti1... ok
Running test: elitesetmulti2... ok
Running test: elitesetmulti4... ok
Running test: matchdecider4... ok
Running test: closedb6... ok
Running test: keepalive1... ok
Running test: externalsource2... ok
Running test: sortfunctorremote1... ok
Running test: protocolbug1... ok
Running test: spell0... ok
Running test: alldocspl1... ok
Running test: alldocspl2... ok
Running test: totaldoclen1... ok
Running test: exceed32bitcombineddb1... ok
Running test: modifiedpostlist1... ok
Running test: doclenaftercommit1... ok
Running test: valuesaftercommit1... ok
Running test: replacedoc8... ok
Running test: newfreelistblock1... ok
Running test: splitpostings1... ok
Running test: closedb7... ok
Running test: metadata1... ok
Running test: metadata5... ok
Running test: valuerange2... ok
Running test: possubqueries1... ok
Running test: qp_flag_wildcard1... ok
Running test: qp_flag_wildcard2... ok
Running test: qp_flag_wildcard3... ok
Running test: qp_flag_partial1... ok
Running test: qp_value_range3... ok
Running test: qp_range3... ok
Running test: qp_stopword_group1... ok
Running test: modtermwdf1... ok
Running test: bigoaddvalue1... ok
Running test: serialise_document2... ok
Running test: decvalwtsource1... ok
Running test: decvalwtsource2... ok
Running test: decvalwtsource3... ok
Running test: decvalwtsource5... ok
Running test: adddoc1... ok
Running test: adddoc3... ok
Running test: adddoc4... ok
Running test: adddoc6... ok
Running test: implicitendsession1... ok
Running test: databaseassign1... ok
Running test: deldoc1... ok
Running test: deldoc2... ok
Running test: deldoc3... ok
Running test: deldoc4... ok
Running test: deldoc5... ok
Running test: deldoc6... ok
Running test: replacedoc1... ok
Running test: replacedoc2... ok
Running test: replacedoc3... ok
Running test: replacedoc4... ok
Running test: replacedoc5... ok
Running test: replacedoc6... ok
Running test: uniqueterm1... ok
Running test: allpostlist2... ok
Running test: emptyterm2... ok
Running test: phraseorneartoand1... ok
Running test: longpositionlist1... ok
Running test: consistency2... ok
Running test: nomoredocids1... ok
Running test: termtoolong1... ok
Running test: postlist7... ok
Running test: modifyvalues1... ok
Running test: qpmemoryleak1... SKIPPED
api_backend.cc:574: didn't manage to trigger DatabaseModifiedError

Running test: closedb4... ok
./apitest backend multi_glass_remoteprog_glass: All 280 tests passed, 1 expected failures, 4 skipped.
Running tests with backend "multi_remoteprog_glass"...
Running test: zerodocid1... ok
Running test: emptyquery1... ok
Running test: simplequery1... ok
Running test: simplequery2... ok
Running test: simplequery3... ok
Running test: msetmaxitems1... ok
Running test: expandweights1... ok
Running test: expandweights2... ok
Running test: expandweights3... ok
Running test: expandweights4... ok
Running test: expandweights5... ok
Running test: expandweights6... ok
Running test: expandweights7... ok
Running test: expandweights8... ok
Running test: expandmaxitems1... ok
Running test: boolquery1... ok
Running test: msetfirst1... ok
Running test: topercent1... ok
Running test: topercent2... ok
Running test: expandfunctor1... ok
Running test: expanddeciderfilterprefix2... ok
Running test: pctcutoff1... ok
Running test: pctcutoff2... ok
Running test: pctcutoff3... ok
Running test: cutoff1... ok
Running test: allowqterms1... ok
Running test: maxattain1... ok
Running test: reversebool1... ok
Running test: reversebool2... ok
Running test: getmterms1... ok
Running test: getmterms2... ok
Running test: repeatquery1... ok
Running test: fetchdocs1... ok
Running test: absentterm1... ok
Running test: absentterm2... ok
Running test: rset1... ok
Running test: rset2... ok
Running test: eliteset3... ok
Running test: eliteset5... ok
Running test: termlisttermfreq1... ok
Running test: qterminfo1... ok
Running test: qterminfo2... ok
Running test: msetzeroitems1... ok
Running test: matches1... ok
Running test: wqf1... ok
Running test: qlen1... ok
Running test: termlist1... ok
Running test: termlist2... ok
Running test: termlist3... ok
Running test: termlist4... ok
Running test: puncterms1... ok
Running test: spaceterms1... ok
Running test: xor1... ok
Running test: xor2... ok
Running test: getdoc1... ok
Running test: emptyop1... ok
Running test: checkatleast1... ok
Running test: checkatleast2... ok
Running test: checkatleast3... ok
Running test: allpostlist1... ok
Running test: emptyterm1... ok
Running test: scaleweight1... ok
Running test: scaleweight2... ok
Running test: bm25weight1... ok
Running test: tradweight1... ok
Running test: tradweight4... ok
Running test: dbstats1... ok
Running test: dbstats2... ok
Running test: alldocspl3... ok
Running test: msetfirst2... ok
Running test: bm25weight2... ok
Running test: unigramlmweight2... ok
Running test: tradweight2... ok
Running test: emptydb1... ok
Running test: multiargop1... ok
Running test: msetweights1... ok
Running test: itorskiptofromend1... ok
Running test: sortvalue2... ok
Running test: enquiregetquery1... ok
Running test: exactxor1... ok
Running test: getdocumentlazy1... ok
Running test: getdocumentlazy2... ok
Running test: checkatleast4... ok
Running test: multidb1... ok
Running test: allterms7... ok
Running test: nosuchterm... ok
Running test: closedb1... ok
Running test: closedb3... ok
Running test: collapsekey5... ok
Running test: termstats... ok
Running test: msetiterator1... ok
Running test: msetiterator2... ok
Running test: msetiterator3... ok
Running test: esetiterator1... ok
Running test: esetiterator2... ok
Running test: collapsekey1... ok
Running test: collapsekey2... SKIPPED
api_db.cc:883: Don't have a suitable database currently

Running test: collapsekey3... ok
Running test: collapsekey4... ok
Running test: allterms1... ok
Running test: allterms2... ok
Running test: allterms3... ok
Running test: allterms4... ok
Running test: allterms5... ok
Running test: allterms6... ok
Running test: specialterms1... ok
Running test: specialterms2... ok
Running test: postlist1... ok
Running test: postlist2... ok
Running test: postlist3... ok
Running test: postlist4... ok
Running test: postlist5... ok
Running test: postlist6... ok
Running test: collfreq1... ok
Running test: sortvalue1... ok
Running test: sortrel1... ok
Running test: matchall1... ok
Running test: matchspy5... ok
Running test: subclassablerefcount3... ok
Running test: subclassablerefcount6... ok
Running test: subclassablerefcount7... ok
Running test: synonym1... ok
Running test: synonym2... ok
Running test: synonym3... ok
Running test: synonym4... ok
Running test: opmax1... ok
Running test: valuerange1... ok
Running test: valuege1... ok
Running test: valuege2... ok
Running test: valuele1... ok
Running test: valuege4... ok
Running test: valuerange3... ok
Running test: valuerange4... ok
Running test: valuerangematchesub1... ok
Running test: consistency3... ok
Running test: pctcutoff5... ok
Running test: topercent3... ok
Running test: topercent4... ok
Running test: topercent5... ok
Running test: topercent6... ok
Running test: valueweightsource1... ok
Running test: fixedweightsource1... ok
Running test: xor3... ok
Running test: phrasealldocs1... ok
Running test: wildcard1... SKIPPED
apitest.cc:142: Test not supported for multi backend

Running test: wildcard2... SKIPPED
apitest.cc:142: Test not supported for multi backend

Running test: dualprefixwildcard1... ok
Running test: loosephrase1... ok
Running test: loosenear1... ok
Running test: complexphrase1... ok
Running test: complexnear1... ok
Running test: complexphrase2... ok
Running test: complexnear2... ok
Running test: zeroestimate1... ok
Running test: complexphrase3... ok
Running test: complexnear3... ok
Running test: notandor1... ok
Running test: boolorbug1... ok
Running test: hoistnotbug1... ok
Running test: emptynot1... ok
Running test: emptymaybe1... ok
Running test: phraseweightcheckbug1... ok
Running test: orphanedhint1... ok
Running test: wildquery1... ok
Running test: snippet1... ok
Running test: snippetstem1... ok
Running test: snippetphrase1... ok
Running test: snippet_termcover1... ok
Running test: snippet_termcover2... ok
Running test: snippet_empty... ok
Running test: snippet_start_nonspace... ok
Running test: snippet_small_zerolength... ok
Running test: snippet_empty_mset... ok
Running test: valuestream2... ok
Running test: valuestream3... ok
Running test: valuemapsource1... ok
Running test: bm25weight4... ok
Running test: bm25weight5... ok
Running test: bm25plusweight2... ok
Running test: bm25plusweight3... ok
Running test: inl2weight3... ok
Running test: ifb2weight3... ok
Running test: ineb2weight3... ok
Running test: bb2weight3... ok
Running test: bb2weight4... ok
Running test: dlhweight1... ok
Running test: pl2weight3... ok
Running test: pl2plusweight4... ok
Running test: pl2plusweight5... ok
Running test: dphweight1... ok
Running test: tfidfweight3... ok
Running test: unigramlmweight4... ok
Running test: unigramlmweight5... ok
Running test: unigramlmweight7... ok
Running test: unigramlmweight8... ok
Running test: coordweight1... ok
Running test: msize1... ok
Running test: msize2... ok
Running test: xordecay1... ok
Running test: ordecay1... ok
Running test: ordecay2... ok
Running test: orcheck1... ok
Running test: getuniqueterms1... ok
Running test: nopositionbug1... ok
Running test: netstats1... ok
Running test: matchspy2... ok
Running test: matchspy4... XFAIL (Matchspy counts hits on remote and locally)
api_matchspy.cc:218: ((spyb0.get_total()) == (25))
Expected 'spyb0.get_total()' and '25' to be equal: were 34 and 25


Running test: valuerange5... ok
Running test: valuerange6... ok
Running test: valuerange7... ok
Running test: topercent7... ok
Running test: subdbwithoutpos1... XFAIL (Known but obscure remote bug which doesn't justify protocol version bump)
api_query.cc:801: ((mset3.size()) == (3))
Expected 'mset3.size()' and '3' to be equal: were 4 and 3


Running test: snippetmisc1... ok
Running test: snippet_cjkngrams... ok
Running test: dlhweight3... ok
Running test: dphweight3... ok
Running test: elitesetmulti1... ok
Running test: elitesetmulti2... ok
Running test: elitesetmulti4... ok
Running test: matchdecider4... ok
Running test: closedb6... ok
Running test: keepalive1... ok
Running test: externalsource2... ok
Running test: sortfunctorremote1... ok
Running test: protocolbug1... ok
Running test: spell0... ok
Running test: alldocspl1... ok
Running test: alldocspl2... ok
Running test: totaldoclen1... ok
Running test: exceed32bitcombineddb1... ok
Running test: modifiedpostlist1... ok
Running test: doclenaftercommit1... ok
Running test: valuesaftercommit1... ok
Running test: replacedoc8... ok
Running test: newfreelistblock1... ok
Running test: splitpostings1... ok
Running test: closedb7... ok
Running test: metadata1... ok
Running test: metadata5... ok
Running test: valuerange2... ok
Running test: possubqueries1... ok
Running test: qp_flag_wildcard1... ok
Running test: qp_flag_wildcard2... ok
Running test: qp_flag_wildcard3... ok
Running test: qp_flag_partial1... ok
Running test: qp_value_range3... ok
Running test: qp_range3... ok
Running test: qp_stopword_group1... ok
Running test: modtermwdf1... ok
Running test: bigoaddvalue1... ok
Running test: serialise_document2... ok
Running test: decvalwtsource1... ok
Running test: decvalwtsource2... ok
Running test: decvalwtsource3... ok
Running test: decvalwtsource5... ok
Running test: adddoc1... ok
Running test: adddoc3... ok
Running test: adddoc4... ok
Running test: adddoc6... ok
Running test: implicitendsession1... ok
Running test: databaseassign1... ok
Running test: deldoc1... ok
Running test: deldoc2... ok
Running test: deldoc3... ok
Running test: deldoc4... ok
Running test: deldoc5... ok
Running test: deldoc6... ok
Running test: replacedoc1... ok
Running test: replacedoc2... ok
Running test: replacedoc3... ok
Running test: replacedoc4... ok
Running test: replacedoc5... ok
Running test: replacedoc6... ok
Running test: uniqueterm1... ok
Running test: allpostlist2... ok
Running test: emptyterm2... ok
Running test: phraseorneartoand1... ok
Running test: longpositionlist1... ok
Running test: consistency2... ok
Running test: nomoredocids1... ok
Running test: termtoolong1... ok
Running test: postlist7... ok
Running test: modifyvalues1... ok
Running test: qpmemoryleak1... SKIPPED
api_backend.cc:574: didn't manage to trigger DatabaseModifiedError

Running test: closedb4... ok
./apitest backend multi_remoteprog_glass: All 279 tests passed, 2 expected failures, 4 skipped.
Running tests with backend "remoteprog_glass"...
Running test: zerodocid1... ok
Running test: emptyquery1... ok
Running test: simplequery1... ok
Running test: simplequery2... ok
Running test: simplequery3... ok
Running test: msetmaxitems1... ok
Running test: expandweights1... ok
Running test: expandweights2... ok
Running test: expandweights3... ok
Running test: expandweights4... ok
Running test: expandweights5... ok
Running test: expandweights6... ok
Running test: expandweights7... ok
Running test: expandweights8... ok
Running test: expandmaxitems1... ok
Running test: boolquery1... ok
Running test: msetfirst1... ok
Running test: topercent1... ok
Running test: topercent2... ok
Running test: expandfunctor1... ok
Running test: expanddeciderfilterprefix2... ok
Running test: pctcutoff1... ok
Running test: pctcutoff2... ok
Running test: pctcutoff3... ok
Running test: cutoff1... ok
Running test: allowqterms1... ok
Running test: maxattain1... ok
Running test: reversebool1... ok
Running test: reversebool2... ok
Running test: getmterms1... ok
Running test: getmterms2... ok
Running test: repeatquery1... ok
Running test: fetchdocs1... ok
Running test: absentterm1... ok
Running test: absentterm2... ok
Running test: rset1... ok
Running test: rset2... ok
Running test: eliteset3... ok
Running test: eliteset5... ok
Running test: termlisttermfreq1... ok
Running test: qterminfo1... ok
Running test: qterminfo2... ok
Running test: msetzeroitems1... ok
Running test: matches1... ok
Running test: wqf1... ok
Running test: qlen1... ok
Running test: termlist1... ok
Running test: termlist2... ok
Running test: termlist3... ok
Running test: termlist4... ok
Running test: puncterms1... ok
Running test: spaceterms1... ok
Running test: xor1... ok
Running test: xor2... ok
Running test: getdoc1... ok
Running test: emptyop1... ok
Running test: checkatleast1... ok
Running test: checkatleast2... ok
Running test: checkatleast3... ok
Running test: allpostlist1... ok
Running test: emptyterm1... ok
Running test: scaleweight1... ok
Running test: scaleweight2... ok
Running test: bm25weight1... ok
Running test: tradweight1... ok
Running test: tradweight4... ok
Running test: dbstats1... ok
Running test: dbstats2... ok
Running test: alldocspl3... ok
Running test: msetfirst2... ok
Running test: bm25weight2... ok
Running test: unigramlmweight2... ok
Running test: tradweight2... ok
Running test: emptydb1... ok
Running test: multiargop1... ok
Running test: msetweights1... ok
Running test: itorskiptofromend1... ok
Running test: sortvalue2... ok
Running test: enquiregetquery1... ok
Running test: exactxor1... ok
Running test: getdocumentlazy1... ok
Running test: getdocumentlazy2... ok
Running test: checkatleast4... ok
Running test: multidb1... ok
Running test: allterms7... ok
Running test: nosuchterm... ok
Running test: closedb1... ok
Running test: closedb3... ok
Running test: collapsekey5... ok
Running test: termstats... ok
Running test: msetiterator1... ok
Running test: msetiterator2... ok
Running test: msetiterator3... ok
Running test: esetiterator1... ok
Running test: esetiterator2... ok
Running test: collapsekey1... ok
Running test: collapsekey2... SKIPPED
api_db.cc:883: Don't have a suitable database currently

Running test: collapsekey3... ok
Running test: collapsekey4... ok
Running test: allterms1... ok
Running test: allterms2... ok
Running test: allterms3... ok
Running test: allterms4... ok
Running test: allterms5... ok
Running test: allterms6... ok
Running test: specialterms1... ok
Running test: specialterms2... ok
Running test: postlist1... ok
Running test: postlist2... ok
Running test: postlist3... ok
Running test: postlist4... ok
Running test: postlist5... ok
Running test: postlist6... ok
Running test: collfreq1... ok
Running test: sortvalue1... ok
Running test: sortrel1... ok
Running test: matchall1... ok
Running test: matchspy5... ok
Running test: subclassablerefcount3... ok
Running test: subclassablerefcount6... ok
Running test: subclassablerefcount7... ok
Running test: synonym1... ok
Running test: synonym2... ok
Running test: synonym3... ok
Running test: synonym4... ok
Running test: opmax1... ok
Running test: valuerange1... ok
Running test: valuege1... ok
Running test: valuege2... ok
Running test: valuele1... ok
Running test: valuege4... ok
Running test: valuerange3... ok
Running test: valuerange4... ok
Running test: valuerangematchesub1... ok
Running test: consistency3... ok
Running test: pctcutoff5... ok
Running test: topercent3... ok
Running test: topercent4... ok
Running test: topercent5... ok
Running test: topercent6... ok
Running test: valueweightsource1... ok
Running test: fixedweightsource1... ok
Running test: xor3... ok
Running test: phrasealldocs1... ok
Running test: wildcard1... ok
Running test: wildcard2... ok
Running test: dualprefixwildcard1... ok
Running test: loosephrase1... ok
Running test: loosenear1... ok
Running test: complexphrase1... ok
Running test: complexnear1... ok
Running test: complexphrase2... ok
Running test: complexnear2... ok
Running test: zeroestimate1... ok
Running test: complexphrase3... ok
Running test: complexnear3... ok
Running test: notandor1... ok
Running test: boolorbug1... ok
Running test: hoistnotbug1... ok
Running test: emptynot1... ok
Running test: emptymaybe1... ok
Running test: phraseweightcheckbug1... ok
Running test: orphanedhint1... ok
Running test: wildquery1... ok
Running test: snippet1... ok
Running test: snippetstem1... ok
Running test: snippetphrase1... ok
Running test: snippet_termcover1... ok
Running test: snippet_termcover2... ok
Running test: snippet_empty... ok
Running test: snippet_start_nonspace... ok
Running test: snippet_small_zerolength... ok
Running test: snippet_empty_mset... ok
Running test: valuestream2... ok
Running test: valuestream3... ok
Running test: valuemapsource1... ok
Running test: bm25weight4... ok
Running test: bm25weight5... ok
Running test: bm25plusweight2... ok
Running test: bm25plusweight3... ok
Running test: inl2weight3... ok
Running test: ifb2weight3... ok
Running test: ineb2weight3... ok
Running test: bb2weight3... ok
Running test: bb2weight4... ok
Running test: dlhweight1... ok
Running test: pl2weight3... ok
Running test: pl2plusweight4... ok
Running test: pl2plusweight5... ok
Running test: dphweight1... ok
Running test: tfidfweight3... ok
Running test: unigramlmweight4... ok
Running test: unigramlmweight5... ok
Running test: unigramlmweight7... ok
Running test: unigramlmweight8... ok
Running test: coordweight1... ok
Running test: multidb3... ok
Running test: multidb4... ok
Running test: multidb5... ok
Running test: rsetmultidb1... ok
Running test: rsetmultidb3... ok
Running test: eliteset1... ok
Running test: eliteset2... ok
Running test: eliteset4... ok
Running test: uuid1... ok
Running test: rsetmultidb2... ok
Running test: multiexpand1... ok
Running test: valuestream1... ok
Running test: valuemapsource2... ok
Running test: decvalwtsource4... ok
Running test: msize1... ok
Running test: msize2... ok
Running test: xordecay1... ok
Running test: ordecay1... ok
Running test: ordecay2... ok
Running test: orcheck1... ok
Running test: getuniqueterms1... ok
Running test: nopositionbug1... ok
Running test: netstats1... ok
Running test: matchspy2... ok
Running test: matchspy4... ok
Running test: valuerange5... ok
Running test: valuerange6... ok
Running test: valuerange7... ok
Running test: topercent7... ok
Running test: subdbwithoutpos1... XFAIL (Known but obscure remote bug which doesn't justify protocol version bump)
api_query.cc:801: ((mset3.size()) == (3))
Expected 'mset3.size()' and '3' to be equal: were 4 and 3


Running test: snippetmisc1... ok
Running test: snippet_cjkngrams... ok
Running test: dlhweight3... ok
Running test: dphweight3... ok
Running test: phrasebug1... ok
Running test: metadata3... ok
Running test: metadata2... ok
Running test: metadata4... ok
Running test: phrase3... ok
Running test: near1... ok
Running test: near2... ok
Running test: phrase1... ok
Running test: phrase2... ok
Running test: poslist1... ok
Running test: positfromtermit1... SKIPPED
api_posdb.cc:617: TermList::positionlist_count() not yet implemented for this backend

Running test: poslist2... ok
Running test: poslist3... ok
Running test: poslistupdate1... ok
Running test: matchdecider4... ok
Running test: closedb6... ok
Running test: keepalive1... ok
Running test: externalsource2... ok
Running test: sortfunctorremote1... ok
Running test: protocolbug1... ok
Running test: spell0... ok
Running test: closedb5... ok
Running test: badtransaction1... ok
Running test: committransaction1... ok
Running test: canceltransaction1... ok
Running test: canceltransaction2... ok
Running test: valuestats2... ok
Running test: valuestats4... ok
Running test: valueweightsource2... ok
Running test: valuestats3... ok
Running test: valueweightsource3... ok
Running test: alldocspl1... ok
Running test: alldocspl2... ok
Running test: totaldoclen1... ok
Running test: exceed32bitcombineddb1... ok
Running test: modifiedpostlist1... ok
Running test: doclenaftercommit1... ok
Running test: valuesaftercommit1... ok
Running test: replacedoc8... ok
Running test: newfreelistblock1... ok
Running test: splitpostings1... ok
Running test: closedb7... ok
Running test: metadata1... ok
Running test: metadata5... ok
Running test: valuerange2... ok
Running test: possubqueries1... ok
Running test: qp_flag_wildcard1... ok
Running test: qp_flag_wildcard2... ok
Running test: qp_flag_wildcard3... ok
Running test: qp_flag_partial1... ok
Running test: qp_value_range3... ok
Running test: qp_range3... ok
Running test: qp_stopword_group1... ok
Running test: modtermwdf1... ok
Running test: bigoaddvalue1... ok
Running test: serialise_document2... ok
Running test: decvalwtsource1... ok
Running test: decvalwtsource2... ok
Running test: decvalwtsource3... ok
Running test: decvalwtsource5... ok
Running test: adddoc1... ok
Running test: adddoc3... ok
Running test: adddoc4... ok
Running test: adddoc6... ok
Running test: implicitendsession1... ok
Running test: databaseassign1... ok
Running test: deldoc1... ok
Running test: deldoc2... ok
Running test: deldoc3... ok
Running test: deldoc4... ok
Running test: deldoc5... ok
Running test: deldoc6... ok
Running test: replacedoc1... ok
Running test: replacedoc2... ok
Running test: replacedoc3... ok
Running test: replacedoc4... ok
Running test: replacedoc5... ok
Running test: replacedoc6... ok
Running test: uniqueterm1... ok
Running test: allpostlist2... ok
Running test: emptyterm2... ok
Running test: phraseorneartoand1... ok
Running test: longpositionlist1... ok
Running test: consistency2... ok
Running test: nomoredocids1... ok
Running test: termtoolong1... ok
Running test: postlist7... ok
Running test: modifyvalues1... ok
Running test: qpmemoryleak1... SKIPPED
api_backend.cc:574: didn't manage to trigger DatabaseModifiedError

Running test: closedb4... ok
Running test: adddoc2... ok
Running test: adddoc5... ok
Running test: closedb10... ok
Running test: writeread1... ok
Running test: valuestats1... ok
Running test: valueweightsource5... SKIPPED
apitest.cc:142: Test not supported for remote backend

./apitest backend remoteprog_glass: All 321 tests passed, 1 expected failures, 4 skipped.
Running tests with backend "remotetcp_glass"...
Running test: zerodocid1... ok
Running test: emptyquery1... ok
Running test: simplequery1... ok
Running test: simplequery2... ok
Running test: simplequery3... ok
Running test: msetmaxitems1... ok
Running test: expandweights1... ok
Running test: expandweights2... ok
Running test: expandweights3... ok
Running test: expandweights4... ok
Running test: expandweights5... ok
Running test: expandweights6... ok
Running test: expandweights7... ok
Running test: expandweights8... ok
Running test: expandmaxitems1... ok
Running test: boolquery1... ok
Running test: msetfirst1... ok
Running test: topercent1... ok
Running test: topercent2... ok
Running test: expandfunctor1... ok
Running test: expanddeciderfilterprefix2... ok
Running test: pctcutoff1... ok
Running test: pctcutoff2... ok
Running test: pctcutoff3... ok
Running test: cutoff1... ok
Running test: allowqterms1... ok
Running test: maxattain1... ok
Running test: reversebool1... ok
Running test: reversebool2... ok
Running test: getmterms1... ok
Running test: getmterms2... ok
Running test: repeatquery1... ok
Running test: fetchdocs1... ok
Running test: absentterm1... ok
Running test: absentterm2... ok
Running test: rset1... ok
Running test: rset2... ok
Running test: eliteset3... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .glass/db__apitest_simpledata' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: eliteset5... ok
Running test: termlisttermfreq1... ok
Running test: qterminfo1... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .glass/db__apitest_simpledata' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: qterminfo2... ok
Running test: msetzeroitems1... ok
Running test: matches1... ok
Running test: wqf1... ok
Running test: qlen1... ok
Running test: termlist1... ok
Running test: termlist2... ok
Running test: termlist3... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .glass/db__apitest_onedoc' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: termlist4... ok
Running test: puncterms1... ok
Running test: spaceterms1... ok
Running test: xor1... ok
Running test: xor2... ok
Running test: getdoc1... ok
Running test: emptyop1... ok
Running test: checkatleast1... ok
Running test: checkatleast2... ok
Running test: checkatleast3... ok
Running test: allpostlist1... ok
Running test: emptyterm1... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .glass/db__apitest_onedoc' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: scaleweight1... ok
Running test: scaleweight2... ok
Running test: bm25weight1... ok
Running test: tradweight1... ok
Running test: tradweight4... ok
Running test: dbstats1... ok
Running test: dbstats2... ok
Running test: alldocspl3... ok
Running test: msetfirst2... ok
Running test: bm25weight2... ok
Running test: unigramlmweight2... ok
Running test: tradweight2... ok
Running test: emptydb1... ok
Running test: multiargop1... ok
Running test: msetweights1... ok
Running test: itorskiptofromend1... ok
Running test: sortvalue2... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .glass/db__apitest_simpledata2' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: enquiregetquery1... ok
Running test: exactxor1... ok
Running test: getdocumentlazy1... ok
Running test: getdocumentlazy2... ok
Running test: checkatleast4... ok
Running test: multidb1... ok
Running test: allterms7... ok
Running test: nosuchterm... ok
Running test: closedb1... ok
Running test: closedb3... ok
Running test: collapsekey5... ok
Running test: termstats... ok
Running test: msetiterator1... ok
Running test: msetiterator2... ok
Running test: msetiterator3... ok
Running test: esetiterator1... ok
Running test: esetiterator2... ok
Running test: collapsekey1... ok
Running test: collapsekey2... SKIPPED
api_db.cc:883: Don't have a suitable database currently

Running test: collapsekey3... ok
Running test: collapsekey4... ok
Running test: allterms1... ok
Running test: allterms2... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .glass/db__apitest_allterms2' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: allterms3... ok
Running test: allterms4... ok
Running test: allterms5... ok
Running test: allterms6... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .glass/db__apitest_allterms2' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: specialterms1... ok
Running test: specialterms2... ok
Running test: postlist1... ok
Running test: postlist2... ok
Running test: postlist3... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .glass/db__apitest_simpledata' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: postlist4... ok
Running test: postlist5... ok
Running test: postlist6... ok
Running test: collfreq1... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .glass/db__apitest_simpledata__apitest_simpledata2' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: sortvalue1... ok
Running test: sortrel1... ok
Running test: matchall1... ok
Running test: matchspy5... ok
Running test: subclassablerefcount3... ok
Running test: subclassablerefcount6... ok
Running test: subclassablerefcount7... ok
Running test: synonym1... ok
Running test: synonym2... ok
Running test: synonym3... ok
Running test: synonym4... ok
Running test: opmax1... ok
Running test: valuerange1... ok
Running test: valuege1... ok
Running test: valuege2... ok
Running test: valuele1... ok
Running test: valuege4... ok
Running test: valuerange3... ok
Running test: valuerange4... ok
Running test: valuerangematchesub1... ok
Running test: consistency3... ok
Running test: pctcutoff5... ok
Running test: topercent3... ok
Running test: topercent4... ok
Running test: topercent5... ok
Running test: topercent6... ok
Running test: valueweightsource1... ok
Running test: fixedweightsource1... ok
Running test: xor3... ok
Running test: phrasealldocs1... ok
Running test: wildcard1... ok
Running test: wildcard2... ok
Running test: dualprefixwildcard1... ok
Running test: loosephrase1... ok
Running test: loosenear1... ok
Running test: complexphrase1... ok
Running test: complexnear1... ok
Running test: complexphrase2... ok
Running test: complexnear2... ok
Running test: zeroestimate1... ok
Running test: complexphrase3... ok
Running test: complexnear3... ok
Running test: notandor1... ok
Running test: boolorbug1... ok
Running test: hoistnotbug1... ok
Running test: emptynot1... ok
Running test: emptymaybe1... ok
Running test: phraseweightcheckbug1... ok
Running test: orphanedhint1... ok
Running test: wildquery1... ok
Running test: snippet1... ok
Running test: snippetstem1... ok
Running test: snippetphrase1... ok
Running test: snippet_termcover1... ok
Running test: snippet_termcover2... ok
Running test: snippet_empty... ok
Running test: snippet_start_nonspace... ok
Running test: snippet_small_zerolength... ok
Running test: snippet_empty_mset... ok
Running test: valuestream2... ok
Running test: valuestream3... ok
Running test: valuemapsource1... ok
Running test: bm25weight4... ok
Running test: bm25weight5... ok
Running test: bm25plusweight2... ok
Running test: bm25plusweight3... ok
Running test: inl2weight3... ok
Running test: ifb2weight3... ok
Running test: ineb2weight3... ok
Running test: bb2weight3... ok
Running test: bb2weight4... ok
Running test: dlhweight1... ok
Running test: pl2weight3... ok
Running test: pl2plusweight4... ok
Running test: pl2plusweight5... ok
Running test: dphweight1... ok
Running test: tfidfweight3... ok
Running test: unigramlmweight4... ok
Running test: unigramlmweight5... ok
Running test: unigramlmweight7... ok
Running test: unigramlmweight8... ok
Running test: coordweight1... ok
Running test: multidb3... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .glass/db__apitest_simpledata2' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: multidb4... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .glass/db__apitest_simpledata2' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: multidb5... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .glass/db__apitest_simpledata2' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: rsetmultidb1... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .glass/db__apitest_rset' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: rsetmultidb3... ok
Running test: eliteset1... ok
Running test: eliteset2... ok
Running test: eliteset4... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .glass/db__apitest_simpledata' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: uuid1... ok
Running test: rsetmultidb2... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .glass/db__apitest_rset' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: multiexpand1... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .glass/db__apitest_simpledata' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: valuestream1... ok
Running test: valuemapsource2... ok
Running test: decvalwtsource4... ok
Running test: msize1... ok
Running test: msize2... ok
Running test: xordecay1... ok
Running test: ordecay1... ok
Running test: ordecay2... ok
Running test: orcheck1... ok
Running test: getuniqueterms1... ok
Running test: nopositionbug1... ok
Running test: netstats1... ok
Running test: matchspy2... ok
Running test: matchspy4... ok
Running test: valuerange5... ok
Running test: valuerange6... ok
Running test: valuerange7... ok
Running test: topercent7... ok
Running test: subdbwithoutpos1... XFAIL (Known but obscure remote bug which doesn't justify protocol version bump): EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .glass/db__subdbwithoutpos1' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: snippetmisc1... ok
Running test: snippet_cjkngrams... ok
Running test: dlhweight3... ok
Running test: dphweight3... ok
Running test: phrasebug1... ok
Running test: metadata3... ok
Running test: metadata2... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .glass/dbw' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: metadata4... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .glass/dbw' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: phrase3... ok
Running test: near1... ok
Running test: near2... ok
Running test: phrase1... ok
Running test: phrase2... ok
Running test: poslist1... ok
Running test: positfromtermit1... SKIPPED
api_posdb.cc:617: TermList::positionlist_count() not yet implemented for this backend

Running test: poslist2... ok
Running test: poslist3... ok
Running test: poslistupdate1... ok
Running test: matchdecider4... ok
Running test: closedb6... ok
Running test: keepalive1... ok
Running test: externalsource2... ok
Running test: sortfunctorremote1... ok
Running test: protocolbug1... ok
Running test: spell0... ok
Running test: closedb5... ok
Running test: badtransaction1... ok
Running test: committransaction1... ok
Running test: canceltransaction1... ok
Running test: canceltransaction2... ok
Running test: valuestats2... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .glass/dbw' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: valuestats4... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .glass/dbw' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: valueweightsource2... ok
Running test: valuestats3... ok
Running test: valueweightsource3... ok
Running test: alldocspl1... ok
Running test: alldocspl2... ok
Running test: totaldoclen1... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .glass/dbw' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: exceed32bitcombineddb1... ok
Running test: modifiedpostlist1... ok
Running test: doclenaftercommit1... ok
Running test: valuesaftercommit1... ok
Running test: replacedoc8... ok
Running test: newfreelistblock1... ok
Running test: splitpostings1... ok
Running test: closedb7... ok
Running test: metadata1... ok
Running test: metadata5... ok
Running test: valuerange2... ok
Running test: possubqueries1... ok
Running test: qp_flag_wildcard1... ok
Running test: qp_flag_wildcard2... ok
Running test: qp_flag_wildcard3... ok
Running test: qp_flag_partial1... ok
Running test: qp_value_range3... ok
Running test: qp_range3... ok
Running test: qp_stopword_group1... ok
Running test: modtermwdf1... ok
Running test: bigoaddvalue1... ok
Running test: serialise_document2... ok
Running test: decvalwtsource1... ok
Running test: decvalwtsource2... ok
Running test: decvalwtsource3... ok
Running test: decvalwtsource5... ok
Running test: adddoc1... ok
Running test: adddoc3... ok
Running test: adddoc4... ok
Running test: adddoc6... ok
Running test: implicitendsession1... ok
Running test: databaseassign1... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .glass/db__' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: deldoc1... ok
Running test: deldoc2... ok
Running test: deldoc3... ok
Running test: deldoc4... ok
Running test: deldoc5... ok
Running test: deldoc6... ok
Running test: replacedoc1... ok
Running test: replacedoc2... ok
Running test: replacedoc3... ok
Running test: replacedoc4... ok
Running test: replacedoc5... ok
Running test: replacedoc6... ok
Running test: uniqueterm1... ok
Running test: allpostlist2... ok
Running test: emptyterm2... ok
Running test: phraseorneartoand1... ok
Running test: longpositionlist1... ok
Running test: consistency2... ok
Running test: nomoredocids1... ok
Running test: termtoolong1... ok
Running test: postlist7... ok
Running test: modifyvalues1... ok
Running test: qpmemoryleak1... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .glass/dbw' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: closedb4... ok
Running test: adddoc2... ok
Running test: adddoc5... ok
Running test: closedb10... ok
Running test: writeread1... ok
Running test: valuestats1... ok
Running test: valueweightsource5... SKIPPED
apitest.cc:142: Test not supported for remote backend

./apitest backend remotetcp_glass: 299 tests passed, 23 failed, 1 expected failures, 3 skipped.
Running tests with backend "chert"...
Running test: zerodocid1... ok
Running test: emptyquery1... ok
Running test: simplequery1... ok
Running test: simplequery2... ok
Running test: simplequery3... ok
Running test: msetmaxitems1... ok
Running test: expandweights1... ok
Running test: expandweights2... ok
Running test: expandweights3... ok
Running test: expandweights4... ok
Running test: expandweights5... ok
Running test: expandweights6... ok
Running test: expandweights7... ok
Running test: expandweights8... ok
Running test: expandmaxitems1... ok
Running test: boolquery1... ok
Running test: msetfirst1... ok
Running test: topercent1... ok
Running test: topercent2... ok
Running test: expandfunctor1... ok
Running test: expanddeciderfilterprefix2... ok
Running test: pctcutoff1... ok
Running test: pctcutoff2... ok
Running test: pctcutoff3... ok
Running test: cutoff1... ok
Running test: allowqterms1... ok
Running test: maxattain1... ok
Running test: reversebool1... ok
Running test: reversebool2... ok
Running test: getmterms1... ok
Running test: getmterms2... ok
Running test: repeatquery1... ok
Running test: fetchdocs1... ok
Running test: absentterm1... ok
Running test: absentterm2... ok
Running test: rset1... ok
Running test: rset2... ok
Running test: eliteset3... ok
Running test: eliteset5... ok
Running test: termlisttermfreq1... ok
Running test: qterminfo1... ok
Running test: qterminfo2... ok
Running test: msetzeroitems1... ok
Running test: matches1... ok
Running test: wqf1... ok
Running test: qlen1... ok
Running test: termlist1... ok
Running test: termlist2... ok
Running test: termlist3... ok
Running test: termlist4... ok
Running test: puncterms1... ok
Running test: spaceterms1... ok
Running test: xor1... ok
Running test: xor2... ok
Running test: getdoc1... ok
Running test: emptyop1... ok
Running test: checkatleast1... ok
Running test: checkatleast2... ok
Running test: checkatleast3... ok
Running test: allpostlist1... ok
Running test: emptyterm1... ok
Running test: scaleweight1... ok
Running test: scaleweight2... ok
Running test: bm25weight1... ok
Running test: tradweight1... ok
Running test: tradweight4... ok
Running test: dbstats1... ok
Running test: dbstats2... ok
Running test: alldocspl3... ok
Running test: msetfirst2... ok
Running test: bm25weight2... ok
Running test: unigramlmweight2... ok
Running test: tradweight2... ok
Running test: emptydb1... ok
Running test: multiargop1... ok
Running test: msetweights1... ok
Running test: itorskiptofromend1... ok
Running test: sortvalue2... ok
Running test: enquiregetquery1... ok
Running test: exactxor1... ok
Running test: getdocumentlazy1... ok
Running test: getdocumentlazy2... ok
Running test: checkatleast4... ok
Running test: multidb1... ok
Running test: allterms7... ok
Running test: nosuchterm... ok
Running test: closedb1... ok
Running test: closedb3... ok
Running test: collapsekey5... ok
Running test: termstats... ok
Running test: msetiterator1... ok
Running test: msetiterator2... ok
Running test: msetiterator3... ok
Running test: esetiterator1... ok
Running test: esetiterator2... ok
Running test: collapsekey1... ok
Running test: collapsekey2... SKIPPED
api_db.cc:883: Don't have a suitable database currently

Running test: collapsekey3... ok
Running test: collapsekey4... ok
Running test: allterms1... ok
Running test: allterms2... ok
Running test: allterms3... ok
Running test: allterms4... ok
Running test: allterms5... ok
Running test: allterms6... ok
Running test: specialterms1... ok
Running test: specialterms2... ok
Running test: postlist1... ok
Running test: postlist2... ok
Running test: postlist3... ok
Running test: postlist4... ok
Running test: postlist5... ok
Running test: postlist6... ok
Running test: collfreq1... ok
Running test: sortvalue1... ok
Running test: sortrel1... ok
Running test: matchall1... ok
Running test: matchspy5... ok
Running test: subclassablerefcount3... ok
Running test: subclassablerefcount6... ok
Running test: subclassablerefcount7... ok
Running test: synonym1... ok
Running test: synonym2... ok
Running test: synonym3... ok
Running test: synonym4... ok
Running test: opmax1... ok
Running test: valuerange1... ok
Running test: valuege1... ok
Running test: valuege2... ok
Running test: valuele1... ok
Running test: valuege4... ok
Running test: valuerange3... ok
Running test: valuerange4... ok
Running test: valuerangematchesub1... ok
Running test: consistency3... ok
Running test: pctcutoff5... ok
Running test: topercent3... ok
Running test: topercent4... ok
Running test: topercent5... ok
Running test: topercent6... ok
Running test: valueweightsource1... ok
Running test: fixedweightsource1... ok
Running test: xor3... ok
Running test: phrasealldocs1... ok
Running test: wildcard1... ok
Running test: wildcard2... ok
Running test: dualprefixwildcard1... ok
Running test: loosephrase1... ok
Running test: loosenear1... ok
Running test: complexphrase1... ok
Running test: complexnear1... ok
Running test: complexphrase2... ok
Running test: complexnear2... ok
Running test: zeroestimate1... ok
Running test: complexphrase3... ok
Running test: complexnear3... ok
Running test: notandor1... ok
Running test: boolorbug1... ok
Running test: hoistnotbug1... ok
Running test: emptynot1... ok
Running test: emptymaybe1... ok
Running test: phraseweightcheckbug1... ok
Running test: orphanedhint1... ok
Running test: wildquery1... ok
Running test: snippet1... ok
Running test: snippetstem1... ok
Running test: snippetphrase1... ok
Running test: snippet_termcover1... ok
Running test: snippet_termcover2... ok
Running test: snippet_empty... ok
Running test: snippet_start_nonspace... ok
Running test: snippet_small_zerolength... ok
Running test: snippet_empty_mset... ok
Running test: valuestream2... ok
Running test: valuestream3... ok
Running test: valuemapsource1... ok
Running test: bm25weight4... ok
Running test: bm25weight5... ok
Running test: bm25plusweight2... ok
Running test: bm25plusweight3... ok
Running test: inl2weight3... ok
Running test: ifb2weight3... ok
Running test: ineb2weight3... ok
Running test: bb2weight3... ok
Running test: bb2weight4... ok
Running test: dlhweight1... ok
Running test: pl2weight3... ok
Running test: pl2plusweight4... ok
Running test: pl2plusweight5... ok
Running test: dphweight1... ok
Running test: tfidfweight3... ok
Running test: unigramlmweight4... ok
Running test: unigramlmweight5... ok
Running test: unigramlmweight7... ok
Running test: unigramlmweight8... ok
Running test: coordweight1... ok
Running test: multidb3... ok
Running test: multidb4... ok
Running test: multidb5... ok
Running test: rsetmultidb1... ok
Running test: rsetmultidb3... ok
Running test: eliteset1... ok
Running test: eliteset2... ok
Running test: eliteset4... ok
Running test: uuid1... ok
Running test: rsetmultidb2... ok
Running test: multiexpand1... ok
Running test: valuestream1... ok
Running test: valuemapsource2... ok
Running test: decvalwtsource4... ok
Running test: estimaterounding1... ok
Running test: checkinitweight1... ok
Running test: matchdecider1... ok
Running test: matchdecider2... ok
Running test: matchdecider3... ok
Running test: consistency1... ok
Running test: userweight1... ok
Running test: valuesetmatchdecider2... ok
Running test: matchspy1... ok
Running test: checkzeromaxpartopt1... ok
Running test: externalsource4... ok
Running test: postingsourcebounds1... ok
Running test: sortfunctor1... ok
Running test: changesorter1... ok
Running test: sortfunctorempty1... ok
Running test: checkstatsweight1... ok
Running test: checkstatsweight2... ok
Running test: pctcutoff4... ok
Running test: externalsource1... ok
Running test: externalsource3... ok
Running test: changemaxweightsource1... ok
Running test: emptyvalwtsource1... ok
Running test: checkstatsweight3... ok
Running test: checkstatsweight4... ok
Running test: sortfunctor3... ok
Running test: chertdatabasenotfounderror1... ok
Running test: chertdatabaseopen1... ok
Running test: crashrecovery1... ok
Running test: lockfileumask1... ok
Running test: lockfilefd0or1... ok
Running test: lockfilealreadyopen1... ok
Running test: testlock1... ok
Running test: testlock4... ok
Running test: failedreplace1... ok
Running test: failedreplace2... ok
Running test: blocksize1... ok
Running test: readonlyparentdir1... ok
Running test: dbfilefd012... ok
Running test: cursorbug1... ok
Running test: getrevision1... ok
Running test: lazytablebug1... ok
Running test: compactmerge1... ok
Running test: compactstub1... ok
Running test: compactstub2... ok
Running test: compactstub3... ok
Running test: compactstub4... ok
Running test: compactempty1... ok
Running test: compactoldmerge1... ok
Running test: compactoldstub1... ok
Running test: compactoldstub2... ok
Running test: compactoldstub3... ok
Running test: compactoldstub4... ok
Running test: compactoldempty1... ok
Running test: compactmultichunks1... ok
Running test: compactmissingtables1... ok
Running test: compactmergesynonym1... ok
Running test: compactmultipass1... ok
Running test: compactoldmultichunks1... ok
Running test: compactoldmissingtables1... ok
Running test: compactoldmergesynonym1... ok
Running test: compactoldmultipass1... ok
Running test: compactnorenumber1... ok
Running test: compactoldnorenumber1... ok
Running test: compact1... ok
Running test: msize1... ok
Running test: msize2... ok
Running test: xordecay1... ok
Running test: ordecay1... ok
Running test: ordecay2... ok
Running test: orcheck1... ok
Running test: getuniqueterms1... ok
Running test: nopositionbug1... ok
Running test: netstats1... ok
Running test: matchspy2... ok
Running test: matchspy4... ok
Running test: valuerange5... ok
Running test: valuerange6... ok
Running test: valuerange7... ok
Running test: topercent7... ok
Running test: subdbwithoutpos1... ok
Running test: snippetmisc1... ok
Running test: snippet_cjkngrams... ok
Running test: dlhweight3... ok
Running test: dphweight3... ok
Running test: matchtimelimit1... ok
Running test: latlongpostingsource1... ok
Running test: phrasebug1... ok
Running test: metadata3... ok
Running test: metadata2... ok
Running test: metadata4... ok
Running test: stubdb1... ok
Running test: stubdb2... ok
Running test: stubdb3... ok
Running test: stubdb5... ok
Running test: stubdb9... ok
Running test: phrase3... ok
Running test: near1... ok
Running test: near2... ok
Running test: phrase1... ok
Running test: phrase2... ok
Running test: poslist1... ok
Running test: positfromtermit1... ok
Running test: poslist2... ok
Running test: poslist3... ok
Running test: poslistupdate1... ok
Running test: replicate1... ok
Running test: replicate2... ok
Running test: replicate3... ok
Running test: replicate4... ok
Running test: replicate5... SKIPPED
apitest.cc:142: Test not supported for chert backend

Running test: replicate6... ok
Running test: replicate7... ok
Running test: qp_spell1... ok
Running test: qp_spell2... ok
Running test: qp_spellwild1... ok
Running test: qp_spellpartial1... ok
Running test: qp_synonym1... ok
Running test: spell1... ok
Running test: spell2... ok
Running test: spell3... ok
Running test: spell4... ok
Running test: spell5... ok
Running test: spell6... ok
Running test: spell7... ok
Running test: spell8... ok
Running test: tg_spell1... ok
Running test: spell0... ok
Running test: qpsynonympartial1... ok
Running test: qp_synonym2... ok
Running test: qp_synonym3... ok
Running test: qp_scale1... ok
Running test: closedb5... ok
Running test: badtransaction1... ok
Running test: committransaction1... ok
Running test: canceltransaction1... ok
Running test: canceltransaction2... ok
Running test: nodocs1... ok
Running test: canceltransaction3... ok
Running test: valuestats2... ok
Running test: valuestats4... ok
Running test: valueweightsource2... ok
Running test: valuestats3... ok
Running test: valueweightsource3... ok
Running test: alldocspl1... ok
Running test: alldocspl2... ok
Running test: totaldoclen1... ok
Running test: exceed32bitcombineddb1... ok
Running test: modifiedpostlist1... ok
Running test: doclenaftercommit1... ok
Running test: valuesaftercommit1... ok
Running test: replacedoc8... ok
Running test: newfreelistblock1... ok
Running test: splitpostings1... ok
Running test: closedb7... ok
Running test: metadata1... ok
Running test: metadata5... ok
Running test: valuerange2... ok
Running test: possubqueries1... ok
Running test: qp_flag_wildcard1... ok
Running test: qp_flag_wildcard2... ok
Running test: qp_flag_wildcard3... ok
Running test: qp_flag_partial1... ok
Running test: qp_value_range3... ok
Running test: qp_range3... ok
Running test: qp_stopword_group1... ok
Running test: modtermwdf1... ok
Running test: bigoaddvalue1... ok
Running test: serialise_document2... ok
Running test: decvalwtsource1... ok
Running test: decvalwtsource2... ok
Running test: decvalwtsource3... ok
Running test: decvalwtsource5... ok
Running test: adddoc1... ok
Running test: adddoc3... ok
Running test: adddoc4... ok
Running test: adddoc6... ok
Running test: implicitendsession1... ok
Running test: databaseassign1... ok
Running test: deldoc1... ok
Running test: deldoc2... ok
Running test: deldoc3... ok
Running test: deldoc4... ok
Running test: deldoc5... ok
Running test: deldoc6... ok
Running test: replacedoc1... ok
Running test: replacedoc2... ok
Running test: replacedoc3... ok
Running test: replacedoc4... ok
Running test: replacedoc5... ok
Running test: replacedoc6... ok
Running test: uniqueterm1... ok
Running test: allpostlist2... ok
Running test: emptyterm2... ok
Running test: phraseorneartoand1... ok
Running test: longpositionlist1... ok
Running test: consistency2... ok
Running test: nomoredocids1... ok
Running test: termtoolong1... XFAIL (Chert fails to clear pending changes after InvalidArgumentError - fix too invasive): InvalidArgumentError: Key too long: length was 254 bytes, maximum length of a key is 252 bytes
Term length 245
Key too long: length was 254 bytes, maximum length of a key is 252 bytes

Running test: postlist7... ok
Running test: modifyvalues1... ok
Running test: qpmemoryleak1... SKIPPED
api_backend.cc:574: didn't manage to trigger DatabaseModifiedError

Running test: closedb4... ok
Running test: replacedoc7... ok
Running test: databasemodified1... ok
Running test: adddoc2... ok
Running test: adddoc5... ok
Running test: sortfunctor2... ok
Running test: closedb10... ok
Running test: writeread1... ok
Running test: retrylock1... ok
Running test: closedb2... ok
Running test: cursordelbug1... ok
Running test: closedb8... ok
Running test: closedb9... ok
Running test: synonymitor1... ok
Running test: valuestats1... ok
Running test: valueweightsource5... ok
./apitest backend chert: All 423 tests passed, 1 expected failures, 3 skipped.
Running tests with backend "multi_chert"...
Running test: zerodocid1... ok
Running test: emptyquery1... ok
Running test: simplequery1... ok
Running test: simplequery2... ok
Running test: simplequery3... ok
Running test: msetmaxitems1... ok
Running test: expandweights1... ok
Running test: expandweights2... ok
Running test: expandweights3... ok
Running test: expandweights4... ok
Running test: expandweights5... ok
Running test: expandweights6... ok
Running test: expandweights7... ok
Running test: expandweights8... ok
Running test: expandmaxitems1... ok
Running test: boolquery1... ok
Running test: msetfirst1... ok
Running test: topercent1... ok
Running test: topercent2... ok
Running test: expandfunctor1... ok
Running test: expanddeciderfilterprefix2... ok
Running test: pctcutoff1... ok
Running test: pctcutoff2... ok
Running test: pctcutoff3... ok
Running test: cutoff1... ok
Running test: allowqterms1... ok
Running test: maxattain1... ok
Running test: reversebool1... ok
Running test: reversebool2... ok
Running test: getmterms1... ok
Running test: getmterms2... ok
Running test: repeatquery1... ok
Running test: fetchdocs1... ok
Running test: absentterm1... ok
Running test: absentterm2... ok
Running test: rset1... ok
Running test: rset2... ok
Running test: eliteset3... ok
Running test: eliteset5... ok
Running test: termlisttermfreq1... ok
Running test: qterminfo1... ok
Running test: qterminfo2... ok
Running test: msetzeroitems1... ok
Running test: matches1... ok
Running test: wqf1... ok
Running test: qlen1... ok
Running test: termlist1... ok
Running test: termlist2... ok
Running test: termlist3... ok
Running test: termlist4... ok
Running test: puncterms1... ok
Running test: spaceterms1... ok
Running test: xor1... ok
Running test: xor2... ok
Running test: getdoc1... ok
Running test: emptyop1... ok
Running test: checkatleast1... ok
Running test: checkatleast2... ok
Running test: checkatleast3... ok
Running test: allpostlist1... ok
Running test: emptyterm1... ok
Running test: scaleweight1... ok
Running test: scaleweight2... ok
Running test: bm25weight1... ok
Running test: tradweight1... ok
Running test: tradweight4... ok
Running test: dbstats1... ok
Running test: dbstats2... ok
Running test: alldocspl3... ok
Running test: msetfirst2... ok
Running test: bm25weight2... ok
Running test: unigramlmweight2... ok
Running test: tradweight2... ok
Running test: emptydb1... ok
Running test: multiargop1... ok
Running test: msetweights1... ok
Running test: itorskiptofromend1... ok
Running test: sortvalue2... ok
Running test: enquiregetquery1... ok
Running test: exactxor1... ok
Running test: getdocumentlazy1... ok
Running test: getdocumentlazy2... ok
Running test: checkatleast4... ok
Running test: multidb1... ok
Running test: allterms7... ok
Running test: nosuchterm... ok
Running test: closedb1... ok
Running test: closedb3... ok
Running test: collapsekey5... ok
Running test: termstats... ok
Running test: msetiterator1... ok
Running test: msetiterator2... ok
Running test: msetiterator3... ok
Running test: esetiterator1... ok
Running test: esetiterator2... ok
Running test: collapsekey1... ok
Running test: collapsekey2... SKIPPED
api_db.cc:883: Don't have a suitable database currently

Running test: collapsekey3... ok
Running test: collapsekey4... ok
Running test: allterms1... ok
Running test: allterms2... ok
Running test: allterms3... ok
Running test: allterms4... ok
Running test: allterms5... ok
Running test: allterms6... ok
Running test: specialterms1... ok
Running test: specialterms2... ok
Running test: postlist1... ok
Running test: postlist2... ok
Running test: postlist3... ok
Running test: postlist4... ok
Running test: postlist5... ok
Running test: postlist6... ok
Running test: collfreq1... ok
Running test: sortvalue1... ok
Running test: sortrel1... ok
Running test: matchall1... ok
Running test: matchspy5... ok
Running test: subclassablerefcount3... ok
Running test: subclassablerefcount6... ok
Running test: subclassablerefcount7... ok
Running test: synonym1... ok
Running test: synonym2... ok
Running test: synonym3... ok
Running test: synonym4... ok
Running test: opmax1... ok
Running test: valuerange1... ok
Running test: valuege1... ok
Running test: valuege2... ok
Running test: valuele1... ok
Running test: valuege4... ok
Running test: valuerange3... ok
Running test: valuerange4... ok
Running test: valuerangematchesub1... ok
Running test: consistency3... ok
Running test: pctcutoff5... ok
Running test: topercent3... ok
Running test: topercent4... ok
Running test: topercent5... ok
Running test: topercent6... ok
Running test: valueweightsource1... ok
Running test: fixedweightsource1... ok
Running test: xor3... ok
Running test: phrasealldocs1... ok
Running test: wildcard1... SKIPPED
apitest.cc:142: Test not supported for multi backend

Running test: wildcard2... SKIPPED
apitest.cc:142: Test not supported for multi backend

Running test: dualprefixwildcard1... ok
Running test: loosephrase1... ok
Running test: loosenear1... ok
Running test: complexphrase1... ok
Running test: complexnear1... ok
Running test: complexphrase2... ok
Running test: complexnear2... ok
Running test: zeroestimate1... ok
Running test: complexphrase3... ok
Running test: complexnear3... ok
Running test: notandor1... ok
Running test: boolorbug1... ok
Running test: hoistnotbug1... ok
Running test: emptynot1... ok
Running test: emptymaybe1... ok
Running test: phraseweightcheckbug1... ok
Running test: orphanedhint1... ok
Running test: wildquery1... ok
Running test: snippet1... ok
Running test: snippetstem1... ok
Running test: snippetphrase1... ok
Running test: snippet_termcover1... ok
Running test: snippet_termcover2... ok
Running test: snippet_empty... ok
Running test: snippet_start_nonspace... ok
Running test: snippet_small_zerolength... ok
Running test: snippet_empty_mset... ok
Running test: valuestream2... ok
Running test: valuestream3... ok
Running test: valuemapsource1... ok
Running test: bm25weight4... ok
Running test: bm25weight5... ok
Running test: bm25plusweight2... ok
Running test: bm25plusweight3... ok
Running test: inl2weight3... ok
Running test: ifb2weight3... ok
Running test: ineb2weight3... ok
Running test: bb2weight3... ok
Running test: bb2weight4... ok
Running test: dlhweight1... ok
Running test: pl2weight3... ok
Running test: pl2plusweight4... ok
Running test: pl2plusweight5... ok
Running test: dphweight1... ok
Running test: tfidfweight3... ok
Running test: unigramlmweight4... ok
Running test: unigramlmweight5... ok
Running test: unigramlmweight7... ok
Running test: unigramlmweight8... ok
Running test: coordweight1... ok
Running test: matchdecider1... ok
Running test: matchdecider2... ok
Running test: matchdecider3... ok
Running test: consistency1... ok
Running test: userweight1... ok
Running test: valuesetmatchdecider2... ok
Running test: matchspy1... ok
Running test: checkzeromaxpartopt1... ok
Running test: externalsource4... ok
Running test: postingsourcebounds1... ok
Running test: sortfunctor1... ok
Running test: changesorter1... ok
Running test: sortfunctorempty1... ok
Running test: checkstatsweight1... ok
Running test: checkstatsweight2... ok
Running test: sortfunctor3... ok
Running test: metadata3... ok
Running test: metadata2... ok
Running test: metadata4... ok
Running test: elitesetmulti1... ok
Running test: elitesetmulti2... ok
Running test: elitesetmulti4... ok
Running test: postingsourceshardindex1... ok
Running test: stubdb1... ok
Running test: stubdb2... ok
Running test: stubdb3... ok
Running test: stubdb5... ok
Running test: stubdb9... ok
Running test: phrase3... ok
Running test: near1... ok
Running test: near2... ok
Running test: phrase1... ok
Running test: phrase2... ok
Running test: poslist1... ok
Running test: positfromtermit1... ok
Running test: poslist2... ok
Running test: poslist3... ok
Running test: poslistupdate1... ok
Running test: qpsynonympartial1... ok
Running test: qp_synonym2... ok
Running test: qp_synonym3... ok
Running test: qp_scale1... ok
Running test: valueweightsource2... ok
Running test: valuestats3... ok
Running test: alldocspl1... ok
Running test: alldocspl2... ok
Running test: totaldoclen1... ok
Running test: exceed32bitcombineddb1... ok
Running test: modifiedpostlist1... ok
Running test: doclenaftercommit1... ok
Running test: valuesaftercommit1... ok
Running test: replacedoc8... ok
Running test: newfreelistblock1... ok
Running test: splitpostings1... ok
Running test: closedb7... ok
Running test: metadata1... ok
Running test: metadata5... ok
Running test: valuerange2... ok
Running test: possubqueries1... ok
Running test: qp_flag_wildcard1... ok
Running test: qp_flag_wildcard2... ok
Running test: qp_flag_wildcard3... ok
Running test: qp_flag_partial1... ok
Running test: qp_value_range3... ok
Running test: qp_range3... ok
Running test: qp_stopword_group1... ok
Running test: modtermwdf1... ok
Running test: bigoaddvalue1... ok
Running test: serialise_document2... ok
Running test: decvalwtsource1... ok
Running test: decvalwtsource2... ok
Running test: decvalwtsource3... ok
Running test: decvalwtsource5... ok
Running test: adddoc1... ok
Running test: adddoc3... ok
Running test: adddoc4... ok
Running test: adddoc6... ok
Running test: implicitendsession1... ok
Running test: databaseassign1... ok
Running test: deldoc1... ok
Running test: deldoc2... ok
Running test: deldoc3... ok
Running test: deldoc4... ok
Running test: deldoc5... ok
Running test: deldoc6... ok
Running test: replacedoc1... ok
Running test: replacedoc2... ok
Running test: replacedoc3... ok
Running test: replacedoc4... ok
Running test: replacedoc5... ok
Running test: replacedoc6... ok
Running test: uniqueterm1... ok
Running test: allpostlist2... ok
Running test: emptyterm2... ok
Running test: phraseorneartoand1... ok
Running test: longpositionlist1... ok
Running test: consistency2... ok
Running test: nomoredocids1... ok
Running test: termtoolong1... XFAIL (Chert fails to clear pending changes after InvalidArgumentError - fix too invasive): InvalidArgumentError: Key too long: length was 254 bytes, maximum length of a key is 252 bytes
Term length 245
Key too long: length was 254 bytes, maximum length of a key is 252 bytes

Running test: postlist7... ok
Running test: modifyvalues1... ok
Running test: qpmemoryleak1... SKIPPED
api_backend.cc:574: didn't manage to trigger DatabaseModifiedError

Running test: closedb4... ok
Running test: replacedoc7... ok
Running test: sortfunctor2... ok
Running test: closedb10... ok
Running test: writeread1... ok
Running test: retrylock1... ok
Running test: closedb2... ok
Running test: cursordelbug1... ok
Running test: closedb9... ok
Running test: synonymitor1... ok
Running test: valuestats1... ok
Running test: valueweightsource5... ok
./apitest backend multi_chert: All 305 tests passed, 1 expected failures, 4 skipped.
Running tests with backend "remoteprog_chert"...
Running test: zerodocid1... ok
Running test: emptyquery1... ok
Running test: simplequery1... ok
Running test: simplequery2... ok
Running test: simplequery3... ok
Running test: msetmaxitems1... ok
Running test: expandweights1... ok
Running test: expandweights2... ok
Running test: expandweights3... ok
Running test: expandweights4... ok
Running test: expandweights5... ok
Running test: expandweights6... ok
Running test: expandweights7... ok
Running test: expandweights8... ok
Running test: expandmaxitems1... ok
Running test: boolquery1... ok
Running test: msetfirst1... ok
Running test: topercent1... ok
Running test: topercent2... ok
Running test: expandfunctor1... ok
Running test: expanddeciderfilterprefix2... ok
Running test: pctcutoff1... ok
Running test: pctcutoff2... ok
Running test: pctcutoff3... ok
Running test: cutoff1... ok
Running test: allowqterms1... ok
Running test: maxattain1... ok
Running test: reversebool1... ok
Running test: reversebool2... ok
Running test: getmterms1... ok
Running test: getmterms2... ok
Running test: repeatquery1... ok
Running test: fetchdocs1... ok
Running test: absentterm1... ok
Running test: absentterm2... ok
Running test: rset1... ok
Running test: rset2... ok
Running test: eliteset3... ok
Running test: eliteset5... ok
Running test: termlisttermfreq1... ok
Running test: qterminfo1... ok
Running test: qterminfo2... ok
Running test: msetzeroitems1... ok
Running test: matches1... ok
Running test: wqf1... ok
Running test: qlen1... ok
Running test: termlist1... ok
Running test: termlist2... ok
Running test: termlist3... ok
Running test: termlist4... ok
Running test: puncterms1... ok
Running test: spaceterms1... ok
Running test: xor1... ok
Running test: xor2... ok
Running test: getdoc1... ok
Running test: emptyop1... ok
Running test: checkatleast1... ok
Running test: checkatleast2... ok
Running test: checkatleast3... ok
Running test: allpostlist1... ok
Running test: emptyterm1... ok
Running test: scaleweight1... ok
Running test: scaleweight2... ok
Running test: bm25weight1... ok
Running test: tradweight1... ok
Running test: tradweight4... ok
Running test: dbstats1... ok
Running test: dbstats2... ok
Running test: alldocspl3... ok
Running test: msetfirst2... ok
Running test: bm25weight2... ok
Running test: unigramlmweight2... ok
Running test: tradweight2... ok
Running test: emptydb1... ok
Running test: multiargop1... ok
Running test: msetweights1... ok
Running test: itorskiptofromend1... ok
Running test: sortvalue2... ok
Running test: enquiregetquery1... ok
Running test: exactxor1... ok
Running test: getdocumentlazy1... ok
Running test: getdocumentlazy2... ok
Running test: checkatleast4... ok
Running test: multidb1... ok
Running test: allterms7... ok
Running test: nosuchterm... ok
Running test: closedb1... ok
Running test: closedb3... ok
Running test: collapsekey5... ok
Running test: termstats... ok
Running test: msetiterator1... ok
Running test: msetiterator2... ok
Running test: msetiterator3... ok
Running test: esetiterator1... ok
Running test: esetiterator2... ok
Running test: collapsekey1... ok
Running test: collapsekey2... SKIPPED
api_db.cc:883: Don't have a suitable database currently

Running test: collapsekey3... ok
Running test: collapsekey4... ok
Running test: allterms1... ok
Running test: allterms2... ok
Running test: allterms3... ok
Running test: allterms4... ok
Running test: allterms5... ok
Running test: allterms6... ok
Running test: specialterms1... ok
Running test: specialterms2... ok
Running test: postlist1... ok
Running test: postlist2... ok
Running test: postlist3... ok
Running test: postlist4... ok
Running test: postlist5... ok
Running test: postlist6... ok
Running test: collfreq1... ok
Running test: sortvalue1... ok
Running test: sortrel1... ok
Running test: matchall1... ok
Running test: matchspy5... ok
Running test: subclassablerefcount3... ok
Running test: subclassablerefcount6... ok
Running test: subclassablerefcount7... ok
Running test: synonym1... ok
Running test: synonym2... ok
Running test: synonym3... ok
Running test: synonym4... ok
Running test: opmax1... ok
Running test: valuerange1... ok
Running test: valuege1... ok
Running test: valuege2... ok
Running test: valuele1... ok
Running test: valuege4... ok
Running test: valuerange3... ok
Running test: valuerange4... ok
Running test: valuerangematchesub1... ok
Running test: consistency3... ok
Running test: pctcutoff5... ok
Running test: topercent3... ok
Running test: topercent4... ok
Running test: topercent5... ok
Running test: topercent6... ok
Running test: valueweightsource1... ok
Running test: fixedweightsource1... ok
Running test: xor3... ok
Running test: phrasealldocs1... ok
Running test: wildcard1... ok
Running test: wildcard2... ok
Running test: dualprefixwildcard1... ok
Running test: loosephrase1... ok
Running test: loosenear1... ok
Running test: complexphrase1... ok
Running test: complexnear1... ok
Running test: complexphrase2... ok
Running test: complexnear2... ok
Running test: zeroestimate1... ok
Running test: complexphrase3... ok
Running test: complexnear3... ok
Running test: notandor1... ok
Running test: boolorbug1... ok
Running test: hoistnotbug1... ok
Running test: emptynot1... ok
Running test: emptymaybe1... ok
Running test: phraseweightcheckbug1... ok
Running test: orphanedhint1... ok
Running test: wildquery1... ok
Running test: snippet1... ok
Running test: snippetstem1... ok
Running test: snippetphrase1... ok
Running test: snippet_termcover1... ok
Running test: snippet_termcover2... ok
Running test: snippet_empty... ok
Running test: snippet_start_nonspace... ok
Running test: snippet_small_zerolength... ok
Running test: snippet_empty_mset... ok
Running test: valuestream2... ok
Running test: valuestream3... ok
Running test: valuemapsource1... ok
Running test: bm25weight4... ok
Running test: bm25weight5... ok
Running test: bm25plusweight2... ok
Running test: bm25plusweight3... ok
Running test: inl2weight3... ok
Running test: ifb2weight3... ok
Running test: ineb2weight3... ok
Running test: bb2weight3... ok
Running test: bb2weight4... ok
Running test: dlhweight1... ok
Running test: pl2weight3... ok
Running test: pl2plusweight4... ok
Running test: pl2plusweight5... ok
Running test: dphweight1... ok
Running test: tfidfweight3... ok
Running test: unigramlmweight4... ok
Running test: unigramlmweight5... ok
Running test: unigramlmweight7... ok
Running test: unigramlmweight8... ok
Running test: coordweight1... ok
Running test: multidb3... ok
Running test: multidb4... ok
Running test: multidb5... ok
Running test: rsetmultidb1... ok
Running test: rsetmultidb3... ok
Running test: eliteset1... ok
Running test: eliteset2... ok
Running test: eliteset4... ok
Running test: uuid1... ok
Running test: rsetmultidb2... ok
Running test: multiexpand1... ok
Running test: valuestream1... ok
Running test: valuemapsource2... ok
Running test: decvalwtsource4... ok
Running test: metadata3... ok
Running test: metadata2... ok
Running test: metadata4... ok
Running test: phrase3... ok
Running test: near1... ok
Running test: near2... ok
Running test: phrase1... ok
Running test: phrase2... ok
Running test: poslist1... ok
Running test: positfromtermit1... SKIPPED
api_posdb.cc:617: TermList::positionlist_count() not yet implemented for this backend

Running test: poslist2... ok
Running test: poslist3... ok
Running test: poslistupdate1... ok
Running test: matchdecider4... ok
Running test: closedb6... ok
Running test: keepalive1... ok
Running test: externalsource2... ok
Running test: sortfunctorremote1... ok
Running test: protocolbug1... ok
Running test: spell0... ok
Running test: closedb5... ok
Running test: badtransaction1... ok
Running test: committransaction1... ok
Running test: canceltransaction1... ok
Running test: canceltransaction2... ok
Running test: valuestats2... ok
Running test: valuestats4... ok
Running test: valueweightsource2... ok
Running test: valuestats3... ok
Running test: valueweightsource3... ok
Running test: alldocspl1... ok
Running test: alldocspl2... ok
Running test: totaldoclen1... ok
Running test: exceed32bitcombineddb1... ok
Running test: modifiedpostlist1... ok
Running test: doclenaftercommit1... ok
Running test: valuesaftercommit1... ok
Running test: replacedoc8... ok
Running test: newfreelistblock1... ok
Running test: splitpostings1... ok
Running test: closedb7... ok
Running test: metadata1... ok
Running test: metadata5... ok
Running test: valuerange2... ok
Running test: possubqueries1... ok
Running test: qp_flag_wildcard1... ok
Running test: qp_flag_wildcard2... ok
Running test: qp_flag_wildcard3... ok
Running test: qp_flag_partial1... ok
Running test: qp_value_range3... ok
Running test: qp_range3... ok
Running test: qp_stopword_group1... ok
Running test: modtermwdf1... ok
Running test: bigoaddvalue1... ok
Running test: serialise_document2... ok
Running test: decvalwtsource1... ok
Running test: decvalwtsource2... ok
Running test: decvalwtsource3... ok
Running test: decvalwtsource5... ok
Running test: adddoc1... ok
Running test: adddoc3... ok
Running test: adddoc4... ok
Running test: adddoc6... ok
Running test: implicitendsession1... ok
Running test: databaseassign1... ok
Running test: deldoc1... ok
Running test: deldoc2... ok
Running test: deldoc3... ok
Running test: deldoc4... ok
Running test: deldoc5... ok
Running test: deldoc6... ok
Running test: replacedoc1... ok
Running test: replacedoc2... ok
Running test: replacedoc3... ok
Running test: replacedoc4... ok
Running test: replacedoc5... ok
Running test: replacedoc6... ok
Running test: uniqueterm1... ok
Running test: allpostlist2... ok
Running test: emptyterm2... ok
Running test: phraseorneartoand1... ok
Running test: longpositionlist1... ok
Running test: consistency2... ok
Running test: nomoredocids1... ok
Running test: termtoolong1... XFAIL (Chert fails to clear pending changes after InvalidArgumentError - fix too invasive): InvalidArgumentError: REMOTE:Key too long: length was 254 bytes, maximum length of a key is 252 bytes (context: remote:prog(../bin/xapian-progsrv -t300000 --writable .chert/dbw))
Term length 245
REMOTE:Key too long: length was 254 bytes, maximum length of a key is 252 bytes

Running test: postlist7... ok
Running test: modifyvalues1... ok
Running test: qpmemoryleak1... SKIPPED
api_backend.cc:574: didn't manage to trigger DatabaseModifiedError

Running test: closedb4... ok
Running test: adddoc2... ok
Running test: adddoc5... ok
Running test: closedb10... ok
Running test: writeread1... ok
Running test: valuestats1... ok
Running test: valueweightsource5... SKIPPED
apitest.cc:142: Test not supported for remote backend

./apitest backend remoteprog_chert: All 300 tests passed, 1 expected failures, 4 skipped.
Running tests with backend "remotetcp_chert"...
Running test: zerodocid1... ok
Running test: emptyquery1... ok
Running test: simplequery1... ok
Running test: simplequery2... ok
Running test: simplequery3... ok
Running test: msetmaxitems1... ok
Running test: expandweights1... ok
Running test: expandweights2... ok
Running test: expandweights3... ok
Running test: expandweights4... ok
Running test: expandweights5... ok
Running test: expandweights6... ok
Running test: expandweights7... ok
Running test: expandweights8... ok
Running test: expandmaxitems1... ok
Running test: boolquery1... ok
Running test: msetfirst1... ok
Running test: topercent1... ok
Running test: topercent2... ok
Running test: expandfunctor1... ok
Running test: expanddeciderfilterprefix2... ok
Running test: pctcutoff1... ok
Running test: pctcutoff2... ok
Running test: pctcutoff3... ok
Running test: cutoff1... ok
Running test: allowqterms1... ok
Running test: maxattain1... ok
Running test: reversebool1... ok
Running test: reversebool2... ok
Running test: getmterms1... ok
Running test: getmterms2... ok
Running test: repeatquery1... ok
Running test: fetchdocs1... ok
Running test: absentterm1... ok
Running test: absentterm2... ok
Running test: rset1... ok
Running test: rset2... ok
Running test: eliteset3... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .chert/db__apitest_simpledata' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: eliteset5... ok
Running test: termlisttermfreq1... ok
Running test: qterminfo1... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .chert/db__apitest_simpledata' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: qterminfo2... ok
Running test: msetzeroitems1... ok
Running test: matches1... ok
Running test: wqf1... ok
Running test: qlen1... ok
Running test: termlist1... ok
Running test: termlist2... ok
Running test: termlist3... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .chert/db__apitest_onedoc' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: termlist4... ok
Running test: puncterms1... ok
Running test: spaceterms1... ok
Running test: xor1... ok
Running test: xor2... ok
Running test: getdoc1... ok
Running test: emptyop1... ok
Running test: checkatleast1... ok
Running test: checkatleast2... ok
Running test: checkatleast3... ok
Running test: allpostlist1... ok
Running test: emptyterm1... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .chert/db__apitest_onedoc' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: scaleweight1... ok
Running test: scaleweight2... ok
Running test: bm25weight1... ok
Running test: tradweight1... ok
Running test: tradweight4... ok
Running test: dbstats1... ok
Running test: dbstats2... ok
Running test: alldocspl3... ok
Running test: msetfirst2... ok
Running test: bm25weight2... ok
Running test: unigramlmweight2... ok
Running test: tradweight2... ok
Running test: emptydb1... ok
Running test: multiargop1... ok
Running test: msetweights1... ok
Running test: itorskiptofromend1... ok
Running test: sortvalue2... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .chert/db__apitest_simpledata2' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: enquiregetquery1... ok
Running test: exactxor1... ok
Running test: getdocumentlazy1... ok
Running test: getdocumentlazy2... ok
Running test: checkatleast4... ok
Running test: multidb1... ok
Running test: allterms7... ok
Running test: nosuchterm... ok
Running test: closedb1... ok
Running test: closedb3... ok
Running test: collapsekey5... ok
Running test: termstats... ok
Running test: msetiterator1... ok
Running test: msetiterator2... ok
Running test: msetiterator3... ok
Running test: esetiterator1... ok
Running test: esetiterator2... ok
Running test: collapsekey1... ok
Running test: collapsekey2... SKIPPED
api_db.cc:883: Don't have a suitable database currently

Running test: collapsekey3... ok
Running test: collapsekey4... ok
Running test: allterms1... ok
Running test: allterms2... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .chert/db__apitest_allterms2' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: allterms3... ok
Running test: allterms4... ok
Running test: allterms5... ok
Running test: allterms6... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .chert/db__apitest_allterms2' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: specialterms1... ok
Running test: specialterms2... ok
Running test: postlist1... ok
Running test: postlist2... ok
Running test: postlist3... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .chert/db__apitest_simpledata' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: postlist4... ok
Running test: postlist5... ok
Running test: postlist6... ok
Running test: collfreq1... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .chert/db__apitest_simpledata__apitest_simpledata2' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: sortvalue1... ok
Running test: sortrel1... ok
Running test: matchall1... ok
Running test: matchspy5... ok
Running test: subclassablerefcount3... ok
Running test: subclassablerefcount6... ok
Running test: subclassablerefcount7... ok
Running test: synonym1... ok
Running test: synonym2... ok
Running test: synonym3... ok
Running test: synonym4... ok
Running test: opmax1... ok
Running test: valuerange1... ok
Running test: valuege1... ok
Running test: valuege2... ok
Running test: valuele1... ok
Running test: valuege4... ok
Running test: valuerange3... ok
Running test: valuerange4... ok
Running test: valuerangematchesub1... ok
Running test: consistency3... ok
Running test: pctcutoff5... ok
Running test: topercent3... ok
Running test: topercent4... ok
Running test: topercent5... ok
Running test: topercent6... ok
Running test: valueweightsource1... ok
Running test: fixedweightsource1... ok
Running test: xor3... ok
Running test: phrasealldocs1... ok
Running test: wildcard1... ok
Running test: wildcard2... ok
Running test: dualprefixwildcard1... ok
Running test: loosephrase1... ok
Running test: loosenear1... ok
Running test: complexphrase1... ok
Running test: complexnear1... ok
Running test: complexphrase2... ok
Running test: complexnear2... ok
Running test: zeroestimate1... ok
Running test: complexphrase3... ok
Running test: complexnear3... ok
Running test: notandor1... ok
Running test: boolorbug1... ok
Running test: hoistnotbug1... ok
Running test: emptynot1... ok
Running test: emptymaybe1... ok
Running test: phraseweightcheckbug1... ok
Running test: orphanedhint1... ok
Running test: wildquery1... ok
Running test: snippet1... ok
Running test: snippetstem1... ok
Running test: snippetphrase1... ok
Running test: snippet_termcover1... ok
Running test: snippet_termcover2... ok
Running test: snippet_empty... ok
Running test: snippet_start_nonspace... ok
Running test: snippet_small_zerolength... ok
Running test: snippet_empty_mset... ok
Running test: valuestream2... ok
Running test: valuestream3... ok
Running test: valuemapsource1... ok
Running test: bm25weight4... ok
Running test: bm25weight5... ok
Running test: bm25plusweight2... ok
Running test: bm25plusweight3... ok
Running test: inl2weight3... ok
Running test: ifb2weight3... ok
Running test: ineb2weight3... ok
Running test: bb2weight3... ok
Running test: bb2weight4... ok
Running test: dlhweight1... ok
Running test: pl2weight3... ok
Running test: pl2plusweight4... ok
Running test: pl2plusweight5... ok
Running test: dphweight1... ok
Running test: tfidfweight3... ok
Running test: unigramlmweight4... ok
Running test: unigramlmweight5... ok
Running test: unigramlmweight7... ok
Running test: unigramlmweight8... ok
Running test: coordweight1... ok
Running test: multidb3... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .chert/db__apitest_simpledata2' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: multidb4... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .chert/db__apitest_simpledata2' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: multidb5... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .chert/db__apitest_simpledata2' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: rsetmultidb1... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .chert/db__apitest_rset' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: rsetmultidb3... ok
Running test: eliteset1... ok
Running test: eliteset2... ok
Running test: eliteset4... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .chert/db__apitest_simpledata' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: uuid1... ok
Running test: rsetmultidb2... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .chert/db__apitest_rset' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: multiexpand1... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .chert/db__apitest_simpledata' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: valuestream1... ok
Running test: valuemapsource2... ok
Running test: decvalwtsource4... ok
Running test: metadata3... ok
Running test: metadata2... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .chert/dbw' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: metadata4... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .chert/dbw' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: phrase3... ok
Running test: near1... ok
Running test: near2... ok
Running test: phrase1... ok
Running test: phrase2... ok
Running test: poslist1... ok
Running test: positfromtermit1... SKIPPED
api_posdb.cc:617: TermList::positionlist_count() not yet implemented for this backend

Running test: poslist2... ok
Running test: poslist3... ok
Running test: poslistupdate1... ok
Running test: matchdecider4... ok
Running test: closedb6... ok
Running test: keepalive1... ok
Running test: externalsource2... ok
Running test: sortfunctorremote1... ok
Running test: protocolbug1... ok
Running test: spell0... ok
Running test: closedb5... ok
Running test: badtransaction1... ok
Running test: committransaction1... ok
Running test: canceltransaction1... ok
Running test: canceltransaction2... ok
Running test: valuestats2... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .chert/dbw' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: valuestats4... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .chert/dbw' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: valueweightsource2... ok
Running test: valuestats3... ok
Running test: valueweightsource3... ok
Running test: alldocspl1... ok
Running test: alldocspl2... ok
Running test: totaldoclen1... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .chert/dbw' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: exceed32bitcombineddb1... ok
Running test: modifiedpostlist1... ok
Running test: doclenaftercommit1... ok
Running test: valuesaftercommit1... ok
Running test: replacedoc8... ok
Running test: newfreelistblock1... ok
Running test: splitpostings1... ok
Running test: closedb7... ok
Running test: metadata1... ok
Running test: metadata5... ok
Running test: valuerange2... ok
Running test: possubqueries1... ok
Running test: qp_flag_wildcard1... ok
Running test: qp_flag_wildcard2... ok
Running test: qp_flag_wildcard3... ok
Running test: qp_flag_partial1... ok
Running test: qp_value_range3... ok
Running test: qp_range3... ok
Running test: qp_stopword_group1... ok
Running test: modtermwdf1... ok
Running test: bigoaddvalue1... ok
Running test: serialise_document2... ok
Running test: decvalwtsource1... ok
Running test: decvalwtsource2... ok
Running test: decvalwtsource3... ok
Running test: decvalwtsource5... ok
Running test: adddoc1... ok
Running test: adddoc3... ok
Running test: adddoc4... ok
Running test: adddoc6... ok
Running test: implicitendsession1... ok
Running test: databaseassign1... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .chert/db__' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: deldoc1... ok
Running test: deldoc2... ok
Running test: deldoc3... ok
Running test: deldoc4... ok
Running test: deldoc5... ok
Running test: deldoc6... ok
Running test: replacedoc1... ok
Running test: replacedoc2... ok
Running test: replacedoc3... ok
Running test: replacedoc4... ok
Running test: replacedoc5... ok
Running test: replacedoc6... ok
Running test: uniqueterm1... ok
Running test: allpostlist2... ok
Running test: emptyterm2... ok
Running test: phraseorneartoand1... ok
Running test: longpositionlist1... ok
Running test: consistency2... ok
Running test: nomoredocids1... ok
Running test: termtoolong1... XFAIL (Chert fails to clear pending changes after InvalidArgumentError - fix too invasive): InvalidArgumentError: REMOTE:Key too long: length was 254 bytes, maximum length of a key is 252 bytes (context: remote:tcp(127.0.0.1:1239))
Term length 245
REMOTE:Key too long: length was 254 bytes, maximum length of a key is 252 bytes

Running test: postlist7... ok
Running test: modifyvalues1... ok
Running test: qpmemoryleak1... FAIL: EXCEPTION std::string Failed to get 'Listening...' from command '../bin/xapian-tcpsrv --one-shot --interface 127.0.0.1 --port 1239 -t300000 .chert/dbw' (output: Starting server on host 127.0.0.1, port 1239
NetworkError: bind failed (No such file or directory)
)
Running test: closedb4... ok
Running test: adddoc2... ok
Running test: adddoc5... ok
Running test: closedb10... ok
Running test: writeread1... ok
Running test: valuestats1... ok
Running test: valueweightsource5... SKIPPED
apitest.cc:142: Test not supported for remote backend

./apitest backend remotetcp_chert: 278 tests passed, 23 failed, 1 expected failures, 3 skipped.
./apitest total: 4012 tests passed, 46 failed, 9 expected failures, 45 skipped.
FAIL: apitest
Running test: exception1... ok
Running test: refcnt1... ok
Running test: refcnt2... ok
Running test: autoptr1... ok
Running test: stringcomp1... ok
Running test: temporarydtor1... ok
Running test: pack_uint_preserving_sort1... ok
Running test: pack_uint_preserving_sort2... ok
Running test: chartype1... ok
PASS: internaltest
The random seed is 42
Please report the seed when reporting a test failure.
Running tests with arabic stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: arabic/voc.txt not found

Running tests with armenian stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: armenian/voc.txt not found

Running tests with basque stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: basque/voc.txt not found

Running tests with catalan stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: catalan/voc.txt not found

Running tests with danish stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: danish/voc.txt not found

Running tests with dutch stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: dutch/voc.txt not found

Running tests with earlyenglish stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: earlyenglish/voc.txt not found

Running tests with english stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: english/voc.txt not found

Running tests with finnish stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: finnish/voc.txt not found

Running tests with french stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: french/voc.txt not found

Running tests with german stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: german/voc.txt not found

Running tests with german2 stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: german2/voc.txt not found

Running tests with hungarian stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: hungarian/voc.txt not found

Running tests with indonesian stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: indonesian/voc.txt not found

Running tests with irish stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: irish/voc.txt not found

Running tests with italian stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: italian/voc.txt not found

Running tests with kraaij_pohlmann stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: kraaij_pohlmann/voc.txt not found

Running tests with lithuanian stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: lithuanian/voc.txt not found

Running tests with lovins stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: lovins/voc.txt not found

Running tests with nepali stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: nepali/voc.txt not found

Running tests with norwegian stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: norwegian/voc.txt not found

Running tests with porter stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: porter/voc.txt not found

Running tests with portuguese stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: portuguese/voc.txt not found

Running tests with romanian stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: romanian/voc.txt not found

Running tests with russian stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: russian/voc.txt not found

Running tests with spanish stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: spanish/voc.txt not found

Running tests with swedish stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: swedish/voc.txt not found

Running tests with tamil stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: tamil/voc.txt not found

Running tests with turkish stemmer...
Running test: stemrandom... ok
Running test: stemjunk... ok
Running test: stemdict... SKIPPED
stemtest.cc:121: turkish/voc.txt not found

PASS: stemtest
Running test: simple_exceptions_work1... ok
Running test: class_exceptions_work1... ok
Running test: resolverelativepath1... ok
Running test: serialisedouble1... ok
Running test: serialiselength1... ok
Running test: serialiselength2... ok
Running test: serialiseerror1... ok
Running test: log2... ok
Running test: sortableserialise1... ok
Running test: tostring1... ok
Running test: strbool1... ok
Running test: closefrom1... ok
Running test: uuid1... ok
Running test: movesupport1... ok
Running test: addoverflows1... ok
Running test: suboverflows1... ok
Running test: muloverflows1... ok
Running test: parseunsigned1... ok
Running test: parsesigned1... ok
PASS: unittest
========================================
1 of 4 tests failed
Please report to https://xapian.org/bugs
========================================
make[4]: *** [Makefile:1075: check-TESTS] Error 1
make[4]: Leaving directory '/home/tkloczko/rpmbuild/BUILD/xapian-core-1.4.22/tests'
make[3]: *** [Makefile:1201: check-am] Error 2
make[2]: *** [Makefile:1203: check] Error 2
make[1]: *** [Makefile:3511: check-recursive] Error 1
make: *** [Makefile:3807: check] Error 2

comment:17 by Olly Betts, 17 months ago

Resolution: worksforme
Status: closedreopened
Summary: 1.4.18: test suite i failing and runs foreverbind() fails with ENOENT running remotetcp tests

It seems you're getting a different problem now - your original report was that the test suite ran forever, but the new log shows it completing.

The new error messages don't make much sense to me though as NetworkError: bind failed (No such file or directory) is saying we get ENOENT calling bind().

I see man bind documents "ENOENT A component in the directory prefix of the socket pathname does not exist", but we're testing remotetcp here so the socket in question is a TCP socket which doesn't have a pathname.

Is there anything special happening with syscall handling here? Some sort of sandboxing or something like that.

comment:18 by Olly Betts, 16 months ago

Resolution: worksforme
Status: reopenedclosed

it should be possible to reporoduce that on Fedora rawhide.

We have a Fedora build in CI now, so I tried adjusting that to test on rawhide and it passes, including successfully running all the tests which fail for you:

https://github.com/xapian/xapian/actions/runs/5721184356/job/15502622744

That's testing the RELEASE/1.4 branch which has some changes on top of 1.4.22, but nothing that seems relevant here.

The ENOENT you're getting from bind() still doesn't make much sense to me, and I wonder if you're using some sort of sandboxing for your builds which is blocking the bind() call in this way. Pretty much a wild guess though.

There's really nothing more we can do here without additional information but there's been no response for 6 weeks so I'm again closing as "worksforme". I'm still happy to work with you to resolve your problem, but if you don't respond we're not going to make progress. I'd suggest you try to reproduce on Fedora rawhide, or else point me at a docker container image for your distro which I can point our CI at.

Note: See TracTickets for help on using tickets.