-$Cambridge: exim/doc/doc-txt/ChangeLog,v 1.201 2005/08/08 10:32:58 ph10 Exp $
+$Cambridge: exim/doc/doc-txt/ChangeLog,v 1.202 2005/08/08 10:48:26 ph10 Exp $
Change log file for Exim from version 4.21
-------------------------------------------
of the problem. Specifically, suggested +O2 rather than +O1 for the
HP-UX compiler.
+PH/19 Added sqlite_lock_timeout option (David Woodhouse's patch).
+
Exim version 4.52
-----------------
-$Cambridge: exim/doc/doc-txt/NewStuff,v 1.61 2005/08/02 15:19:20 ph10 Exp $
+$Cambridge: exim/doc/doc-txt/NewStuff,v 1.62 2005/08/08 10:48:26 ph10 Exp $
New Features in Exim
--------------------
The only character affected by the ${quote_sqlite: operator is a single
quote, which it doubles.
+ The SQLite library handles multiple simultaneous accesses to the database
+ internally. Multiple readers are permitted, but only one process can
+ update at once. Attempts to access the database while it is being updated
+ are rejected after a timeout period, during which the SQLite library
+ waits for the lock to be released. In Exim, the default timeout is set
+ to 5 seconds, but it can be changed by means of the sqlite_lock_timeout
+ option.
+
Note that you must set LOOKUP_SQLITE=yes in Local/Makefile in order to
obtain SQLite support, and you will also need to add -lsqlite3 to the
EXTRALIBS setting. And of course, you have to install SQLite on your
-$Cambridge: exim/doc/doc-txt/OptionLists.txt,v 1.9 2005/06/21 14:14:55 ph10 Exp $
+$Cambridge: exim/doc/doc-txt/OptionLists.txt,v 1.10 2005/08/08 10:48:26 ph10 Exp $
LISTS OF EXIM OPTIONS
---------------------
spamd_address string + main 4.50 with content scan
split_spool_directory boolean false main 1.70
spool_directory string ++ main
+sqlite_lock_timeout time 5s main 4.53
srv_fail_domains domain list unset dnslookup 4.43
strip_excess_angle_brackets boolean false main
strip_trailing_dot boolean false main
-# $Cambridge: exim/src/OS/Makefile-HP-UX,v 1.3 2005/08/08 10:32:58 ph10 Exp $
+# $Cambridge: exim/src/OS/Makefile-HP-UX,v 1.4 2005/08/08 10:48:27 ph10 Exp $
# Exim: OS-specific make file for HP-UX later than 9
# HP ANSI C compiler
#CC=cc
#CFLAGS=+O2 +Onolimit -z -D_XOPEN_SOURCE_EXTENDED
+# Users of the A.06.00 compiler might need to use +O1 rather than +O2 as
+# there have been some problems reported with this compiler with +O2 set.
+
# gcc
CFLAGS=-O -Wl,-z -D_XOPEN_SOURCE_EXTENDED
-/* $Cambridge: exim/src/src/globals.c,v 1.33 2005/08/02 15:19:20 ph10 Exp $ */
+/* $Cambridge: exim/src/src/globals.c,v 1.34 2005/08/08 10:48:27 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
uschar *pgsql_servers = NULL;
#endif
+#ifdef LOOKUP_SQLITE
+int sqlite_lock_timeout = 5;
+#endif
+
#ifdef SUPPORT_MOVE_FROZEN_MESSAGES
BOOL move_frozen_messages = FALSE;
#endif
-/* $Cambridge: exim/src/src/globals.h,v 1.24 2005/08/02 15:19:20 ph10 Exp $ */
+/* $Cambridge: exim/src/src/globals.h,v 1.25 2005/08/08 10:48:27 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
extern uschar *pgsql_servers; /* List of servers and connect info */
#endif
+#ifdef LOOKUP_SQLITE
+extern int sqlite_lock_timeout; /* Internal lock waiting timeout */
+#endif
+
#ifdef SUPPORT_MOVE_FROZEN_MESSAGES
extern BOOL move_frozen_messages; /* Get them out of the normal directory */
#endif
-/* $Cambridge: exim/src/src/lookups/sqlite.c,v 1.1 2005/08/01 13:20:28 ph10 Exp $ */
+/* $Cambridge: exim/src/src/lookups/sqlite.c,v 1.2 2005/08/08 10:48:27 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
debug_printf("Error opening database: %s\n", *errmsg);
}
+sqlite3_busy_timeout(db, 1000 * sqlite_lock_timeout);
return db;
}
-/* $Cambridge: exim/src/src/readconf.c,v 1.11 2005/06/27 14:29:43 ph10 Exp $ */
+/* $Cambridge: exim/src/src/readconf.c,v 1.12 2005/08/08 10:48:27 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
#endif
{ "split_spool_directory", opt_bool, &split_spool_directory },
{ "spool_directory", opt_stringptr, &spool_directory },
+#ifdef LOOKUP_SQLITE
+ { "sqlite_lock_timeout", opt_int, &sqlite_lock_timeout },
+#endif
#ifdef EXPERIMENTAL_SRS
{ "srs_config", opt_stringptr, &srs_config },
{ "srs_hashlength", opt_int, &srs_hashlength },