1 Mon May 6 16:04:37 2002 James Aylett <tartarus@users.sourceforge.net>
3 * Distribution fixes: make clean should now clear up all
6 Mon May 6 14:42:46 2002 James Aylett <tartarus@users.sourceforge.net>
8 * Don't include dlfcn.h since we don't use it (and doesn't exist
9 on some target platforms).
11 Mon May 6 14:07:24 2002 James Aylett <tartarus@users.sourceforge.net>
13 * Minor documentation corrections.
15 Fri May 03 18:14:14 BST 2002 Olly Betts <olly@survex.com>
17 * Changed autoconf/automake project name to xapian-core, and updated
18 the documentation to reflect this.
20 * Disabled the bindings from being included in distribution tarballs.
22 Fri May 03 18:13:43 BST 2002 Olly Betts <olly@survex.com>
26 Fri May 3 18:02:06 BST 2002 James Aylett <tartarus@users.sourceforge.net>
28 * Overloading ambiguity resolutions for linux/alpha build on CF
30 Fri May 03 17:13:36 BST 2002 Olly Betts <olly@survex.com>
32 * buildall: Don't run configure or make; removed --no-make and --quiet.
34 Fri May 3 16:52:01 BST 2002 James Aylett <tartarus@users.sourceforge.net>
36 * tests/testdata/etext.txt needs to be included in the distribution
38 Fri May 03 16:18:38 BST 2002 Olly Betts <olly@survex.com>
40 * Removed OmValue in favour of simply using a string (analogous to
41 recent OmData change).
43 Fri May 03 14:52:04 BST 2002 Olly Betts <olly@survex.com>
45 * Removed unused om_docname typedef.
47 Fri May 03 14:42:31 BST 2002 Olly Betts <olly@survex.com>
49 * Terminology change - a "key" (in the OmKey sense) is now a "value".
51 Fri May 3 14:31:57 BST 2002 James Aylett <tartarus@users.sourceforge.net>
53 * Fixed up todo list and HTML generation script to cope with
54 items without an assigned priority.
56 Fri May 03 14:29:58 BST 2002 Olly Betts <olly@survex.com>
58 * It's HACKING (not INSTALL) that has details of developer tools.
60 Thu May 02 15:57:48 BST 2002 Olly Betts <olly@survex.com>
62 * Removed OmData - just return and take a string instead.
64 Thu May 02 14:40:21 BST 2002 Olly Betts <olly@survex.com>
66 * docs/.cvsignore: updated.
68 Thu May 02 14:38:36 BST 2002 Olly Betts <olly@survex.com>
70 * Removed assorted references to pthread locking; updated HACKING.
72 Thu May 02 14:15:47 BST 2002 Olly Betts <olly@survex.com>
74 * Stripped out OmBatchEnquire stuff, as it's unlikely to get sorted
75 out any time soon, and it can be extracted from CVS when someone
78 Thu May 02 13:50:04 BST 2002 Olly Betts <olly@survex.com>
80 * Check for bison >= 1.35 in buildall.
82 Wed May 01 17:39:57 BST 2002 Olly Betts <olly@survex.com>
84 * Removed lingering references to Omsee and OpenMuscat.
86 Wed May 01 16:34:13 BST 2002 Olly Betts <olly@survex.com>
88 * Removed unused methods from NetClient (read_data and write_data).
90 Wed May 01 14:01:12 BST 2002 Olly Betts <olly@survex.com>
92 * Added test consistency1 to check matcher optimisations don't
93 result in inconsistent results (i.e. that same matches and
94 weights are returned regardless of size of mset asked for).
96 Wed May 01 11:48:10 BST 2002 Olly Betts <olly@survex.com>
98 * Fixed mismatched tags in todo.xml.
100 Wed May 01 11:46:42 BST 2002 Olly Betts <olly@survex.com>
104 Wed May 01 11:40:47 BST 2002 Olly Betts <olly@survex.com>
106 * Corrected configure warning message - it's XML::Parser not XML.
108 Wed May 01 11:34:49 BST 2002 Olly Betts <olly@survex.com>
110 * Tweaks to get queryparser building cleanly.
112 Tue Apr 30 17:44:48 BST 2002 Olly Betts <olly@survex.com>
114 * Updated query parser in extra from the updated one in omega,
115 and fettled it to cope better with multiple instantiations
116 (though it's a long way from being reentrant at the moment).
118 Tue Apr 30 11:03:44 BST 2002 Olly Betts <olly@survex.com>
122 Mon Apr 29 19:28:04 BST 2002 Olly Betts <olly@survex.com>
124 * More string.c_str() tidying.
126 Mon Apr 29 17:41:33 BST 2002 Olly Betts <olly@survex.com>
128 * Tidied up some uses of string.c_str().
130 * Cleaned up todo list.
132 Mon Apr 29 16:08:21 BST 2002 Olly Betts <olly@survex.com>
134 * Updated buildall to check various tools have the required version
137 Mon Apr 29 15:58:57 BST 2002 Olly Betts <olly@survex.com>
139 * Tweaked use of HAVE_STREAMBUF
141 Fri Apr 26 14:41:09 BST 2002 Sam Liddicott <sam@ananova.com>
143 * Swig is now modified so it can build config.m4 and Makefile.in
144 for php modules so I removed these from bindings/php4
146 Tue Apr 23 18:21:03 BST 2002 Olly Betts <olly@survex.com>
148 * Tried compiling with GCC 3.1 prerelease snapshot and fixed various
149 STL-related warnings (mostly uses of istrstream).
151 * Fixed usage of AM_CFLAGS and AM_CXXFLAGS.
153 Tue Apr 23 15:48:36 BST 2002 Olly Betts <olly@survex.com>
155 * Updated buildall (and had to tweak it again, sigh).
157 Tue Apr 23 14:21:01 BST 2002 Sam Liddicott <sam@ananova.com>
159 * Added typemap conversion to generate OmSettings from php hash
160 * Changed order of classes in interface file
162 Tue Apr 23 14:20:05 BST 2002 Olly Betts <olly@survex.com>
164 * Revamped xapian-config and xapian.m4. Important change - it's now
165 "xapian-config --cxxflags" and XAPIAN_CXXFLAGS, not --cflags and
168 Mon Apr 22 17:58:56 BST 2002 Olly Betts <olly@survex.com>
170 * Removed leak checker.
172 Mon Apr 22 13:40:01 BST 2002 Olly Betts <olly@survex.com>
176 Mon Apr 22 13:11:32 BST 2002 Olly Betts <olly@survex.com>
178 * Write debug log using unbuffered IO and O_APPEND which should prevent
179 the log file becoming garbled when used from applications which use
180 Xapian objects in multiple threads.
182 Mon Apr 22 12:19:18 BST 2002 Olly Betts <olly@survex.com>
184 * Updated copyright notices for last change.
186 Mon Apr 22 11:20:28 BST 2002 Olly Betts <olly@survex.com>
188 * Removed thread locks.
190 Fri Apr 19 17:38:23 BST 2002 Olly Betts <olly@survex.com>
192 * Removed completed tasks from todo list.
194 Fri Apr 19 17:26:23 BST 2002 Olly Betts <olly@survex.com>
196 * Removed placeholder code for OmQuery::OP_PERCENT_CUTOFF - it's
197 actually impossible to implement since we started rescaling
198 percentages so that 100% is attainable.
200 Fri Apr 19 16:42:42 BST 2002 Olly Betts <olly@survex.com>
202 * Tracked down and fixed the bug in the quartz backend which was making
205 Fri Apr 19 16:06:39 BST 2002 Olly Betts <olly@survex.com>
207 * Fixed some compilation problems which I somehow failed to notice
208 before the last check-in.
210 Fri Apr 19 15:04:13 BST 2002 Olly Betts <olly@survex.com>
212 * Added more RETURN(...) wrappers.
214 Fri Apr 19 14:46:19 BST 2002 Olly Betts <olly@survex.com>
216 * Added more DEBUGCALL tracing to quartz.
218 Fri Apr 19 13:29:57 BST 2002 Olly Betts <olly@survex.com>
220 * Minor tweaks to quartz_database.cc.
222 Fri Apr 19 13:07:50 BST 2002 Olly Betts <olly@survex.com>
224 * Moved test poslist1 into correct place and renamed it to poslist2
225 since there's already a poslist1...
227 Fri Apr 19 11:19:15 BST 2002 Olly Betts <olly@survex.com>
229 * poslist1 (when actually run!) reveals that Quartz fails to throw
230 errors in this case. Disabled test for now, as I can't see why it
233 Thu Apr 18 17:44:56 BST 2002 Olly Betts <olly@survex.com>
235 * Added poslist1 test as suggested by a TODO entry.
237 Thu Apr 18 14:17:24 BST 2002 Olly Betts <olly@survex.com>
239 * buildall: Removed search for GNU make (as of automake
240 1.5 it's not needed for automake and we aim to have portable
241 makefiles). Made buildall more portable.
243 Thu Apr 18 14:16:18 BST 2002 Olly Betts <olly@survex.com>
245 * xapian-config.nodep is a generated file, so don't look for it in
248 Thu Apr 18 12:45:04 BST 2002 Olly Betts <olly@survex.com>
250 * Added bindings/php4/xapian/.cvsignore.
252 Thu Apr 18 12:36:53 BST 2002 Olly Betts <olly@survex.com>
254 * Minor tweaks to "Makefile" section in HACKING.
256 Thu Apr 18 12:26:21 BST 2002 Olly Betts <olly@survex.com>
258 * Yet more Makefile portability fixes; added section to HACKING
259 summarising my recent experiences.
261 Thu Apr 18 11:26:37 BST 2002 Olly Betts <olly@survex.com>
263 * Corrected the sense of the test in the previous check-in.
265 Thu Apr 18 11:08:04 BST 2002 Olly Betts <olly@survex.com>
267 * Use case instead of echo/sed to replace dirname.
269 Thu Apr 18 10:19:01 BST 2002 Olly Betts <olly@survex.com>
271 * Another Makefile portability tweak.
273 Wed Apr 17 16:07:02 BST 2002 Olly Betts <olly@survex.com>
275 * bindings/php4/Makefile.am: Fixed a couple of problems with
278 Wed Apr 17 15:32:44 BST 2002 Olly Betts <olly@survex.com>
280 * Makefile portability improvements.
282 Wed Apr 17 14:29:21 BST 2002 Olly Betts <olly@survex.com>
284 * Replaced uses of GNU make specific features with more portable
287 Wed Apr 17 12:43:07 BST 2002 Olly Betts <olly@survex.com>
291 Wed Apr 17 12:41:03 BST 2002 Olly Betts <olly@survex.com>
293 * Removed BrightStation's logo from the documentation.
295 Wed Apr 17 12:27:07 BST 2002 Olly Betts <olly@survex.com>
297 * xapian-config: Removed --uninst support - it's very hard to make it
298 work reliably and we're better off directing our efforts towards
299 improving the library than trying to get it working and keep it
302 Wed Apr 17 10:39:02 BST 2002 Olly Betts <olly@survex.com>
304 * Fixed btreetest code to use new names "ord+" and "ord-" for
305 datafiles; disabled LFSinsertdelete1 test as it's exactly the
306 same as insertdelete1 (despite the comment above which suggests
309 Mon Apr 15 17:14:22 BST 2002 Olly Betts <olly@survex.com>
311 * Fix a few OmDatabase::InternalInterface uses I'd somehow missed.
313 Mon Apr 15 16:08:20 BST 2002 Olly Betts <olly@survex.com>
315 * Mark internal classes as @internal for doxygen; removed all uses
316 of OmDatabase::InternalInterface as it's no longer needed.
318 Mon Apr 15 15:42:47 BST 2002 Olly Betts <olly@survex.com>
322 Mon Apr 15 2002 Sam Liddicott <sam@ananova.com>
324 * Hacked around bindings and bindings/php to remove some SWIG
325 workarounds. SWIG cvs + some new non-comitted patches is need still.
327 Mon Apr 15 12:12:05 BST 2002 Olly Betts <olly@survex.com>
329 * stemtest: getopt fix.
331 * stemtest.pl.in: output now: less verbose by default and coloured.
333 Mon Apr 15 11:18:58 BST 2002 Olly Betts <olly@survex.com>
335 * Updated HACKING to say that automake 1.5 is required, and note that
336 automake 1.6.1 is better than 1.6.
338 Sat Apr 13 20:35:51 2002 James Aylett <tartarus@users.sourceforge.net>
340 * Fixed stemtest getopt usage so it works again.
342 Sat Apr 13 20:20:52 BST 2002 James Aylett <tartarus@users.sourceforge.net>
344 * Fixed omtcpsrv getopt usage so it works again.
346 Fri Apr 12 16:24:06 BST 2002 Olly Betts <olly@survex.com>
348 * Require automake 1.5.
350 Fri Apr 12 12:11:57 BST 2002 Olly Betts <olly@survex.com>
352 * omtcpsrv: Namespace fixes.
354 Fri Apr 12 12:25:42 BST 2002 Olly Betts <olly@survex.com>
356 * Fixed everything to use getopt rather than icky handparsing of
359 Fri Apr 12 11:26:57 BST 2002 Olly Betts <olly@survex.com>
361 * Removed delve - it's going to be an example program.
363 Thu Apr 11 18:09:35 BST 2002 Olly Betts <olly@survex.com>
365 * Command line argument improvements - added FIXMEs where getopt
368 Thu Apr 11 17:01:44 BST 2002 Richard Boulton <richard@tartarus.org>
370 * Fixes to work with automake 1.6.1.
371 I recommend using 1.6.1 rather than 1.6, since this fixes many
372 bugs in 1.6. I havn't tested with 1.6 recently, but it is likely
375 Thu Apr 11 17:25:37 BST 2002 Olly Betts <olly@survex.com>
379 Thu Apr 11 15:06:15 BST 2002 Olly Betts <olly@survex.com>
381 * Updated to recommend automake 1.5, noting problem with automake 1.4
382 and that we'll probably soon insist on 1.5, and later autoconf 2.50.
383 Also added notes on recommended and usable GCC versions.
385 Thu Apr 11 14:23:44 BST 2002 Olly Betts <olly@survex.com>
387 * Cleaning up build system.
389 Thu Apr 11 13:18:23 BST 2002 Olly Betts <olly@survex.com>
391 * Use AndPostList with boolean weights on the RHS instead of
392 FilterPostList - this appears to fix a bug, but I suspect it's
393 actually just moving it around. Will investigate later.
395 Thu Apr 11 10:11:11 BST 2002 Olly Betts <olly@survex.com>
397 * Sorted out automake for php4 bindings.
399 Wed Apr 10 14:44:50 BST 2002 Olly Betts <olly@survex.com>
401 * Removed a superfluous DEBUGLINE.
403 Tue Apr 9 19:02:09 BST 2002 Richard Boulton <richard@tartarus.org>
405 * Fix some DEBUGLINE() macros in the matcher which had
406 the first parameter missing.
408 Tue Apr 09 17:50:44 BST 2002 Olly Betts <olly@survex.com>
410 * Removed stray bit of debug code.
412 Tue Apr 09 17:05:09 BST 2002 Olly Betts <olly@survex.com>
414 * More debug tracing added.
416 Tue Apr 09 10:48:42 BST 2002 Olly Betts <olly@survex.com>
418 * Disabled pthread support by default.
420 Sat Apr 6 20:45:21 2002 James Aylett <tartarus@users.sourceforge.net>
422 * Reordered some output generation in configure so it won't
423 complain about directories not existing. (I don't understand
424 what the problem is, but this does fix it.)
426 Sat Apr 06 20:27:57 BST 2002 Olly Betts <olly@survex.com>
428 * Moved a few lingering traces of XML indexer stuff to indexer
431 Sat Apr 06 17:37:02 BST 2002 Olly Betts <olly@survex.com>
433 * Removed -pedantic (read the gcc docs - it's doesn't turn on
434 useful warnings) and fixed all the remaining compilation
435 warnings in a non-debug build.
437 Fri Apr 05 10:21:28 BST 2002 Olly Betts <olly@survex.com>
439 * Removed --enable-profiling, --enable-purify, and --enable-insure.
440 They don't do anything which can't be achieved by passing
441 environment variables and switches to configure (now documented
442 in HACKING). Adding a separate switch for every profiling and
443 code-quality tool out there isn't a sensible approach.
445 Thu Apr 04 20:37:12 BST 2002 Olly Betts <olly@survex.com>
447 * Updated .cvsignore files.
449 Thu Apr 04 20:25:41 BST 2002 Olly Betts <olly@survex.com>
451 * PTHREAD_CFLAGS was only being used for compiling C, not C++, which
452 was causing builds to fail unless threading was disabled. This
453 problem has been there a long time, but until recently was hidden
454 by the check for fdatasync erroneously linking in -lrt which pulls
455 in pthreads anyway (at least this is the situation on Linux).
457 Thu Apr 04 20:06:00 BST 2002 Olly Betts <olly@survex.com>
459 * Removed XML indexer stuff from the main xapian library. All the
460 removed bits are now in the indexer subdirectory, ready to be
461 reassembled into a supplementary library.
463 Thu Apr 04 15:43:43 BST 2002 Olly Betts <olly@survex.com>
465 * More debug tracing in the matcher.
467 Thu Apr 04 14:17:10 BST 2002 Olly Betts <olly@survex.com>
469 * Added debug tracing to most of the matcher.
471 Thu Mar 28 17:21:16 GMT 2002 Olly Betts <olly@survex.com>
473 * Give up trying to make internals private or protected in the
474 header files in include - the consequences are just too ugly, and
475 it's clear enough that they shouldn't be messed with except by the
478 Wed Mar 27 10:24:26 GMT 2002 Olly Betts <olly@survex.com>
480 * Don't add "-lrt" to the link line unless it's actually needed for
483 Wed Mar 27 10:11:09 GMT 2002 Olly Betts <olly@survex.com>
485 * Fixed two problems in the matcher which were respectively causing
486 problems with boolean filters, and with situations where OR or
487 ANDMAYBE decayed to AND.
489 Fri Jan 11 18:00:44 GMT 2002 James Aylett <tartarus@users.sourceforge.net>
491 * Various build fixes for libxml2: define CHAR as needed,
492 --enable-validation (off by default), check for and discard
493 'blank' text/cdata nodes as we encounter them
495 Fri Jan 11 15:40:50 GMT 2002 Sam Liddicott <sam@ananova.com>
497 * Added Large File Support in the same way it was added to GNU tar.
498 (If it's good enough for them...)
499 This is by means of autoconf/ac_sys_largefile which I'm told is
500 built in to later versions of autoconf, and may possibly give us
501 trouble redefining it for those versions... But we'll see about
502 that when/if it happens.
504 It seems to work fine here on some DB's which I had to stop growing
505 cos they got too big; I'm now past the 2G boundry with no problems
507 I guess we should still add overflow detection for 2^31 blocks.
510 I need some help on the btreetest.cc as I haven't yet worked out
511 what it does; so while I've added a test, it doesn't yet test
512 what it says it does. I have changed btreetest.cc so you can
513 tell it where to dump the test DB
515 Fri Dec 21 17:48:09 GMT 2001 Olly Betts <olly@survex.com>
517 * Fixed halflife calculation in OmBiasFunctor.
519 Fri Dec 21 15:24:58 GMT 2001 Olly Betts <olly@survex.com>
521 * Added a temporary API to allow use of OmBiasFunctor.
523 Fri Dec 21 12:58:23 GMT 2001 Olly Betts <olly@survex.com>
525 * Disable conversion of OR to AND/ANDMAYBE in matcher tree - there's
526 a bug which sometimes manifests when there's a date filter and a
527 threshold cutoff in omega, and results in just one match when there
528 should be more. I don't believe the bug is actually in OrPostList
529 but I've been tracking it for 4 days without success and turning off
530 this optimisation seems to stop it occuring so will have to do for
533 Thu Dec 20 17:41:04 GMT 2001 Olly Betts <olly@survex.com>
535 * matcher/multimatch.cc: added more percent_cutoff assertions.
537 Thu Dec 20 13:41:41 GMT 2001 Olly Betts <olly@survex.com>
539 * Fixed incorrectly classified debug message; fixed compiler warning;
540 more comments about matches_* with a percent_cutoff.
542 Thu Dec 20 13:09:51 GMT 2001 Olly Betts <olly@survex.com>
544 * Better OmPostListIterator::get_description() (call get_description
545 on internal->postlist).
547 Thu Dec 20 12:42:55 GMT 2001 Olly Betts <olly@survex.com>
549 * Fixed assorted problems with omtcpsrv and co from recent change.
551 Thu Dec 20 10:41:57 GMT 2001 Richard Boulton <richard@tartarus.org>
553 * In ./configure --help, correctly report muscat36 backend as
556 Thu Dec 20 10:36:18 GMT 2001 Olly Betts <olly@survex.com>
558 * Don't delete internal in ~OmWritableDatabase - ~OmDatabase
559 does that for us (internal was zeroed after delete, so this
560 was probably harmless)
562 * Tweaked OmEnquire::get_description() and
563 OmPostListIterator::get_description() to do less - there's a
564 debug related bug somewhere and get_description() should be a
565 non-intrusive method...
567 Thu Dec 20 10:32:56 GMT 2001 Richard Boulton <richard@tartarus.org>
569 * Fix a couple of misquoted messages in configure.in.
571 Tue Dec 18 23:22:00 2001 James Aylett <tartarus@users.sourceforge.net>
573 * Use xapian.org where appropriate in documentation references
575 Tue Dec 18 14:32:32 2001 James Aylett <tartarus@users.sourceforge.net>
577 * Use xapian.org not sourceforge for schemas
579 Mon Dec 17 18:47:08 GMT 2001 Olly Betts <olly@survex.com>
581 * Cured problems with string('x') caused by overzealous search
582 and replace on my part.
584 Mon Dec 17 16:44:31 GMT 2001 Olly Betts <olly@survex.com>
586 * Improved matches_estimated when a percent_cutoff is in effect.
588 Sun Dec 16 18:09:28 GMT 2001 Olly Betts <olly@survex.com>
590 * You can now register a match decider functor by name with an
591 OmEnquire object. It's not yet used for anything though.
593 Sun Dec 16 17:31:08 GMT 2001 Olly Betts <olly@survex.com>
595 * omtcpsrv: simplified arguments - just list database directories and
596 they'll be opened with the auto backend. Removed --im as it didn't
597 work as advertised and nobody's noticed (as actually implemented it
600 Sat Dec 15 14:10:32 GMT 2001 Olly Betts <olly@survex.com>
602 * Minor update to todo.xml.
604 Sat Dec 15 13:43:47 GMT 2001 Olly Betts <olly@survex.com>
606 * More fettling of OmBiasFunctor stuff - still not ready for use yet...
608 Tue Dec 11 13:06:08 GMT 2001 Olly Betts <olly@survex.com>
610 * Don't work out probabilistic weights for boolean bits of the query
611 (rhs of FILTER and AND_NOT) which fixes incorrect percentage weights
614 Tue Dec 11 12:26:44 GMT 2001 Olly Betts <olly@survex.com>
616 * Added test singlesubq1 to keep an eye on can_replace_by_single_subq.
618 Mon Dec 10 16:58:21 GMT 2001 Olly Betts <olly@survex.com>
620 * can_replace_by_single_subq shouldn't return true for OP_ELITE_SET
621 since you can't call set_elite_set_size() on an arbitrary subquery.
623 Thu Dec 6 15:02:05 GMT 2001 Richard Boulton <richard@tartarus.org>
625 * (omqueryinternal.cc, omtermlistiteratorinternal.h)
626 Fix some compiler warnings (when compiling with no debug) due
627 to methods which should return a value but simply contain
628 "Assert(false);". Throw an exception in such methods instead
631 Mon Dec 03 11:20:42 GMT 2001 Olly Betts <olly@survex.com>
633 * New BiasPostList - not yet enabled as it needs more work.
635 Mon Dec 03 11:16:44 GMT 2001 Olly Betts <olly@survex.com>
637 * quartzdump: give syntax error if no tables specified.
639 Thu Nov 29 14:10:43 GMT 2001 Olly Betts <olly@survex.com>
641 * ExtraWeightPostlist wasn't handling prune correctly.
643 Thu Nov 22 13:46:59 GMT 2001 Olly Betts <olly@survex.com>
645 * Fixed segfault when percentage_cutoff emptied the proto-mset.
647 Thu Nov 22 12:27:49 GMT 2001 Olly Betts <olly@survex.com>
649 * Enhanced test emptyquery1.
651 Fri Nov 16 15:32:09 GMT 2001 Olly Betts <olly@survex.com>
653 * Added OmQuery::is_empty() method.
655 Thu Nov 15 15:36:07 GMT 2001 Olly Betts <olly@survex.com>
659 Thu Nov 15 13:03:05 GMT 2001 Olly Betts <olly@survex.com>
661 * Fixed percent_cutoff problems.
663 Wed Nov 14 12:05:44 GMT 2001 Olly Betts <olly@survex.com>
665 * Empty OmQuery() now matches no documents (rather than causing an
668 Thu Nov 08 18:23:21 GMT 2001 Olly Betts <olly@survex.com>
670 * SIGSTKFLT isn't portable, so added #ifdef checks for it.
672 Wed Nov 07 15:34:29 GMT 2001 Olly Betts <olly@survex.com>
674 * Fixed 2 GCC 3.0 warnings in muscat36 backend.
676 Wed Nov 07 14:21:47 GMT 2001 Olly Betts <olly@survex.com>
678 * Made doc counts returned from percentage cutoff matches more
681 Wed Nov 07 12:30:32 GMT 2001 Olly Betts <olly@survex.com>
685 Tue Nov 06 11:16:42 GMT 2001 Olly Betts <olly@survex.com>
687 * Matcher now calculates percentages like Omega does (or did as I'm
688 about to remove that code from Omega), rather than as a percentage
689 of the theoretical maximum possible weight. The old way generally
690 gives disappointingly low values, and by pushing the percentage
691 code down into the matcher, it can be used to optimise the query.
693 Tue Nov 06 11:13:06 GMT 2001 Olly Betts <olly@survex.com>
695 * Quick fix for problems with null OmQuery-s.
697 Mon Nov 05 15:52:55 GMT 2001 Olly Betts <olly@survex.com>
699 * Added signal handling to testsuite - if a testcase generates a
700 signal it is caught and reported, then the testsuite continues
701 with further testcases.
703 Wed Oct 31 14:26:59 GMT 2001 Olly Betts <olly@survex.com>
705 * Removed needless complications in matcher when a weight threshold
708 Tue Oct 30 16:50:46 GMT 2001 Olly Betts <olly@survex.com>
710 * Removed superfluous lines from configure.in; fixed warning from
713 Mon Oct 29 11:54:36 GMT 2001 Olly Betts <olly@survex.com>
715 * Changed matcher to form proto-mset using a min-heap (as described
716 in "Managing Gigabytes", 2nd ed., pp 211-213). Compared to the
717 previous "nth-element" approach, this uses about half the memory,
718 allows the min-weight based matcher optimisations to work sooner,
719 and should be inherently faster (not yet benchmarked though). The
720 code's slightly simpler too.
722 Mon Oct 29 11:53:38 GMT 2001 Olly Betts <olly@survex.com>
724 * Fixed remote backend to pass match_cutoff setting across.
726 Fri Oct 26 13:43:08 BST 2001 Olly Betts <olly@survex.com>
728 * Reserve size needed for mset vector.
730 Thu Oct 25 18:00:54 BST 2001 Olly Betts <olly@survex.com>
732 * Fixed a couple of stray references to the old sleepycat backend.
734 Tue Oct 23 18:19:32 BST 2001 Olly Betts <olly@survex.com>
736 * More cleaning up of MultiMatch.
738 Tue Oct 23 16:14:27 BST 2001 Olly Betts <olly@survex.com>
740 * Removed RemotePostList - it was an experimental idea which proved
741 to be too slow even on a fast network. Cleaned up code where hooks
742 were bodged in for it.
744 Tue Oct 23 13:27:12 2001 James Aylett <tartarus@users.sourceforge.net>
746 * Added documentation of the test system (albeit brief). Also
747 mentioned the autotools book in HACKING.
749 Tue Oct 23 12:07:59 BST 2001 Olly Betts <olly@survex.com>
751 * Updated .cvsignore files.
753 Tue Oct 23 11:29:47 BST 2001 Olly Betts <olly@survex.com>
755 * Code tidying while investigating sporadic fails from quartztest.
757 Mon Oct 22 17:42:30 BST 2001 Olly Betts <olly@survex.com>
759 * Minor fettles to quartztest: fixed warnings, whitespace tidying,
760 use mkdir(...) rather than system("mkdir ...")
762 Mon Oct 22 16:41:12 2001 James Aylett <tartarus@users.sourceforge.net>
764 * Renamed project to Xapian.
766 Mon Oct 22 14:22:00 BST 2001 Olly Betts <olly@survex.com>
768 * Fixed non-ISO C++ code so Xapian will compile under GCC 3.0
769 (and also RedHat's "GCC 2.96").
771 Mon Oct 22 11:21:45 2001 James Aylett <tartarus@users.sourceforge.net>
773 * Altered omseek-config and the AC m4 macro to make uninst
774 executables link to the right version of the library
776 Mon Oct 22 10:38:20 2001 James Aylett <tartarus@users.sourceforge.net>
778 * Minor fixes to enable build (and test) under Solaris.
780 Fri Jun 22 13:24:59 2001 Sam Liddicott <sam@ananova.com>
782 * Added some explicit type casts in xmlindexer and quartz backend
783 to help gcc2.96 compile.
785 Thu Jun 21 11:05:31 2001 James Aylett <tartarus@users.sourceforge.net>
787 * HACKING updated to (a) remove inaccurate statements about
788 copyright assignment, and (b) talk about developer write
791 Mon Jun 11 13:24:43 2001 James Aylett <tartarus@users.sourceforge.net>
793 * pthread support detected using an automake macro. Should
794 be more portable as a result.
796 * We need GNU make: buildall now tries to find it.
798 Mon Jun 11 12:07:00 2001 Hein Ragas <hragas@users.sourceforge.net>
800 * Modified QuartzWritableDatabase::do_add_document and
801 QuartzWritableDatabase::do_replace_document to leave the PositionList
802 empty for a term with no positions associated with it.
804 Mon May 29 12:17:00 2001 Hein Ragas <hragas@users.sourceforge.net>
806 * Modified QuartzPostList::add_entry to allow for adding of entries
807 in the middle of the postlist, not only at the end.
809 Mon May 28 12:00:00 2001 Hein Ragas <hragas@users.sourceforge.net>
811 * Fixed a bug in replace_document for Quartz, added a test to
812 ensure proper working of the fix.
814 Fri Apr 27 15:16:10 2001 James Aylett <tartarus@users.sourceforge.net>
816 * Project name change to Omseek.
818 Wed Apr 11 09:06:37 BST 2001 Chris Emerson <chris.emerson@omsee.com>
820 * Implemented deleting of items from postlists, and added some
821 tests to check that it works properly.
823 * Fixed a potential memory leak in QuartzPostList if an exception
824 was thrown from the constructor.
826 * BackendManager now sets the quartz_logfile setting, to make
827 the logs available from the testsuite.
829 * Added mention of quartz_logfile to docs/omsettings
831 * Removed a bad assert from InMemoryDatabase::get_doclength()
833 Mon Apr 9 21:48:18 BST 2001 Chris Emerson <chris.emerson@omsee.com>
835 * Added #include <cmath> to testutils.cc
837 Fri Mar 30 17:37:24 BST 2001 Olly Betts
839 * Added extra/.cvsignore
841 Fri Mar 30 17:22:13 BST 2001 Olly Betts
843 * Disabled allocation checking of new[] and delete[] since some STL
844 implementations use them which leads to leaks being reported where
845 none exist. This is addressable longer term...
847 Thu Mar 29 19:05:46 BST 2001 Richard Boulton <richard.boulton@omsee.com>
849 * Add "extra" directory to om source tree, to hold extra libraries
850 for use with omsee, which aren't part of the core.
852 * Put a query parser into "extra". This is roughly the parser
853 from omega. Needs some work: in particular, it needs to be
856 * Added extra/ directory to top level Makefile.am and configure.in.
857 Added AC_PROG_YACC to Makefile.am
859 * Add includes of required header files to omquery.h.
861 Wed Mar 28 17:15:22 BST 2001 Richard Boulton <richard.boulton@omsee.com>
863 * Modifications to OmQuery. Remove the isbool flag: there is
864 no longer any need for the concept of a "pure boolean query".
865 The same effect as was obtained by setting isbool can be
866 obtained by setting the match_weighting_scheme parameter to
869 * Also, undefined queries may no longer be used when
870 building up composite queries; the correct behaviour for this
871 is hard to define and implement and harder to document, and
872 removing this removes lots of special case code.
874 * Updated network query passing code.
876 * Remove special cases for bool weighting in localmatch and irweight.
878 * Updated omsettings docs. Updated comments in omsetting.h.
882 * Incremented network protocol version.
884 * Added test_emptyop1, which checks what happens when an attempt is
885 made to use an empty list of subqueries to build up a query, and
888 * Remove test_boolsubq1: no such thing as a boolean query now, so
889 no need to test what happens when one is used.
891 * Updated testsuite to use "match_weighting_scheme" setting, rather
892 than calling OmQuery::set_bool().
894 Wed Mar 28 15:05:46 BST 2001 Chris Emerson <chris.emerson@omsee.com>
896 * Fixes to InMemoryDatabase:
897 do_open_post_list returns an EmptyPostList rather than an
898 assertion error if the term doesn't exist
899 Fixed doccount(), which wasn't decrementing on delete_doc()
900 Remove terms from the database when they have no more postings.
901 Implement collection frequencies, and run collfreq tests for
904 Wed Mar 28 14:24:38 BST 2001 Richard Boulton <richard.boulton@omsee.com>
906 * Set elite set size to max(10, sqrt(number of subqueries)) by
907 default. This is rather more useful than the old default of 0.
909 Wed Mar 28 10:25:35 BST 2001 Chris Emerson <chris.emerson@omsee.com>
911 * QuartzDatabase now implements replace_document(), and
912 delete_document() now removes keys/attributes as well.
913 However, postlist entries are not yet correctly removed,
914 so this will cause problems.
916 * Added a test for deleting/replacing documents, which passes.
918 Tue Mar 27 17:31:58 BST 2001 Chris Emerson <chris.emerson@omsee.com>
920 * QuartzAttributes now has a method to delete a document's
921 attributes, and QuartzRecordManager has a replace_ method.
922 (But the code which uses these isn't in this commit).
924 Thu Mar 22 15:58:08 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
926 * Change definition of OmQuery::is_defined(), so that elite set
927 queries are undefined until a size is specified for the set.
929 Wed Mar 21 14:29:04 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
931 * Implemented delete_document and replace_document in inmemory
934 Wed Mar 21 12:39:13 GMT 2001 Olly Betts
936 * Tweak to docs/quickstart.html.
938 Wed Mar 21 02:50:19 GMT 2001 Olly Betts
940 * Entirely removed sleepcat backend and all references to it.
942 * Disable muscat36 backend by default.
944 Tue Mar 20 18:47:12 GMT 2001 Olly Betts
946 * open_document() now takes a lazy flag - if not set we need to check
947 that the docid given actually exists.
949 * heavy_duty flag now a bool instead of an int.
951 Mon Mar 19 19:16:34 GMT 2001 Olly Betts
953 * Added test getdoc1 to check exceptions are thrown for out-of-range
954 docids (currently they aren't for quartz and muscat36 backends).
956 Mon Mar 19 17:17:31 GMT 2001 Olly Betts
958 * New simpler implementation of leak detection in testsuite.
959 Currently doesn't support malloc/calloc/realloc/free.
961 Mon Mar 19 16:46:16 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
963 * Further small modification to omsee-config: will now look in
964 .libs subdirectories, too.
966 Mon Mar 19 15:57:18 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
968 * Update omsee-config to work when a prefix is specified that
969 points directly to the directory with the library, rather than
970 expecting the library to be in a subdir "libs/". (libs/ is
971 still used if it exists).
973 * Update omsee.m4, to use omsee-config even when using an
974 uninstalled version of omsee. This in turn fixes problems using
975 uninstalled versions of omsee with STLport.
977 Fri Mar 16 18:14:52 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
979 * Updated licenses, to include year 2001.
981 Fri Mar 16 15:40:49 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
983 * Fix up small bug in quartztest causing it to fail for lack of an
984 expected exception. Initialise values in quartz_positionlist.cc
985 when position list is not present.
987 Thu Mar 15 17:40:38 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
989 * Make timeout absolute, rather than cumulative, when fetching
990 multiple documents from database: if two nodes fail, the total
991 timeout should still be that specified, not twice it.
993 * Make the timeout set by SocketClient::set_query() get reset
994 correctly if an exception happens (which used to prevent
995 SocketClient::get_mset() ever getting called).
997 Thu Mar 15 17:06:51 GMT 2001 Olly Betts
999 * Oops, checked in too much - backing out the wrong stuff.
1001 Thu Mar 15 16:30:14 GMT 2001 Olly Betts
1003 * Include autoconf/definedir.m4 in tarball.
1005 Thu Mar 15 16:06:02 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1007 * Updated network protocol number to reflect change adding
1010 Thu Mar 15 15:31:35 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1012 * QuartzPositionList should no longer complain if positional
1013 information isn't available for a particular term / document
1018 Thu Mar 15 13:55:53 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1020 * Removed OmDocument::set_wdf() and OmDocument::add_term().
1021 Replaced with OmDocument::add_term_nopos(), which adds a term
1022 without specifying positional information, taking an optional
1023 wdfinc parameter. Updated testsuite correspondingly.
1025 Thu Mar 15 13:14:10 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1029 Wed Mar 14 17:51:40 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1031 * Added new operator OP_ELITE_SET, which replaces match_max_or_terms
1032 option. Can now specify exactly which terms to apply max_or_terms
1033 to. max_or_terms is obselete: an error will be thrown if an
1034 attempt is made to use it.
1036 Wed Mar 14 15:56:20 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1038 * Added test for and implementation of multiple XOR queries.
1040 * Fix small bugs with get_termfreq_est() for xor and andnot
1043 Mon Mar 5 16:08:01 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1045 * Catch exceptions within the loop in SocketServer - exceptions
1046 should normally not kill the server. This means that that a
1047 client still works after eg an OmDocNotFoundError, which was
1048 causing problems before.
1050 Fri Mar 2 18:15:47 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1052 * Add a new query operator, OP_WEIGHT_CUTOFF, which returns only
1053 those documents from a query which have a weight greater than a
1054 specified cutoff value. Also added OP_PERCENT_CUTOFF, but this
1055 is not yet implemented.
1057 * Added test of new cutoff function, cutoff2.
1059 * Updated network protocol to pass new queries. Increased protocol
1060 version number (to 10).
1062 * Added set_cutoff() function to OmQuery, to set cutoff parameter.
1066 * Remove unused member "PostList * postlist" of LocalSubMatch.
1068 Thu Mar 1 12:04:53 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1070 * Updates to HACKING.
1072 Wed Feb 28 18:42:47 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1074 * Fixes to neaten up configure output, and to test for the Perl
1075 Text::Format module, thanks to James Aylett (patch slightly
1076 modified, so if it doesn't work it's probably my fault).
1078 * configure.in checks for presence of ftime() and gettimeofday()
1080 * Added OmTime, a class to deal with times to an accuracy of
1081 microseconds, or whatever the best accuracy the system supports
1084 * Use OmTime in network code instead of time(NULL).
1086 Wed Feb 28 14:23:11 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1088 * Merge common code from OmSocketLineBuf::wait_for_data() and
1089 OmSocketLineBuf::do_readline() into
1090 OmSocketLineBuf::attempt_to_read(), and thus fix bug in
1091 wait_for_data() when 0 bytes returned from read().
1093 Tue Feb 27 18:40:33 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1095 * Fixes to remote matcher code to cope better with failure of
1097 - Timeout for all submatches now correctly start at same time.
1099 * Added more extensive testing of above code, involving adding
1100 new parameters to inmemory to cause abort()s at various stages of
1103 * Remove obselete (and unused) method
1104 SocketServer::read_global_stats()
1106 * Errors are now generated from strings by using omerrortypes.h with
1107 suitable #defines before including it. Updated todo accordingly.
1109 * Extend scope of try{} clause in socketserver, so that
1110 SocketServerFinished exception never escapes.
1112 * Default timeout in progserver increased to 30000.
1114 * Default timeout in tcpserver increased to 15000.
1116 Mon Feb 26 23:51:23 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1118 * Split query generation into stages: make new query, add subqueries,
1119 then finalise. Add private methods to OmQuery reflecting this, and
1120 convert constructors into template methods, allowing any iterator
1121 to be used for constructing queries. Removed reference to
1122 <vector> from omquery.h
1124 * Add omqueryinternal.cc, containing implementation of query
1125 internals. (surprise!)
1127 * OmQuery::Internal now has some helper functions to determine the
1128 properties of each particular query. These should be converted
1129 into a lookup table, and the remaining hard-coded properties (for
1130 AND_MAYBE, AND_NOT and FILTER) factored out.
1132 * window property removed from constructor. This can now be set by a
1133 separate call, to "OmQuery::set_window()"
1135 * Added a deleter_vector class, to store subquery pointers in a more
1138 * Represent undefined queries by the new OP_UNDEF operation, rather
1139 than a dedicated flag - cleaned up some logic.
1141 * Some modifications to XOR handling: should now behave like OR and
1142 AND - doesn't need to be binary. (*untested*)
1144 * Fixes to serialisation code in socketcommon.cc to work with new
1145 OmQuery::Internals - this should really be done in
1148 * One tiny fix in tcpclient.cc - an &fdset was missed for exception
1149 conditions in a select() call.
1151 * Testsuite modified and expanded to check changes to OmQuery.
1153 Mon Feb 26 18:20:16 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1155 * Fixed some compiler warnings reported by James Aylett.
1157 Mon Feb 26 14:27:09 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1159 * Avoid waiting for a timeout when closing a SocketClient.
1161 Fri Feb 23 14:38:09 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1165 Thu Feb 22 18:14:41 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1167 * OmRegexFilterNode has an output for non-matching strings as
1168 well as matching. "out" output renamed to "matching".
1170 Thu Feb 22 16:56:33 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1172 * Fixed a bug in the fetch() bits: requesting documents at the
1173 same time from different OmMSet instances could cause a
1174 document to disappear from the cache at the wrong moment.
1176 Thu Feb 22 15:39:49 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1180 Thu Feb 22 12:14:12 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1182 * Some small changes in quartz to improve exception safety and
1185 * Remove unwanted OmExpandWeight::get_expand_k() method.
1187 Wed Feb 21 19:02:44 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1189 * Overhauled the OmMSet::fetch() etc. methods. Documents are
1190 requested when fetch() is called, but are only fetched (all
1191 at once) when the first get_document() is called.
1193 Wed Feb 21 19:30:20 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1195 * Add an errorhandler member to MultiMatch, and remove it from
1196 various calls which used to pass it about.
1198 * Add an EmptyMatch object, which always returns an emptypostlist.
1200 * Implement errorhandlers at start of query for initially down
1201 nodes. Improve test for errorhandlers to cover many more cases.
1203 * Add many debug messages to error handling code.
1205 Wed Feb 21 14:33:50 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1207 * Use a deque<> directly instead of a queue, due to conflict
1208 with Solaris headers.
1210 * Split the collect_doc loop into a seperate function
1212 * SocketClient should be more robust against request_doc() being
1213 used without collect_doc().
1215 Tue Feb 20 18:01:13 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1217 * SocketClient implements a queue/cache system which means that
1218 collect_doc() doesn't need to be called in the same order as
1221 Mon Feb 19 15:43:49 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1223 * Converted btree code to use new/delete instead of [mc]alloc/free.
1225 Mon Feb 19 13:52:23 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1227 * Added new test collapsekey2 designed to work with muscat36
1228 databases, which have different key handling. Added two new
1229 categories of tests to cope with this.
1231 * Adjusted BackendManager's key generation, and updated
1232 test_specialchars1() accordingly.
1234 Fri Feb 16 17:26:59 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1236 * Implemented a test for keep-alives
1238 * Added "-tNNNN" option to omprogsrv to pass a timeout value in.
1240 * Added get_network_database() in apitest to set the timeout.
1242 Fri Feb 16 16:13:47 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1244 * Incremented the remote protocol version, since a new message
1245 type has been added.
1247 Fri Feb 16 15:55:31 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1249 * Added an OmDatabase keep_alive() method to gently prod any
1250 remote databases. Applications can use it to avoid the remote
1251 servers timing out between queries. Not properly tested yet...
1253 Thu Feb 15 19:05:24 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1255 * The remote server now supports a seperate timeout used while
1256 idle, rather than actually servicing a request from the client.
1257 Options --idle-timeout and --active-timeout added to omtcpsrv,
1258 and --timeout sets both timeouts.
1260 * Added a documentation comment or two.
1262 Wed Feb 14 18:43:00 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1264 * In Muscat3.6 backends, don't read the key from the keyfile unless
1267 Tue Feb 13 13:57:34 GMT 2001 Andy MacFarlane <andym@omsee.com>
1269 * Added parameter expand_k in omsettings in order to change
1270 value of weighting in expand process.
1272 Tue Feb 13 13:25:45 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1274 * Network timeouts now apply to write() operations as well
1277 * SocketLineBuf::do_writeline() now correctly deals with EAGAIN.
1279 * SocketServer has new method writeline() which handles write
1280 access to the OmLineBuf.
1282 Mon Feb 12 12:35:41 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1284 * Make OmPositionListIterators and any other appropriate iterators
1285 (postlist, termlist) have a default constructor allowing them to
1286 be declared uninitialised.
1288 Mon Feb 12 10:51:41 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1292 Thu Feb 8 17:59:44 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1294 * Moved omnodepad.h from include/om to indexer/indexgraph/
1298 Thu Feb 8 17:35:45 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1302 Thu Feb 8 17:00:02 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1304 * Quartz now has a metafile which for now has a magic string
1305 and a version number.
1307 * sys_open_to_read() and delete_file() exported from btree.cc.
1308 The latter was renamed to sys_unlink_if_exists().
1310 * Include btree_types.h from btree_util.h
1312 Wed Feb 7 17:33:00 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1314 * Fix to InMemory databases: terms can be added even if they
1315 don't have any positions. (Was causing adddoc2 to fail).
1317 Tue Feb 6 18:06:13 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1319 * Rename OmMSet::fetch_items() to fetch(). Add an overloaded
1320 fetch() method taking a single iterator, to fetch a single item.
1322 * Fix some documentation comments.
1324 Mon Feb 5 19:16:45 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1328 Mon Feb 5 19:12:39 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1330 * Test behaviour of OmDocument methods add_term(), set_wdf(),
1331 remove_posting() and remove_term(). Fails for inmemory databases.
1333 Mon Feb 5 17:46:16 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1335 * Modified the behaviour of timeouts during a match. Internally,
1336 an absolute timeout time is set from start_match(). Now remote
1337 nodes should timeout at NOW + remote_timeout, rather than
1338 waiting remote_timeout milliseconds for each read(). Needs
1341 Mon Feb 5 17:21:52 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1343 * Fix a missing #include in socketcommon.h
1345 Mon Feb 5 17:15:46 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1347 * Sort generated todo lists.
1349 Fri Feb 2 17:44:54 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1351 * Add an OmDocument::add_term() method.
1353 * Remove an unwanted check that wdf's are greater than 0: wdf of 0
1356 Fri Feb 2 15:04:08 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1358 * Hopefully, a fix for segfaults/assertions when network errors
1359 happen halfway through a match, when handled by OmErrorHandler
1360 objects: give the place-holder EmptyTermLists weighting objects.
1362 Thu Feb 1 19:03:10 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1364 * Fixes to OmDocument interface: add parameters specifying the
1365 changes to be made to the wdf to add_posting and remove_posting,
1366 properly implement remove_posting and remove_term, including
1367 throwing of exceptions, and add a set_wdf() method to set the wdf
1368 to an absolute value. Corresponding modifications to
1371 * Fix commented out errorhandler code in multimatch.cc, so it still
1374 * Add a check to avoid division by zero in bm25weight.cc
1376 Thu Feb 1 15:59:30 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1378 * Add a missed #include to omqueryinternal.h
1380 Thu Feb 1 14:44:04 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1382 * Add some error handler code, with a "#if 0"ed out comment,
1385 Wed Jan 31 15:45:16 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1387 * Remote servers should close down more gracefully when the
1388 client closes down in the middle of a request.
1390 Tue Jan 30 16:52:05 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1392 * Removed unneeded #includes of STL headers from API headers.
1394 * All #includes of files which are not installed use "" rather than
1395 <>. This means all #includes of OM files except for those which
1396 are in example programs (and hence might be compiled against the
1397 installed library). "" search paths are a superset of <> search
1398 paths: hence this should ensure that the om headers work however
1401 * Moved supplied OmExpandDecider subclasses into
1402 include/om/omexpanddecider.h
1404 * Remove om_termname_list from API: not used except by code which
1405 displays it, and in testsuite.
1407 Tue Jan 30 12:45:22 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1409 * Removed #include <vector> from omstem.h
1411 Tue Jan 30 11:09:29 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1413 * OmStem::get_available_languages() now returns a string
1414 rather than a vector. Languages are space-separated.
1417 * Added definition of RTLD_DEFAULT to internaltest.cc
1419 Mon Jan 29 16:11:15 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1421 * OmIndexerMessage's copy-on-write slightly more careful.
1423 * Improved debugging in OmIndexerNode
1425 * Fixed a bug in the termlistadd node - it tried to append to a
1428 Fri Jan 26 16:21:09 GMT 2001 Olly Betts
1430 * indexerxml.cc: Removed some dead code.
1432 Fri Jan 26 16:11:13 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1434 * Added omindexerdescinternal.h to the Makefile
1436 Fri Jan 26 15:50:32 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1438 * Move OmQuery definition into a separate header file.
1440 Fri Jan 26 15:46:42 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1442 * Move OmQuery::OP_LEAF out of public visibility, by taking it out
1443 of the enum, making it a static const member of OmQuery::Internal,
1444 and introducing an OmQuery::Internal::op_t to store query
1445 operators in internally. We lose the ability for the compiler to
1446 warn us if we forget to check for a particular operator in a
1447 switch statement, but this can't really be avoided.
1449 Fri Jan 26 13:49:33 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1451 * Added get_output_{node,pad} to OmIndexerDesc
1453 * Implemented and testes OmNodeInstanceIterator
1455 * Implemented OmIndexerBuilder::build_from_desc, which somehow
1456 hadn't been. indextest now uses it.
1458 Thu Jan 25 18:47:08 GMT 2001 Olly Betts
1460 * Fixed various .cvsignore files (omus -> omsee, and
1461 bindings/java/.cvsignore which seemed to have been copied from
1462 the top level one at some point).
1464 * Fixed bug in OrPostList when used in a pure boolean context
1465 (uninitialised variables).
1467 * tests/internaltest.cc: removed unused reference to getopt.h.
1469 * tests/stemtest.pl.in: removed lots of bogus semicolons after
1472 Thu Jan 25 17:53:08 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1474 * Turn debugging messages (OM_DEBUG_TYPES) off by default.
1476 * Add todo items for release to pages generated for website.
1478 Thu Jan 25 15:11:14 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1480 * Add a couple of documentation comments: we need many more of
1481 these. No method, and certainly no class, in the API should be
1482 without an explanatory comment (not least so that they're
1483 accessible from the doxygen browser).
1485 Thu Jan 25 14:51:55 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1487 * Hide the internals of OmIndexerDesc, and adding member functions
1488 to do all the necessary operations (not all yet implemented).
1490 * Indexer internals mostly deal with OmIndexerDesc::Internal
1492 * Removed '#include <vector>' from omindexerdesc.h
1494 Thu Jan 25 13:45:49 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1496 * When setting up an RSet, allow documents to be referenced by
1497 OmMSetIterator, for convenience.
1499 * Allow OmMSetIterators and OmESetIterators to be created without
1500 initialising, also for convenience.
1502 * Include CFLAGS for STLPORT in the flags produced by omsee-config.
1504 * Change several more missed "omus"s to omsee.
1506 Thu Jan 25 13:50:06 GMT 2001 Chris Emerson <chris.emerson@omsee.com>
1508 * Changed a mention of libomus in netprogs/Makefile.am to libomsee
1510 Thu Jan 25 12:33:46 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1512 * Build only the API docs when making dist / install. Full source
1513 docs only get built if explicitly asked for.
1515 Thu Jan 25 11:36:39 GMT 2001 Richard Boulton <richard.boulton@omsee.com>
1517 * Project name changed to Omsee.
1519 Ramifications from a technical viewpoint are:
1521 - library name changed from libomus.* to libomsee.*
1522 - libomus-config renamed to omsee-config
1523 - Autoconf macro file libomus.m4 renamed to omsee.m4,
1524 macro name OM_PATH_LIBOMUS changed to OM_PATH_OMSEE
1525 and macro now defines OMSEE_CFLAGS and OMSEE_LIBS rather
1526 than LIBOMUS_CFLAGS and LIBOMUS_LIBS. configure arguments
1529 Wed Jan 24 15:57:10 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1531 * Improve test of OmMSetIterators equality comparisions.
1535 Wed Jan 24 15:11:11 GMT 2001 Chris Emerson <chris.emerson@open.muscat.com>
1537 * Renamed OmNodeConnection to OmNodePad. The old name was
1540 * Added OmPadIterator, and OmNodeDescriptor::{in,out}puts_{begin,end}.
1541 Also implemented OmNodeDescriptor::get_type()
1543 * Added output function for OmPadIterator
1545 * Added test for OmPadIterators
1547 Tue Jan 23 19:01:29 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1549 * Remove OmBatchEnquire from system: it may return at a later date,
1550 but for now it is simply out of date and a maintainance liability,
1551 and gives no significant advantage. Code now exists in
1552 ombatchenquire.h in CVS, but is not part of build process.
1554 * Make OmEnquire and OmMSet have reference counted internals: this
1555 introduces a further layer of indirection, but tidies up things
1558 * Remove get_docs() and get_doc() methods from OmEnquire.
1559 get_doc(docid) is catered for by OmDatabase::get_document(docid).
1560 Added OmMSetIterator::get_document() to replace get_doc on a
1561 MSetIterator. Added OmMSet::fetch_items() to replace get_docs():
1562 it prefetches the documents (or just those specified by some
1563 MSetIterators into a cache in the Mset).
1565 * OmMSet internals now have a reference to the creating OmEnquire
1566 object: this is set up after the mset returns from the matcher.
1567 If the reference is null, the Mset was created standalone, and
1568 get_doc methods will fail.
1570 * OmMSetIterators now have a reference to the MSet, instead of a
1571 percent_factor stored. This allows the percent_factor to be
1572 lazily calculated, and also allows get_doc to work.
1574 * Add get_rank() method to OmMSetIterators.
1576 * Improve introspection on OmDocument, and fix a bug with assignment
1577 of OmDocument (wasn't assigning most of the internals).
1579 * Add a missing std:: on a string in omstopwordnode.
1581 * Fixed several documentation comments.
1583 * Add some more debugging to quartz.
1587 * Add test_fetchdocs1 to apitest. Disable test_batchquery1.
1589 * Remove sign comparison error in VectorTermList.
1591 Tue Jan 23 16:24:04 GMT 2001 Olly Betts
1593 * No longer compile with -ansi under gcc - it causes problems by
1594 preventing Linux system headers defining various functions we need.
1596 * testsuite/testsuite.cc: when reporting exceptions, display
1597 exception's errno value if set.
1599 Tue Jan 23 15:13:58 GMT 2001 Chris Emerson <chris.emerson@open.muscat.com>
1601 * Killed OmIndexerBuilder::NodeType. Now use OmNodeDescriptor
1602 in its place, getting rid of another vector usage in the API.
1604 * OmNodeDescriptor adjusted for its new role: internals are
1605 refcounted, and some query as well as setting functions.
1607 * Cast the fourth argument to getsockopt() to void *. On Solaris
1608 that argument is char *.
1610 Tue Jan 23 11:24:13 GMT 2001 Olly Betts
1612 * Tiny tweak to da_document.cc.
1614 Fri Jan 19 18:36:15 GMT 2001 Chris Emerson <chris.emerson@open.muscat.com>
1616 * Removed get/set vector methods from OmSettings
1618 * Remote/prog arguments now passed in a string separated be spaces,
1621 * split_words() moved from netutils.h to utils.{h,cc}
1623 * Some unnecessary #include <vector> lines removed from API headers
1625 * Removed get_config_vector() from OmIndexerNode
1627 * OmConstantNode no longer handles vector values, and
1628 OmStopWordNode and OmSelectItemsNode use space-separated
1631 Thu Jan 18 17:31:55 GMT 2001 Chris Emerson <chris.emerson@open.muscat.com>
1633 * Removed mentions of std::vector from OmIndexerMessage, and
1634 updated the relevant bits.
1636 * Fixed a bug with the copy-on-write parts of OmIndexerMessage.
1638 Thu Jan 18 17:09:43 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1640 * Fix to btreetest.cc: shouldn't fail if test data files are not
1643 * Fix to multimatch.cc: clamp hits values to number of documents
1644 matched after collapsing and match functors, rather than before.
1646 Thu Jan 18 14:13:21 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1648 * Fix error messages thrown by quartz when a database doesn't exist /
1649 already exists and isn't to be overwritten.
1651 * Make quartz clean up an old database directory, if
1652 database_allow_overwrite is specified, so that old base files don't
1655 Wed Jan 17 18:18:50 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1657 * Added all used toplevel directories to DIST_SUBDIRS
1659 Wed Jan 17 18:13:50 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1661 * Martin committed changes to btree.cc which should fix some random
1662 problems experienced with quartz.
1664 * Added in a test framework for the btree code, which exhibited the
1665 bug fixed by martin until updating to his fixed version.
1667 Wed Jan 17 16:10:02 GMT 2001 Chris Emerson <chris.emerson@open.muscat.com>
1669 * Moved the socklen_t definition so that tcpclient.cc could see
1672 Tue Jan 16 20:35:18 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1674 * Fix creation of quartz databases in backendmanager: all tests should
1677 Tue Jan 16 20:28:46 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1679 * Fix quartztest so that the tables / databases get created.
1680 Implement new test "create1" to check that creation of databases
1683 * Fix test for whether we are allowed to overwrite a database.
1685 * Implement much better logging from quartz when making new databases.
1687 * Clean up an error message from btree.cc
1689 Tue Jan 16 19:24:49 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1691 * Don't display messages about allocation failures in the first
1692 iteration: if the failures go away when repeating, we're not
1695 Tue Jan 16 18:28:03 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1697 * Add two new OmSettings, for use when opening databases:
1698 database_create and database_allow_overwrite. The idea is that
1699 databases will only be created if database_create is specified,
1700 and that when they are being created an exception will be thrown
1701 if there's an existing database unless database_allow_overwrite
1704 * Implemented database_create and database_allow_overwrite for
1705 Quartz, which is the only relevant type for now. Note that this
1706 breaks the testsuite, quite badly.
1708 * Add OmDatabaseCreateError, which is thrown when creating a database
1711 Tue Jan 16 17:08:47 GMT 2001 Chris Emerson <chris.emerson@open.muscat.com>
1713 * Fixed a typo in -ldl detection
1715 Tue Jan 16 15:15:30 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1717 * Remove OmNeedRecoveryError, and quartz's quartz_perform_recovery
1718 parameter. Quartz now always performs recovery if needed: there
1719 is no need for this added complication.
1723 Tue Jan 16 14:25:03 GMT 2001 Chris Emerson <chris.emerson@open.muscat.com>
1725 * Changed references to SIGCLD to SIGCHLD as it's more portable.
1727 Tue Jan 16 14:02:34 GMT 2001 Chris Emerson <chris.emerson@open.muscat.com>
1729 * Added check for whether -ldl is necessary.
1731 Tue Jan 16 11:51:25 GMT 2001 Chris Emerson <chris.emerson@open.muscat.com>
1733 * Added compatibility bits for early libxml1 versions.
1735 Mon Jan 15 18:18:01 GMT 2001 Chris Emerson <chris.emerson@open.muscat.com>
1737 * Removed use of hstrerror, which isn't portable.
1739 Mon Jan 15 18:02:42 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1741 * Fix assertion which was the wrong way round in multimatch.cc
1743 Mon Jan 15 17:46:13 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1745 * Fix initialisation of Btree_base::sequential when creating database.
1747 Mon Jan 15 15:43:46 GMT 2001 Chris Emerson <chris.emerson@open.muscat.com>
1749 * Renamed some uses of XML node structure for libxml2 compatibility.
1751 Mon Jan 15 15:35:50 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1753 * Add some fixes to sequential access to btrees from Martin.
1755 Mon Jan 15 12:23:02 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1757 * Set matches_* to the known value of the number of hits if we have
1758 been unable to return as many hits as were requested, and therefore
1759 know the exact number.
1761 * Update test_matches1() to check this works correctly. Passes.
1763 Fri Jan 12 17:45:27 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1765 * Implement get_doclength() for QuartzDatabase
1767 * Remove unused parameter from QuartzRecordManager::add_record()
1769 Fri Jan 12 17:14:16 GMT 2001 Chris Emerson <chris.emerson@open.muscat.com>
1771 * Fixed MultiAllTermsList, which had stopped working.
1773 Fri Jan 12 15:32:34 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1775 * Add test to apitest (postlist6) that doclengths got from postlists
1776 are the same as those from databases. Fails for Quartz for the
1779 * Add test to quartztest (disktable3) to try and bring out a bug in
1782 Fri Jan 12 15:20:09 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1784 * Fix STLport macro so that it will accept an STLport installation
1785 with foo/include/stlport and foo/lib instead of foo/stlport and
1788 Fri Jan 12 14:04:37 GMT 2001 Chris Emerson <chris.emerson@open.muscat.com>
1790 * Fixed buglet in configure.in which produced a bogus warning
1791 about regex libraries.
1793 * Added an AC_MSG_RESULT corresponding to an AC_MSG_CHECKING
1794 for the libxml flags
1796 Fri Jan 12 13:18:07 GMT 2001 Chris Emerson <chris.emerson@open.muscat.com>
1798 * Fixed skip_to() in QuartzAllTermsList
1800 Fri Jan 12 12:52:57 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1802 * Turn debugging off in btree.cc: accidentally committed a version
1803 with lots of verbose debugging on.
1805 Fri Jan 12 11:16:17 GMT 2001 Olly Betts
1807 * glibc 2.2 needs `#define _GNU_SOURCE' to give us RTLD_NEXT.
1809 * C++ comments changed to C comments in malloccheck.c.
1811 Thu Jan 11 16:42:07 GMT 2001 Olly Betts
1813 * Removed unnecessary `#include "alltermslist.h"' from
1816 Wed Jan 10 14:28:10 GMT 2001 Olly Betts
1818 * Updated various .cvsignore files.
1820 Tue Jan 09 19:03:12 GMT 2001 Olly Betts
1822 * Tidied up dead code from OmAllTermIterator.
1824 Tue Jan 09 18:41:21 GMT 2001 Olly Betts
1826 * OmAllTermsIterator merged into OmTermIterator.
1828 * When iterating over all terms, skip_to() doesn't set at_end()
1829 when it skips off the end. Fixed except for quartz and added
1830 regression test (allterms3).
1832 Tue Jan 9 18:14:04 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1834 * Add some extra debugging code into btree code in quartz.
1836 Tue Jan 9 17:22:12 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1838 * Make skip_to() work (ie, do nothing) on OmTermIterators, when the
1839 term iterator is at_end() already.
1841 Tue Jan 9 13:32:08 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1843 * Updates to make the quartzdump utility more useful.
1845 * Added new test to test cursor behaviour in quartz.
1847 Tue Jan 9 11:31:26 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1849 * Remove an item from TODO
1851 Tue Jan 9 10:27:35 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1853 * Add a missing \ in tests/Makefile.am
1855 Mon Jan 8 19:03:42 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1857 * Increment format number in quartz/btree_base.cc. This isn't
1858 actually due to a change in the btree format, but to ensure that
1859 some databases which were causing problems are rebuilt.
1861 We need to add quartz format numbers, separate from the btree format
1862 numbers, to check this kind of thing.
1864 Mon Jan 8 15:13:04 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1866 * Add some debugging, and fix a test data file.
1868 Mon Jan 8 13:49:50 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1870 * Fix failure to initialise OmMSet::Internal::have_percent_factor.
1872 Thu Jan 4 17:21:24 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1874 * Add new test for a postlist with many documents, designed to fail
1875 and exhibit the bug andy has found. So far doesn't fail.
1877 Wed Jan 3 19:30:30 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1879 * Add get_percent method to OmMSetIterator. Untested.
1881 * Add om_percent type to om_types.
1883 * Add test of sort order of terms in get_matching_terms.
1885 Tue Jan 2 15:05:53 GMT 2001 Richard Boulton <richard.boulton@open.muscat.com>
1887 * Move documentation of parameters for OmSettings out of omsettings.h
1888 and into docs/. Not in distribution at the moment: it is awaiting
1889 placement into a permanent home (I think the user manual is the
1892 * Add a bm25weight_min_normlen parameter: this specifies a cutoff
1893 on the minimum value that can be used for a normalised document
1894 length: smaller values will be forced up to this cutoff. This
1895 prevents very small documents getting a huge bonus weight.
1897 Wed Dec 20 16:54:41 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
1899 * Fix warning in QuartzTable
1901 Wed Dec 20 15:13:05 GMT 2000 Olly Betts
1903 * OmTermListIterator merged into OmTermIterator.
1905 * Added OmRSet::contains() - checks if an RSet contains a given
1908 * Methods returning `const om_termname' now just return
1911 Tue Dec 19 16:55:02 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
1913 * Implemented AllTermsIterator for DA and Multi databases.
1914 Added a test which actually uses a multidatabase, but
1915 disabled it as it currently fails for both Quartz and DA.
1917 Tue Dec 19 12:14:05 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
1921 Tue Dec 19 20:06:43 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
1923 * Escaping for termnames in remote database communication modified
1924 to use only characters in range 33 to 126. Should now work on all
1927 * Increased OM_SOCKET_PROTOCOL_VERSION to 8.
1929 Mon Dec 18 17:23:48 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
1931 * Added "match_cutoff" option to get_mset OmSettings.
1933 * Added test for "match_cutoff" to apitest.
1937 Mon Dec 18 17:19:40 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
1939 * Implemented opening positionlists from inmemory databases. Added
1940 a testcase as well, which is run for quartz and inmemory.
1942 Mon Dec 18 15:48:16 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
1944 * Implemented AllTermsIterator for quartz. Interaction with
1945 QuartzPostList needs to be cleaned up.
1947 * Added new functions [un]pack_string_preserving_sort(), which
1948 pack a string in a way which preserves sort order. Added a
1949 testcase to quartztest.
1951 * Now use [un]pack_string_preserving_order() on postlist keys, so
1952 that we can get at terms in sorted order. (And get_tname_from_key()
1953 added to separate out the term-unpacking as well as the packing)
1955 * Enabled test_allterms1 in apitest, but put it in a group of
1956 tests only run for inmemory and quartz. This should be extended
1959 Mon Dec 18 14:33:42 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
1961 * Implemented tests of msetiterator and esetiterator copying and
1964 * Fix segfault when assigning to [me]setiterator to end.
1968 Mon Dec 18 13:52:53 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
1970 * Move creation of first key in a quartz postlist into a named
1971 function (was scattered through the code).
1973 Mon Dec 18 11:19:53 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
1977 Mon Dec 18 10:47:42 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
1979 * Remove const from reverse_iterators in api_db.cc, so get around
1980 brokenness of egcs 1.1.2
1982 Mon Dec 18 09:41:54 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
1984 * Added apitest_space.txt to the Makefile.am
1986 Sun Dec 17 16:15:03 GMT 2000 Olly Betts
1988 * Replaced all API uses of om_termname_list with OmTermIterator.
1990 Fri Dec 15 18:54:10 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
1992 * Implemented OmAllTermsIterator interface in API. It works for
1993 inmemory - the rest haven't been implemented yet. The test
1996 Fri Dec 15 15:47:53 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2000 * database returns positionlists as AutoPtrs; this neatens some of
2001 the code from the previous changelog entry, and makes explicit the
2002 ownership of the pointer. postlists and termlists should be
2005 Fri Dec 15 14:59:41 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2007 * Make OmPositionListIterators retrieved from OmPostListIterators
2008 valid indefinitely (were only valid until OmPostListIterator was
2009 moved). This makes them consistent with OmPositionListIterators
2010 retrieved from OmDatabases.
2012 * Renamed PostList::get_position_list() to read_position_list.
2013 Added PostList::open_position_list() which opens a new positionlist
2014 and returns it as an AutoPtr.
2016 Fri Dec 15 13:09:51 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2018 * Make TODO.release file, containing TODO items for next release.
2020 Fri Dec 15 12:06:42 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2022 * QuartzDatabases now autoflush after 1000 changes.
2024 Fri Dec 15 11:40:37 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2026 * Fix segfault in quartz_table
2028 Fri Dec 15 11:23:15 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2030 * Removed begin/end_session() from quartztest
2032 Thu Dec 14 19:19:40 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2034 * Done todo item: For writable databases, make the behaviour currently
2035 obtained by calling begin_session() and later end_session() the
2036 default behaviour. If users want the changes to be applied
2037 immediately following a change, they should call flush().
2039 Thu Dec 14 17:48:27 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2041 * Fix problem with recalc_maxweight() not being called before a
2042 get_maxweight() in multimatch.cc if a node prunes at the top level,
2043 since recalculate_w_max wasn't being checked at this point.
2044 Introduced helper function getorrecalc_maxweight() to tidy this up.
2046 * Tidy up Asserts in common/netutils.h.
2048 Thu Dec 14 17:11:17 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2052 Thu Dec 14 16:21:27 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2054 * Removed handling of OmDatabaseModifiedError in the API - it's
2055 up to the users to know what to do. Disabled quartzoverwrite2
2056 as it's now inappropriate.
2058 * Added OmDatabase::reopen() to help them do so.
2062 Thu Dec 14 14:38:39 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2064 * Added another quoting regression test.
2066 Thu Dec 14 14:36:53 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2068 * Fixed the quoting _again_, since it broke with backslashes.
2070 Thu Dec 14 12:49:58 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2072 * Fix problems with recalculation of maxweight in postlists, causing
2073 AssertParanoid at multimatch.cc:393. When a prune was happening,
2074 recalc_maxweight flag was not always being set, because some
2075 {next,skip_to}_handling_prune() methods weren't being passed the
2076 matcher, and a default argument of 0 was being used. I've now
2077 removed the default argument and pass the matcher always.
2079 Sometimes the recalc could perhaps be avoided, but this is
2080 certainly safer for now.
2082 Thu Dec 14 12:30:02 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2084 * Sleepcat is now disabled by default.
2086 * Fixed a problem with tabs not being quoted in the remote case. All
2087 control characters are now quoted. Incremented the protocol ver
2090 Thu Dec 14 11:54:17 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2092 * Added regression test to check that all characters can be
2093 are safe to exist in document keys.
2095 * Fixed OmDebug so that it can display messages containing zero bytes
2096 (use fwrite instead for fprintf)
2098 Wed Dec 13 18:43:40 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2100 * Add regression tests to apitest to check that OmMSet and OmESet
2101 begin() and end() iterators compare equal if the mset is empty.
2102 Fix matchfunctor used in test_matchfunctor1 so that it works for
2103 Muscat3.6 databases.
2105 Wed Dec 13 18:35:05 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2107 * Fixed bugs in OmMSet and OmESet iterators: begin() when the set
2108 was empty produced an invalid iterator, and the assignment
2109 operators would have failed when end iterators were involved.
2111 * Added a check in test_matchfunctor1() that the mset returned is
2114 Wed Dec 13 18:18:09 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2116 * Turn off tests involving terms with newlines or zero bytes in terms
2117 with Muscat3.6 backends; these can't be expected to work.
2119 Wed Dec 13 18:06:29 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2121 * Uncommented the code in pctcutoff1 - test now passes.
2123 Wed Dec 13 17:53:19 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2125 * Fix: m36_key_file parameter wasn't being set with DA flimsy
2126 databases (thanks to Mark Hagger).
2128 * indextest.cc changed to use "\n" instead of endl - compiles
2131 Wed Dec 13 17:27:17 GMT 2000 Olly Betts
2133 * OmMSet is now an STL compatible container.
2135 * Om*Iterator::difference_type was unsigned - now signed.
2137 * net/readquery.ll: fixed compiler warning.
2139 * Remote backend was defaulting to collapse on key 0.
2141 Wed Dec 13 16:48:49 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2143 * Add handling of DatabaseModified to OmEnquire::get_mset()
2145 Wed Dec 13 16:28:47 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2147 * Escape zero bytes in the network protocol, since these were
2148 breaking things when being passed across as part of keys.
2150 * Add test of having zero bytes in the collapse keys.
2152 * In testsuite, only display the context of errors if there is one
2155 Wed Dec 13 14:44:46 GMT 2000 Olly Betts
2157 * Implemented OmMSet::operator[]().
2159 Wed Dec 13 14:30:57 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2161 * Added support for handling overwritten database conditions.
2162 Currently works for OmDocument::get_{data,key}().
2164 Wed Dec 13 13:20:45 GMT 2000 Olly Betts
2166 * Elaborated API hitlist in todo.xml.
2168 Wed Dec 13 12:28:18 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2170 * Fix to BackendManager to stop it removing tables prematurely.
2172 Wed Dec 13 11:49:53 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2174 * Apply the stemmer to query terms used in spaceterms1. (Not doing
2175 so caused the test to fail spuriously on local databases, since the
2176 terms are stemmed at index time). The test still fails with da and
2179 * Fixed a problem when stats were unpacked from the network stream,
2180 where term names were not correctly unquoted. This led to double
2181 quoting of global statistics.
2183 Wed Dec 13 02:49:05 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2185 * Implement copy and assignment methods for OmPositionListIterator.
2187 Wed Dec 13 02:37:14 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2189 * ESet and MSet iterators now cope with being copied / assigned when
2190 the internals are null.
2192 * Added copy method to OmPositionListIterator interface. No
2193 implementation for this yet though, or for the already existing
2196 * Added a couple of easy items to the todo list to check regarding
2199 Wed Dec 13 02:19:50 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2201 * Fix small bug in mset_range_is_same{,_weights}()
2203 Wed Dec 13 02:07:59 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2205 * And add copy and assignment for OmESet, similarly.
2207 Wed Dec 13 01:58:38 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2209 * Add copy and assignment operators to OmMSet so that the internals
2210 get copied (rather than just the pointer to them). Really want a
2211 small internals class, holding a refcount to the real internals, or
2212 else to use refcntptrs for the members of OmMSet::Internal which are
2213 potentially large (eg, items)
2215 Wed Dec 13 01:05:44 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2217 * Add Asserts to api/omdatabaseinternal.cc to ensure that there is at
2218 least one database present when opening termlists, etc. This should
2219 really be done by throwing errors.
2221 * Add destructor to OmMSet, deleting internals.
2223 * Implement getting positionlists from QuartzDatabases.
2225 * Fix bug in copy constructor of OmDocument::Internal - some fields
2226 were not being copied.
2228 * Fix api_db.cc so it compiles: code referring to mset by subscripting
2229 temporarily commented out.
2231 Tue Dec 12 20:05:10 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2233 * Fix bug with truncation of intermediate keys in btrees.
2235 Tue Dec 12 18:33:12 GMT 2000 Olly Betts
2237 * OmMSet::get_docs() now takes sane parameters.
2239 * Various test programs updated to nearly work with new OmMSet
2242 Tue Dec 12 17:18:33 GMT 2000 Olly Betts
2244 * Finished cleaning up OmMSet; updated TODO to reflect this.
2246 Tue Dec 12 17:16:02 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2248 * Fix bug with sorting keys in btrees.
2250 * Various fixes to quartzdump.
2252 Tue Dec 12 15:40:28 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2254 * Nettest compiles with new OmMSet interface.
2256 Tue Dec 12 15:09:14 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2258 * Fixed an endless loop in QuartzWritableDatabase::do_delete_document.
2260 Tue Dec 12 15:07:39 GMT 2000 Olly Betts
2262 * OmMSetItem replaced by OmMSetIterator.
2264 * Added OmESet::empty().
2266 * Fixed == on OmESetIterator.
2268 Tue Dec 12 14:16:57 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2270 * Renamed arguments to compare_keys()
2272 Tue Dec 12 12:05:24 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2274 * Added quartzdump utility to dump the contents of a quartz table.
2276 Tue Dec 12 10:54:44 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2278 * Added constructors and destructor to OmRSet.
2280 Mon Dec 11 16:32:07 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2282 * Remove caching of average length in OmDatabaseInternal, was breaking
2283 asking for the average length of a database which was being
2286 Mon Dec 11 16:03:46 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2288 * If no documents in database, don't divide by zero in
2289 omdatabaseinternal.cc
2291 * If a document object doesn't come from the database, when iterating
2292 through its termlist don't open postlists from the nonexistant
2293 database; open them from the DocumentTerm objects in the document
2296 * Remove old unused and undefined method
2297 OmDocument::Internal::add_posting()
2299 Mon Dec 11 13:53:18 GMT 2000 Olly Betts
2301 * omenquire.h: Removed superfluous declaration of OmMSetCmp.
2303 Mon Dec 11 13:38:12 GMT 2000 Olly Betts
2305 * Updated TODO list.
2307 Mon Dec 11 13:24:45 GMT 2000 Olly Betts
2309 * OmRSet internals encapsulated.
2311 Mon Dec 11 12:42:02 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2313 * OmIndexerMessage::get_element and ...::operator[] now have
2314 non-const versions. Fixes const-warning in omstemmernode.cc.
2316 Mon Dec 11 12:17:32 GMT 2000 Olly Betts
2318 * Better typedef-s for Om*Iterator::difference_type.
2320 Sun Dec 10 17:51:41 GMT 2000 Olly Betts
2322 * Corrected various typedef-s for Om*Iterator.
2324 Sun Dec 10 17:28:59 GMT 2000 Olly Betts
2326 * Updated TODO to reflect OmESet being cleaned up.
2328 * Term position argument to OmDocument::add_posting() is now
2329 optional (as it was for OmDocumentContents).
2331 Sun Dec 10 16:55:17 GMT 2000 Olly Betts
2333 * OmESetItem is dead - long live OmESetIterator!
2335 * net/socketclient.cc: fixed compiler warning.
2337 * net/socketserver.cc: fixed compiler warning.
2339 Sun Dec 10 13:29:15 GMT 2000 Olly Betts
2341 * Started to encapsulate OmESet/OmESetItem interface. Interface is
2342 close, but currently implementation is exposed in omenquire.h.
2344 * apitest wasn't running puncterms1 or spaceterms1 - fixed.
2346 Sun Dec 10 11:34:39 GMT 2000 Olly Betts
2348 * om/autoptr.h -> autoptr.h in lots of places.
2350 Fri Dec 8 17:20:04 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2352 * Updated indextest to not use AutoPtr<OmIndexer>
2354 Fri Dec 8 17:14:09 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2356 * Oops - removed one too many #include "autoptr.h"
2358 Fri Dec 08 16:50:42 GMT 2000 Olly Betts
2362 Fri Dec 8 16:44:26 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2364 * IndexerBuilder now returns OmIndexer objects instead of
2365 AutoPtr<OmIndexer>. OmIndexer's internals are reference
2368 * Moved autoptr.h from include/om to common/, since it's no
2369 longer used in the API.
2371 Fri Dec 8 16:22:48 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2373 * Fixed omstemmer node bug and made debug slightly more verbose
2376 Fri Dec 8 16:13:36 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2378 * Added a test for OmIndexerMessage to indextest
2380 * Added output operator for OmIndexerMessage
2382 * Fixed a bug introduced into omvectorsplit node
2384 * Changed couts in indextest.cc to touts.
2386 Fri Dec 08 14:53:24 GMT 2000 Olly Betts
2388 * quartztest: removed OmDocumentTerm reference so that it'll
2389 compile (tests fail though).
2391 Fri Dec 8 14:42:46 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2393 * OmIndexerMessage is now a class by itself, replacing OmIndexerData
2394 and the typedef to AutoPtr<OmindexerData>. It's now a copy-on-write
2397 * The indexer stuff all changed.
2399 Fri Dec 08 14:24:02 GMT 2000 Olly Betts
2401 * omindexdoc.{cc,h}: no longer used so removed.
2403 * Pushed OmDocumentTerm from API level into the internals of the
2408 Fri Dec 08 12:08:49 GMT 2000 Olly Betts
2410 * delve: if just given a database (or list of databases), report the
2411 number of documents and average document length.
2413 Thu Dec 7 20:39:24 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2415 * Fix bug: Om*Iterators which were created over empty lists didn't
2416 have null internals, causing them not to compare equal to end
2419 * Added many asserts to iterator code.
2421 Thu Dec 7 20:02:43 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2423 * Removed OmTermListIteratorMap - OmTermListIterator can now be
2424 across either a map or an actual termlist.
2426 * Om*Iterator classes all now delete internals when reaching end,
2427 freeing resources sooner and making the comparison operators much
2430 Thu Dec 7 18:33:03 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2434 Thu Dec 7 18:32:39 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2436 * Implementation of write locks for Quartz
2438 Thu Dec 7 18:28:55 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2440 * Fix to backendmanager which doesn't return writable databases
2441 unnecessarily (which breaks things when there are write locks)
2443 Thu Dec 7 18:25:50 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2445 * Added test for Quartz write locks
2447 Thu Dec 7 17:56:19 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2449 * Add OmDocument::set_data() method which takes a string, instead of
2450 an OmData object. This allows, implicitly, use of const char *'s
2453 * Further fixes to quartztest. It now compiles (though I've not
2454 tried linking it yet...) :)
2456 Thu Dec 7 17:49:50 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2458 * Fixed omkeylistiterator return types.
2460 Thu Dec 7 17:27:57 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2462 * Moved get_document() from OmWritableDatabase to OmDatabase.
2464 * Added -> operator to OmKeyListIterator. Fixed return values
2465 and constness of Om*Iterator::operator *() methods.
2467 * Some fixes to quartztest.cc, but not enough to get it compiling.
2469 Thu Dec 07 16:21:28 GMT 2000 Olly Betts
2471 * Some work on getting quartztest working.
2473 Thu Dec 07 16:10:00 GMT 2000 Olly Betts
2475 * The library now builds, but "make check" still fails.
2477 Thu Dec 7 15:39:19 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2479 * Fixes to testsuite/index_utils.cc to not segfault.
2481 Thu Dec 7 14:31:56 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2483 * Fixes to api_db.cc so that it compiles.
2485 Wed Dec 6 18:50:48 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2487 * Add test for terms with spaces, newlines, zero bytes, or
2492 Wed Dec 06 18:18:16 GMT 2000 Olly Betts
2494 * Woohoo! Now builds with just --disable-indexer!
2495 (still doesn't pass any tests).
2497 Wed Dec 06 17:24:19 GMT 2000 Olly Betts
2499 * Minor fix. Now builds with --disable-indexer
2500 --disable-quartz-backend (but doesn't pass any tests).
2502 Wed Dec 06 16:35:34 GMT 2000 Olly Betts
2504 * Fixed up lots of build errors.
2506 Wed Dec 06 14:56:59 GMT 2000 Olly Betts
2508 * Begin the long job of replacing OmDocumentContents with
2509 OmDocument. Won't currently build - expect the tree to be broken
2510 for a few days. As usual, if you want a working build, use the
2511 "snapshot_latest" tag.
2513 Wed Dec 6 12:03:44 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2515 * Backed out yesterday's overwritten-handling stuff.
2517 Wed Dec 6 11:36:55 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2519 * Increase sleep in tcpclient1 to 3 (did tcpmatch1 last time, duh!)
2521 Tue Dec 5 17:13:38 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2523 * QuartzDocument now has a QuartzTableManager pointer rather than
2524 two QuartzTable pointers.
2526 * QuartzDatabase::do_get_document_internal() copes with Btree
2527 overwritten conditions.
2529 * QuartzDocument methods cope with Btree overwritten conditions
2531 * New method QuartzTableManager::reopen_tables_because_overwritten()
2532 for helping with the above.
2534 * New test in quartztest for testing overwritten problems from the
2535 API rather than just internally to Quartz.
2537 * Fixed a typo in omsettings.h comment (quartz_dir used to refer to
2538 a sleepycat database)
2540 Tue Dec 5 16:53:46 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2544 * Fix undesirable assert in stats.h
2546 Tue Dec 5 15:41:40 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2548 * Replace OmMSet::docs_considered with
2549 OmMSet::matches_{lower_bound,estimated,upper_bound}, giving more
2552 * PostLists now have get_termfreq_{min,est,max}(), instead of
2553 get_termfreq(), so the postlist tree can be used to calculate
2554 the matches_* values for the mset. Implemented for all the
2555 postlist subclasses.
2557 LeafPostList's still has a virtual get_termfreq() method,
2558 and implements get_termfreq_* in terms of it, so database postlists
2559 don't need to be modified.
2561 * Passing of MSets across network modified to pass the new
2564 * PendingMSet uses the values from the mset to return the values
2565 of get_termfreq_*(). This assumes that recalc_maxweight has been
2566 called first, which is has been.
2568 * Muscat36 databases get_termfreq() methods fixed to use a
2569 LeafPostList rather than a PostList.
2571 * Renamed test docs_considered1 to matches1, and add several
2574 Tue Dec 05 15:38:27 GMT 2000 Olly Betts
2576 * Added tests/testdata/apitest_punc.txt to distribution.
2578 Tue Dec 05 15:07:26 GMT 2000 Olly Betts
2580 * Oops, failed to add new file `tests/testdata/apitest_punc.txt'
2583 Tue Dec 05 14:34:04 GMT 2000 Olly Betts
2585 * OmTermListIterator implemented for an OmDocument with terms stored
2586 in a map rather than coming from a Document.
2588 * Fixes to remote protocol so solve problems with terms with
2589 punctuation in (regression test punc_terms1).
2591 Mon Dec 4 15:02:53 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2593 * Makefile tweak in docs/
2595 Mon Dec 04 14:13:05 GMT 2000 Olly Betts
2597 * More OmDocument work.
2599 Mon Dec 4 11:43:46 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2601 * Renamed OmMSet::mbound to docs_considered.
2603 Mon Dec 4 10:11:11 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2605 * Added some more std:: prefixes for STLport.
2607 Fri Dec 1 17:45:01 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2609 * Increase the sleep after the server is started by tcpclient1 to 3
2610 seconds so that the server is more likely to have started when
2611 then test ran. This seems to be what was causing the test to
2612 randomly fail. Really, we want a better solution to this (such as
2613 the server picking a port and writing it out on stdout once it is
2616 Fri Dec 1 17:27:02 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2618 * Swapped the ports used by tcpclient1 and tcpmatch1 to see if the
2619 random failures follow suit.
2621 Fri Dec 1 17:21:07 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2623 * Another minor fix to work with STLport.
2625 Fri Dec 1 17:01:02 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2627 * Add std::'s and similar to fix compilation with STLport.
2629 * Fix bug in expander due to nth_element being called on the wrong
2630 element. This is the counterpoint of the bug fixed on Nov 24th
2633 Fri Dec 1 16:30:26 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2635 * Minor tweaks in error strings.
2637 Fri Dec 01 12:57:59 GMT 2000 Olly Betts
2639 * Corrected erroneous documentation comment.
2641 Thu Nov 30 18:50:16 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2643 * OmSettings no longer throws exceptions internally (at the cost of
2644 slightly more code duplication).
2646 Thu Nov 30 18:05:39 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2648 * Add a few std::'s to strings which had been missed.
2650 Thu Nov 30 16:41:11 GMT 2000 Olly Betts
2652 * OmDocument::Internal now knows its OmDatabase.
2654 Thu Nov 30 16:40:33 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2656 * Add context to network errors thrown from OmSocketLineBuf.
2658 Thu Nov 30 16:21:47 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2660 * Added a quartz test for largish bitmaps.
2662 * Fixed the code so that the above test would pass.
2664 Thu Nov 30 16:10:37 GMT 2000 Olly Betts
2666 * OmDocument::add_posting() pretty much done.
2668 Thu Nov 30 15:51:46 GMT 2000 Olly Betts
2670 * More work on OmDocument::add_posting().
2672 * Added OmTermListIterator::positionlist_begin() and
2673 OmTermListIterator::positionlist_end().
2675 Thu Nov 30 14:16:28 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2677 * Fixed a prototype bug introduced with the last commit.
2679 Thu Nov 30 13:23:14 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2681 * Bcursor::find_key now more const-correct.
2683 * Bcursor_create now returns an AutoPtr. The resultant changes
2684 fixed a memory leak.
2686 * New exception: OmDatabaseModifiedError. Thrown when an open
2687 revision of a table is no longer valid due to multiple updates.
2689 * quartzoverwrite1 test re-enabled, and passes.
2691 Thu Nov 30 13:23:27 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2693 * nettest now uses quartz backend: should always run all tests now
2694 (apart from tcpdead1, which doesn't work).
2696 Wed Nov 29 19:46:22 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2698 * In testsuite, report the context of Om exceptions as well as their
2701 Wed Nov 29 18:30:10 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2703 * Add "remote_connect_timeout" parameter to be supplied when opening
2704 a remote database, to specify a separate timeout for the connect
2705 operation to that used once the connection has been opened.
2707 * Add setting of the context of errors thrown by tcpclient or
2708 progclient, so that the node which failed can be determined.
2710 Wed Nov 29 17:50:03 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2712 * Reworked Btree_base::read() a bit so that it's hopefully more
2715 * Hopefully fixed a bug when the bitmap approaches 1k.
2717 * Fix to catch problems re-opening databases after an apply in
2720 Wed Nov 29 17:30:26 GMT 2000 Olly Betts
2722 * Added OmDocument::termlist_begin() and OmDocument::termlist_end()
2724 Wed Nov 29 16:53:13 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2726 * Comment out quartzoverwrite1 test so that it doesn't cause problems
2727 for other developers.
2729 Wed Nov 29 16:27:19 GMT 2000 Olly Betts
2731 * docid now in Document class rather than subclasses.
2733 Wed Nov 29 14:54:13 GMT 2000 Olly Betts
2735 * leafdocument.cc renamed to document.cc
2737 * Document class now has a pointer to the associated Database class
2738 so we can open termlists, etc.
2740 Wed Nov 29 14:03:43 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2742 * Add quartztest to test for case when a database block gets
2743 overwritten. Currently, this fails because an exception doesn't
2744 get thrown when it should.
2746 Wed Nov 29 13:18:24 GMT 2000 Olly Betts
2748 * LeafDocument class renamed to Document.
2750 Wed Nov 29 12:35:49 GMT 2000 Olly Betts
2752 * Added OmDocument::remove_posting(), OmDocument::remove_term(),
2753 and OmDocument::clear_terms()
2755 Wed Nov 29 12:31:22 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2757 * Added another revision number in the middle of the base file,
2758 before the bitmap. Also now check that there isn't any extra
2759 data at the end after we finish reading it. Incremented the
2762 Wed Nov 29 11:55:03 GMT 2000 Olly Betts
2764 * Added OmDocument::remove_key() and OmDocument::clear_keys()
2766 Tue Nov 28 18:34:57 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2768 * Btree bitmap now merged with base - one object, one file.
2770 Tue Nov 28 17:13:56 GMT 2000 Olly Betts
2772 * Added OmDocument::set_data()
2774 Tue Nov 28 16:47:06 GMT 2000 Olly Betts
2776 * Started to alter OmDocument to be a general purpose document class
2777 which includes the functionality currently in OmDocumentContents.
2779 Tue Nov 28 15:08:38 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2781 * Added OmSplitOnCharsNode, which does a subset of OmRegexSplitNode
2784 * Modified RegexSplit node and regexcommon so that less copying
2785 of strings is needed.
2787 Tue Nov 28 13:42:41 GMT 2000 Chris Emerson <chris.emerson@open.muscat.com>
2789 * Moved the Btree's bitmap into a separate object.
2791 Tue Nov 28 13:06:36 GMT 2000 Olly Betts
2793 * Eliminated OmDocumentParams.
2795 * Removed unnecessary mutex from OmDocument::Internal.
2797 Mon Nov 27 18:45:27 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2799 * Implement get_position_list() on databases. Untested. Also needs
2800 some work to make consistent with open_position_list() on posting
2801 lists: see todo list.
2803 Mon Nov 27 18:29:00 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2805 * Change #define LEVEL ... to #define GET_LEVEL ... in btree_util.h:
2806 fixes problem reported by includetest
2808 Mon Nov 27 18:20:42 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2810 * Added a set of modifications to the todo.xml. Also, add a
2811 "release" field, recording the release that the work must be
2814 Mon Nov 27 18:08:35 GMT 2000 Olly Betts
2816 * A RefCntPtr now copes with being assigned to itself (used to
2817 delete the underlying object if the reference count was 1). Added
2818 regression test (refcnt2).
2820 * Now overwrite pointer inside RefCntPtr before deleting the pointed
2821 to object so there's no window where another thread can access the
2822 pointer and get the just-deleted object.
2824 Mon Nov 27 14:36:59 GMT 2000 Olly Betts
2826 * OmError class now optionally stores an errno value.
2828 Mon Nov 27 13:04:18 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2830 * Quartztest builds its test databases in a subdirectory, which
2831 is now in .cvsignore, so we shouldn't get cvs complaining about
2832 so many unknown files any more.
2834 Mon Nov 27 12:53:16 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2836 * Another TODO item.
2838 Mon Nov 27 12:15:53 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2840 * Added a couple of new items to the todo list.
2842 Fri Nov 24 19:23:56 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2844 * Quartztests now deletes all old tables, so that database formats
2845 don't cause problems.
2847 Fri Nov 24 19:03:59 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2849 * Added std:: prefix to lots of strings which didn't have it.
2850 I've probably added some where they shouldn't be: there were rather
2851 a lot of cases of this.
2853 Fri Nov 24 18:27:06 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2855 * Major bug fix! When removing elements, matcher was performing
2856 nth_element() on the first element to be thrown away, rather than
2857 the lowest element to keep. This meant that, after throwing away
2858 low scoring items, items.back() was a random item rather than the
2859 lowest scoring item. This caused the min weight for getting into
2860 the mset to go up faster than it should have done, and generally
2863 It will be interesting to compare evaluation measures before and
2866 Fri Nov 24 15:34:17 GMT 2000 Richard Boulton <richard.boulton@open.muscat.com>
2868 * Declare this to be version 0.4.1