Code

Handle non-existence of db files in the other backends (code from anydbm).
authorrichard <richard@57a73879-2fb5-44c3-a270-3262357dd7e2>
Mon, 30 Jul 2001 02:36:23 +0000 (02:36 +0000)
committerrichard <richard@57a73879-2fb5-44c3-a270-3262357dd7e2>
Mon, 30 Jul 2001 02:36:23 +0000 (02:36 +0000)
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@158 57a73879-2fb5-44c3-a270-3262357dd7e2

roundup/backends/back_bsddb.py
roundup/backends/back_bsddb3.py

index fde8610beb62509cb11395bc50398c018341c666..06e321ebdb4075e3840df5183357c6b1febb2ffa 100644 (file)
@@ -1,4 +1,4 @@
-#$Id: back_bsddb.py,v 1.5 2001-07-30 01:41:36 richard Exp $
+#$Id: back_bsddb.py,v 1.6 2001-07-30 02:36:23 richard Exp $
 
 import bsddb, os, marshal
 from roundup import hyperdb, date
@@ -66,7 +66,10 @@ class Database(hyperdb.Database):
             multiple actions
         '''
         path = os.path.join(os.getcwd(), self.dir, 'nodes.%s'%classname)
-        return bsddb.btopen(path, mode)
+        if os.path.exists(path):
+            return bsddb.btopen(path, mode)
+        else:
+            return bsddb.btopen(path, 'n')
 
     #
     # Nodes
@@ -199,6 +202,9 @@ class Database(hyperdb.Database):
 
 #
 #$Log: not supported by cvs2svn $
+#Revision 1.5  2001/07/30 01:41:36  richard
+#Makes schema changes mucho easier.
+#
 #Revision 1.4  2001/07/23 08:25:33  richard
 #more handling of bad journals
 #
index 581e7bcf3d8549981641b93657987fa1f5ce9bcf..9c14e3f347adedd79ce4b8e64abdd20357bec012 100644 (file)
@@ -1,4 +1,4 @@
-#$Id: back_bsddb3.py,v 1.2 2001-07-30 01:41:36 richard Exp $
+#$Id: back_bsddb3.py,v 1.3 2001-07-30 02:36:23 richard Exp $
 
 import bsddb3, os, marshal
 from roundup import hyperdb, date
@@ -66,7 +66,10 @@ class Database(hyperdb.Database):
             multiple actions
         '''
         path = os.path.join(os.getcwd(), self.dir, 'nodes.%s'%classname)
-        return bsddb3.btopen(path, mode)
+        if os.path.exists(path):
+            return bsddb3.btopen(path, mode)
+        else:
+            return bsddb3.btopen(path, 'n')
 
     #
     # Nodes
@@ -199,6 +202,9 @@ class Database(hyperdb.Database):
 
 #
 #$Log: not supported by cvs2svn $
+#Revision 1.2  2001/07/30 01:41:36  richard
+#Makes schema changes mucho easier.
+#
 #Revision 1.1  2001/07/24 04:26:03  anthonybaxter
 #bsddb3 implementation. For now, it's the bsddb implementation with a "3"
 #added in crayon.