summaryrefslogtreecommitdiff
path: root/NEWS.md
diff options
context:
space:
mode:
authorColin Watson <cjwatson@debian.org>2022-10-02 15:10:50 +0100
committerColin Watson <cjwatson@debian.org>2022-10-02 15:10:51 +0100
commit866c3571d34313c53193d5920de252f8c2c9af1e (patch)
treea086aa99853f0a109a7a72180ec0cf5c19635ceb /NEWS.md
parentd1a5cb5c4819580aa59cd5dd7ceefbdd8248c1be (diff)
mandb: Fully reorganize databases
This allows us to produce bitwise-identical databases regardless of the order in which pages were scanned (at least with GDBM). `gdbm_reorganize` isn't enough for this, probably because entries end up in different positions in hash buckets depending on insertion order; but reading in the entire database and writing it back out in sorted order seems to do the job with negligible cost. Fixes Debian bug #1010957. * src/mandb.c (reorganize): New function: read all the items from a database in sorted order and write them back out. (mandb): Stop calling `MYDBM_REORG`, which saved space after deletions but didn't help with reproducibility. (process_manpath): Call `reorganize` if any changes were made to a database. * libdb/mydbm.h (MYDBM_REORG): Remove macro. * NEWS.md: Document this.
Diffstat (limited to 'NEWS.md')
-rw-r--r--NEWS.md3
1 files changed, 3 insertions, 0 deletions
diff --git a/NEWS.md b/NEWS.md
index 72fb1f0c..970336a8 100644
--- a/NEWS.md
+++ b/NEWS.md
@@ -26,6 +26,9 @@ Improvements:
database.
* Extend rules for when to replace one database entry with another,
producing more stable behaviour.
+ * Fully reorganize databases after writing them, allowing the reproduction
+ of bitwise-identical databases regardless of scan order (at least with
+ GDBM).
man-db 2.10.2 (17 March 2022)
=============================