Opened 3 years ago

Closed 3 years ago

#16735 closed enhancement (fixed)

xapian-core-1.4.20

Reported by: Bruce Dubbs Owned by: Bruce Dubbs
Priority: normal Milestone: 11.2
Component: BOOK Version: git
Severity: normal Keywords:
Cc:

Description

New point version.

Change History (3)

comment:1 by Bruce Dubbs, 3 years ago

Owner: changed from blfs-book to Bruce Dubbs
Status: newassigned

comment:2 by Bruce Dubbs, 3 years ago

Xapian-core 1.4.20 (2022-07-04):

API:

  • Throw DatabaseNotFoundError when the database directory doesn't exist or when it doesn't contain a Xapian database.
  • Improve exception message for attempting to remove an empty term (the exception type is still InvalidArgumentError).

testsuite:

  • Enable queryparser testcase for OR under NEAR, which has been supported since 1.4.3.
  • Expand some query-related testcases.

matcher:

  • Optimise when a value range is a superset of the slot bounds but the value slot frequency is not equal to the document count by replacing the lower bound with an empty string to make the bounds check very cheap.
  • Avoid creating a PostList tree for an empty shard. This avoids pointless work in an uncommon case, but also by handling this up front the code in PostList subclasses for query operators can assume the shard isn't empty which simplifies the code in several places.
  • Remove lingering handling for database backends without slot bounds since all backends have been required to support these since 1.4.11.
  • Fix collection frequency estimates for positional operators. This affects the weighting of positional operators in subqueries of OP_SYNONYM with weighting schemes which use the collection frequency.

glass backend:

  • xapian-check: Test decompress data in the spelling and synonym tables. We don't have structure checking for these tables, but we can at least fetch each entry and check for decompression problems.
  • Improve error if a block is detected as overwritten in WritableDatabase. Drop "are there multiple writers?" as it's rarely a useful question to ask since we started using fcntl() locking as it's now very hard to get multiple concurrent writers on a database. Instead suggest running xapian-check, which is probably the best next step for a user who hits this problem.

documentation:

  • Document precedence of NEAR and ADJ.
  • INSTALL: Note that MSVS 2022 works.

tools:

  • quest: Add --freqs option to show term frequencies.
  • xapian-delve -v: Show value slot bounds and freq

portability:

  • Fix to build with a C++20 compiler.
  • configure now probes for a declaration of strerror_r() before using it, since a declaration is required in C++ code.
  • MSVC: Use intrinsics to implement addition with overflow check.

comment:3 by Bruce Dubbs, 3 years ago

Resolution: fixed
Status: assignedclosed

Fixed at commits:

b3f68f50e2 Update to xapian-core-1.4.20.
faab1bd744 Update to poppler-22.07.0.
9e56b6bb16 Update to URI-5.11 (perl module).
Note: See TracTickets for help on using tickets.