Skip to content

Commit

Permalink
xapian: update to 1.4.25. Changes:
Browse files Browse the repository at this point in the history
API:

* MSet::get_eset(): Don't fetch the collection frequency for each term unless
  we're using the Bo1EWeight expansion scheme which actually needs it.  In a
  simple test this reduced the time taken to do a search and generate expand
  terms by a third.  Partly addresses #264.

* QueryParser::parse_query(): Fix parse error when using FLAG_CJK_NGRAM (aka
  FLAG_NGRAMS) with a query string which has non-CJK followed by whitespace,
  CJK, and more non-CJK.  Patch from Robert Stepanek
  (https://github.com/xapian/xapian/pulls/331).

testsuite:

* unittest: Improve sparse file detection by using SEEK_HOLE, which is
  specified by POSIX and seems to be widely supported.  On platforms without it
  or on an FS with a > 128K block size we will skip the tests involving a 4GB
  file, but that's acceptable.  On ZFS st_blocks reports the number of blocks
  after compression and also lags behind when data has only been committed to
  the journal, which means our previous check based on st_blocks couldn't be
  made to work without potentially falsely detecting sparse file support.
  Fixes #823, reported by someplaceguy.

* apitest: Enable adddoc2 and adddoc5 testcases for sharded databases.  We
  now just skip the TermIterator::get_termfreq() checks in this case.

glass backend:

* Check Btree level value from disk is in range, which avoids potential out of
  range access on corrupt database.  Fixes #824, reported by group13.

* Reject invalid blocksize read from corrupted version file.  Throw
  DatabaseCorruptError if value is out of range or not a power of two.

* Optimise allterms iteration.  Most terms don't contain any zero bytes, and
  for such terms the key for the first chunk in the termlist table is just the
  termname so no decoding is needed when advancing the iterator.  This optimisation
  is 8.4% faster in a simple test of iterating allterms via xapian-delve.

* Compaction of an empty non-optional table now gives an empty output, whereas
  previous it was one block in size (8K by default).  This isn't important in
  general as the non-optional tables are not likely to be empty in a real
  database, but it's helpful for making small test database and it seems weird
  that compaction would make a database much larger in percentage terms in this
  edge case.

chert backend:

* Check Btree level value from disk is in range, which avoids potential out of
  range access on corrupt database.  Fixes #824, reported by group13.

build system:

* configure: DragonflyBSD automatically pulls in library dependencies, so set
  link_all_deplibs_CXX=no there.

documentation:

* Document allterms_begin() and termlist_begin() iteration order.  Thanks to
  Eric Wong for querying this.

* Document TermIterator::get_termfreq() quirk.  In the case of a TermIterator
  from termlist_begin() on a Document from a sharded database, you get term
  frequencies from just the shard.  Fixes #423

portability:

* Support building on platforms without AI_NUMERICSERV (e.g. macOS 10.5).
  Patch from Sergey Fedorov.
  • Loading branch information
schmonz committed Mar 8, 2024
1 parent 983c6b9 commit 3c9305d
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 11 deletions.
7 changes: 4 additions & 3 deletions textproc/xapian/Makefile.common
@@ -1,4 +1,4 @@
# $NetBSD: Makefile.common,v 1.22 2023/11/07 22:32:52 schmonz Exp $
# $NetBSD: Makefile.common,v 1.23 2024/03/08 19:00:54 schmonz Exp $
# used by textproc/csharp-xapian/Makefile
# used by textproc/lua-xapian/Makefile
# used by textproc/p5-Xapian/Makefile
Expand All @@ -9,7 +9,7 @@
# used by textproc/xapian/Makefile
# used by textproc/xapian-omega/Makefile

VERSION= 1.4.24
VERSION= 1.4.25
CATEGORIES= textproc
MASTER_SITES= http://oligarchy.co.uk/xapian/${VERSION}/
EXTRACT_SUFX= .tar.xz
Expand All @@ -18,6 +18,7 @@ LICENSE= gnu-gpl-v2

GNU_CONFIGURE= yes
USE_LIBTOOL= yes
USE_LANGUAGES= c c++11
USE_LANGUAGES= c c++
USE_CXX_FEATURES= c++11

.include "../../devel/zlib/buildlink3.mk"
8 changes: 4 additions & 4 deletions textproc/xapian/distinfo
@@ -1,8 +1,8 @@
$NetBSD: distinfo,v 1.50 2023/11/07 22:32:52 schmonz Exp $
$NetBSD: distinfo,v 1.51 2024/03/08 19:00:54 schmonz Exp $

BLAKE2s (xapian-core-1.4.24.tar.xz) = f86954a31d24fdf9169239e698d584a032b98e6ae085ca09d30358250ec37cb2
SHA512 (xapian-core-1.4.24.tar.xz) = 2b156dd90784264d6bf64e66aca559578f946c013bb52e14e56fcd96e9c2fece71c236735b13d2baad0d7f2d410dea3ae54c94cd80f735baf1071bafe2e5c01c
Size (xapian-core-1.4.24.tar.xz) = 3194164 bytes
BLAKE2s (xapian-core-1.4.25.tar.xz) = 75f04fbaac1ac9d629009c8dd37f53eb69c72f6fabc8b9e89266ddf43f37c113
SHA512 (xapian-core-1.4.25.tar.xz) = e8069f2cb75554978716a99580fb57fc73bbdd607c82394f53d07205d8c78fb59265004be0c676a6806bb2840a3933499dfc867e36a28855278569a0676d469d
Size (xapian-core-1.4.25.tar.xz) = 3205904 bytes
SHA1 (patch-common_errno__to__string.cc) = c5d9613e6676e1dcd3d9caabf113046d5e471454
SHA1 (patch-common_safesyssocket.h) = 6a619a91975283419d2c1ac70cf62e6b417fe981
SHA1 (patch-xapian-config.in) = 470d1de7f04b8b8817abbcf56b5b71a36948de97
8 changes: 4 additions & 4 deletions textproc/xapian/distinfo-bindings
@@ -1,8 +1,8 @@
$NetBSD: distinfo-bindings,v 1.28 2023/11/07 22:32:52 schmonz Exp $
$NetBSD: distinfo-bindings,v 1.29 2024/03/08 19:00:54 schmonz Exp $

BLAKE2s (xapian-bindings-1.4.24.tar.xz) = 4365ab3a2127d9105a05304e37f95cd495bafb69663a47ca4ddf75f116e66724
SHA512 (xapian-bindings-1.4.24.tar.xz) = e3d178679aaaf99efa1a19f764014f835783e72b057cb8c8a83eb4cb610e93bd4e6756410321770f6d7fa14986c71be19aaa140fb8267a848d4c8c96cc26d540
Size (xapian-bindings-1.4.24.tar.xz) = 1112744 bytes
BLAKE2s (xapian-bindings-1.4.25.tar.xz) = a87c0b38f9dd3530602b30017451383b7a286a4d19306a7a0a7769f08e68b397
SHA512 (xapian-bindings-1.4.25.tar.xz) = 119f62b53d487319e33aaf0c473e479a52b3831a46b23724188dada13f341e08facc7b79641c00ba7b0507c22b55c7b700182e65b5a195cd322be2098bcca183
Size (xapian-bindings-1.4.25.tar.xz) = 1076644 bytes
SHA1 (patch-configure) = 6e0525fb4747759e22b64a3852df71e76cc6773e
SHA1 (patch-lua_Makefile.in) = 7f1c5077f0d46dfdf33c2b65f144bb08d5031330
SHA1 (patch-ruby_Makefile.in) = ddbf3ca92b11ff6955d80f6a5609e3ce36798b0b
Expand Down

0 comments on commit 3c9305d

Please sign in to comment.