Gitweb:
https://git.exim.org/exim.git/commitdiff/125f9554125112f8318f5cc10d368a8d521a805a
Commit: 125f9554125112f8318f5cc10d368a8d521a805a
Parent: c66a6edf7ba81ab9615cf3e31af1eb8cc48066eb
Author: Jeremy Harris <jgh146exb@???>
AuthorDate: Mon Jul 22 09:26:48 2024 +0100
Committer: Jeremy Harris <jgh146exb@???>
CommitDate: Mon Jul 22 09:54:22 2024 +0100
Docs: notes on DBM library changeovers
---
doc/doc-docbook/spec.xfpt | 17 +++++++++++++++++
doc/doc-txt/dbm.discuss.txt | 19 +++++++++++++++++++
2 files changed, 36 insertions(+)
diff --git a/doc/doc-docbook/spec.xfpt b/doc/doc-docbook/spec.xfpt
index 9a52502d2..8d61543cd 100644
--- a/doc/doc-docbook/spec.xfpt
+++ b/doc/doc-docbook/spec.xfpt
@@ -1764,6 +1764,12 @@ distributors have chosen to bundle different libraries with their packaged
versions. However, the more recent releases seem to have standardized on the
Berkeley DB library.
+.new
+Ownership of the Berkeley DB library has moved to a major corporation;
+development seems to have stalled and documentation is not freely available.
+This is probably not tenable for the long term use by Exim.
+.wen
+
Different DBM libraries have different conventions for naming the files they
use. When a program opens a file called &_dbmfile_&, there are several
possibilities:
@@ -1852,6 +1858,17 @@ DBMLIB=/usr/local/lib/db-4.1/libdb.a
There is further detailed discussion about the various DBM libraries in the
file &_doc/dbm.discuss.txt_& in the Exim distribution.
+.new
+When moving from one DBM library to another,
+for the hints databases it suffices to just remove all the files in the
+directory named &"db/"& under the spool directory.
+This is because hints are only for optimisation and will be rebuilt
+during normal operations.
+Non-hints DBM databases (used by &"dbm"& lookups in the configuration)
+will need individual rebuilds for the new DBM library.
+This is not done automatically
+.wen
+
.section "Pre-building configuration" "SECID25"
diff --git a/doc/doc-txt/dbm.discuss.txt b/doc/doc-txt/dbm.discuss.txt
index 50f068713..4f3622d69 100644
--- a/doc/doc-txt/dbm.discuss.txt
+++ b/doc/doc-txt/dbm.discuss.txt
@@ -153,6 +153,7 @@ Berkeley DB 1.8x
1.85 was the most widespread DB 1.x release; there is also a 1.86 bug-fix
release, but the belief is that the bugs it fixes will not affect Exim.
However, maintenance for 1.x releases has been phased out.
+Exim no loger supports these releases for current builds.
This dbm library can be called by Exim in one of two ways: via the ndbm
compatibility interface, or via its own native interface. There are two
@@ -206,6 +207,8 @@ the file name handed to it.
DB 2.x does not do any automatic locking of its own; it does have a set of
functions for various forms of locking, but Exim does not use them.
+Exim no longer supports these releases for current builds.
+
Berkeley DB 3.x
---------------
@@ -227,6 +230,20 @@ Berkeley DB 4.x
The 4.x series is a development of the 2.x and 3.x series, and the above
comments apply.
+Berkeley DB 5.x
+---------------
+
+The 5.x versions seem to be current in several Linux disributions
+as of writing (2024). Exim uses them under the assumption that the
+API is the same as the version 4.1 library.
+
+Berkeley DB 6+
+---------------
+
+These versions exist, but documentation does not seem to be available.
+Exim does not support them.
+
+
tdb
---
@@ -319,3 +336,5 @@ exists, just in case. Proceed as follows:
Philip Hazel
Last update: June 2002
+
+(+undates July 2024, jgh)
--
## subscription configuration (requires account):
##
https://lists.exim.org/mailman3/postorius/lists/exim-cvs.lists.exim.org/
## unsubscribe (doesn't require an account):
## exim-cvs-unsubscribe@???
## Exim details at
http://www.exim.org/
## Please use the Wiki with this list -
http://wiki.exim.org/