summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Mailman/HyperArch.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/Mailman/HyperArch.py b/Mailman/HyperArch.py
index ca85897d3..55a70298f 100644
--- a/Mailman/HyperArch.py
+++ b/Mailman/HyperArch.py
@@ -457,10 +457,18 @@ class HyperArchive(pipermail.T):
# so we're leavin' the perms wide open from here on out
#
ou = os.umask(0)
+ #
+ # can't init the database while other
+ # processes are writing to it!
+ # XXX TODO- implement native locking
+ # with mailman's flock module for HyperDatabase.HyperDatabase
+ #
+ self.GetArchLock()
pipermail.T.__init__(self,
maillist.archive_directory,
reload=1,
database=HyperDatabase.HyperDatabase(maillist.archive_directory))
+ self.DropArchLock()
if hasattr(self.maillist,'archive_volume_frequency'):
if self.maillist.archive_volume_frequency == 0: