[ANNOUNCE] INN 2.7.4 available

Russ Allbery rra at isc.org
Mon Jul 6 02:01:59 UTC 2026


Internet Systems Consortium is pleased to announce that a new minor
release of INN is available at:

    https://downloads.isc.org/isc/inn/inn-2.7.4.tar.gz

An OpenPGP signature of this release is present in the same directory. A
diff from the previous release are readily available either using Git
commands or from the GitHub release page at:

    https://github.com/InterNetNews/inn/releases/tag/2.7.4

This is a bug-fix and minor feature release over 2.7.3. Upgrading an
existing INN 2.7.3 installation is as simple as building INN 2.7.4,
running make update, and restarting innd and related programs.

Many thanks to Julien ÉLIE for preparing this release.

Changes in 2.7.4:

 * The speed of expireover has been greatly improved by the implementation
   of a Bloom filter (a probabilistic data structure used to efficiently
   test whether an element is a member of a set, without any false
   negative). Instead of checking every article in the overview database
   against the history file to detect orphaned entries, expireover now
   sequentially reads the history file at startup to build a Bloom filter,
   and makes its checks in that optimized data structure. On large news
   spools of billions of articles, expireover could take several weeks to
   complete; it now runs in a few minutes! This feature is activated by
   default and controlled by the new *expirebloomfp* parameter in
   inn.conf. Many thanks to Kevin Bowling for this improvement.

 * The speed of expire has also been drastically improved for large news
   spools thanks to the recording of every cancellation alongside the
   existing storage and overview deletions, so that expire can just drop
   matching history entries without doing per-article retrieval system
   calls, thus saving a good amount of time at billion-article scale. This
   feature contributed by Kevin Bowling is not enabled by default. See the
   documentation of *expiretombstone* in inn.conf for more details, as
   well as *nnrpdcheckart* which also makes use of the cancel tombstone
   log file.

 * Added four new parameters to ovsqlite.conf for the ovsqlite overview
   method: *mmapsize* to have SQLite read data via mmap instead of copying
   into its own page cache, *readercachesize* to set the SQLite in-memory
   page cache size for each nnrpd reader process, *walmode* to enable
   SQLite's Write-Ahead Logging journal mode and improve read performance
   when multiple nnrpd processes access the overview database
   simultaneously, and *walcheckpointthreshold* to parameterize when to
   perform checkpoints. See the ovsqlite(5) manual page for more details.
   Thanks to Kevin Bowling for all these enhancements!

 * When *laxmid* is set in the *syntaxchecks* parameter in inn.conf,
   Message-IDs without any "@" character are now accepted by innd.

 * Fixed very infrequent errors of memory mapping when updating the active
   file or using the tradindexed overview method, as well as when updating
   the history file with *nfswriter* set to true. Thanks to Chris Knipe
   for the bug report and to Richard Kettlewell for the patch.

 * Fixed the rotation of the perl-nocem.log file generated when syslog is
   not available or the -l flag used with perl-nocem: the contents of this
   log file was mistakenly appended to news.notice by scanlogs.

 * Fixed makehistory so that malformed input does not insert a bogus
   overview entry. Thanks to Kevin Bowling for the patch.

 * Following upstream rename from blacklist to blocklist, the
   --with-blacklist configure flag is renamed --with-blocklist for
   blocklistd support in FreeBSD 15 and NetBSD 10. For backward
   compatibility, both blacklist and blocklist libraries will be searched
   by the new --with-blocklist flag. Thanks to Jose Luis Duran for the
   information.

 * Added support for the ALPN TLS extension in nnrpd. Thanks to Roman
   Donchenko for this feature.

 * In consequence of the changes in the libinn(3) and libinnstorage(3)
   interfaces for the Bloom filter and overview improvements, both of
   these libraries have their SONAME bump in this release.

 * Various other minor bug fixes and documentation improvements.


More information about the inn-announce mailing list