summaryrefslogtreecommitdiff
path: root/source3/smbd
diff options
context:
space:
mode:
authorVolker Lendecke <vl@samba.org>2009-07-13 17:04:29 +0200
committerVolker Lendecke <vl@samba.org>2009-07-15 10:55:20 +0200
commit8a17cd810fa6cbe7b11139ff0f6f24e7bacd318b (patch)
tree5f9be97803ea334fc85a16d5d3a647018e220482 /source3/smbd
parented87594e5fd3251f9cb3beaca06c8eee1dcd4ed2 (diff)
downloadsamba-8a17cd810fa6cbe7b11139ff0f6f24e7bacd318b.tar.gz
samba-8a17cd810fa6cbe7b11139ff0f6f24e7bacd318b.tar.bz2
samba-8a17cd810fa6cbe7b11139ff0f6f24e7bacd318b.zip
Make gencache more stable
This provides a compromise between stability and performance: gencache is a persistent database these days that for performance reasons can not use tdb transactions for all writes. This patch splits up gencache into gencache.tdb and gencache_notrans.tdb. gencache_notrans is used with CLEAR_IF_FIRST, writes to it don't use transactions. By default every 5 minutes and when a program exits, all entries from _notrans.tdb are transferred to gencache.tdb in one transaction.
Diffstat (limited to 'source3/smbd')
-rw-r--r--source3/smbd/server.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/source3/smbd/server.c b/source3/smbd/server.c
index 6951fac171..a1dec0327c 100644
--- a/source3/smbd/server.c
+++ b/source3/smbd/server.c
@@ -868,6 +868,7 @@ static void exit_server_common(enum server_exit_reason how,
if (am_parent) {
pidfile_unlink();
}
+ gencache_stabilize();
}
/* if we had any open SMB connections when we exited then we