Opened 15 years ago
Closed 15 years ago
#440 closed defect (fixed)
Compact tests fail on Win32 for Flint database
Reported by: | Charlie Hull | Owned by: | Olly Betts |
---|---|---|---|
Priority: | normal | Milestone: | 1.0.18 |
Component: | Test Suite | Version: | 1.0.17 |
Severity: | normal | Keywords: | |
Cc: | Blocked By: | ||
Blocking: | Operating System: | Microsoft Windows |
Description (last modified by )
Full test log attached. No other tests fail (i.e. on the other databases)
Running test: compactnorenumber1...The system cannot find the path specified. DatabaseOpeningError: Couldn't detect type of database Running test: compactmerge1...The system cannot find the path specified. DatabaseOpeningError: Couldn't detect type of database Running test: compactmultichunks1...The system cannot find the path specified. DatabaseOpeningError: Couldn't detect type of database
Attachments (2)
Change History (11)
by , 15 years ago
Attachment: | test_fail.txt added |
---|
comment:1 by , 15 years ago
It's probably a problem with the .exe extension. eg, in api_compact.cc line 118 we have:
string cmd = "../bin/xapian-compact >/dev/null 2>&1 --no-renumber ";
Try adding a .exe to that, and see if it works.
We'll probably need to do something a bit more clever to find the paths.
by , 15 years ago
Attachment: | patch1.patch added |
---|
Patch to make xapian-compact tests work on Windows
comment:3 by , 15 years ago
Description: | modified (diff) |
---|---|
Milestone: | 1.1.4 → 1.0.18 |
Lack of .exe
isn't an issue - you definitely can run binaries without an explicit extension.
Added a new compatibility wrapper for sys/wait.h (so we can manage the WEXITSTATUS replacement in a a single place) in r13936, and patched api_compact.cc in r13937.
I reused the XAPIAN_BIN_PATH define we already had rather than duplicating that knowledge here, and I also redirected stderr to nul (with 2>nul
which I believe is the right rune). Can you test current trunk?
Needs backporting, so updating milestone.
comment:4 by , 15 years ago
Trunk builds, but unfortunately xapian-compact is crashing when used during test "compactnorenumber1". The following command line is used:
xapian-compact --no-renumber .flint/dbcompactnorenumber1a .flint/dbcompactnorenumber1c .flint/dbwcompactnorenumberout
and it's causing a problem at line 388 of xapian-compact.cc as 'vector subscript out of range'. I have a debug build in the Visual C++ 2008 GUI and the debugger reports:
- j,n are zero
- used_ranges contains two pairs of ints (5, 1027 and 1028, 1040)
- used_ranges_ is empty
Not at all sure what's going on here!
comment:5 by , 15 years ago
Apologies, Trac has eaten some of the formatting above.
xapian-compact --no-renumber .flint/db__compactnorenumber1a .flint/db__compactnorenumber1c .flint/dbw__compactnorenumberout
is the correct command line used.
comment:6 by , 15 years ago
OK, this issue should be fixed by r13954. That code is new on trunk, so nothing to backport.
comment:8 by , 15 years ago
OK, backported to 1.0 branch in r13962.
Leaving ticket open until this has actually been tested.
comment:9 by , 15 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Tested on the 1.0 branch, closed.
Test log