[Commits] (vajda) - repository now able to run in diskless mode with -ramdb

commits at osafoundation.org commits at osafoundation.org
Tue May 18 20:19:53 PDT 2004


Commit by: vajda
Modified files:
chandler/application/Application.py 1.217 1.218
chandler/repository/persistence/DBContainer.py 1.11 1.12
chandler/repository/persistence/FileContainer.py 1.9 1.10
chandler/repository/persistence/Repository.py 1.72 1.73
chandler/repository/persistence/XMLRepository.py 1.72 1.73
chandler/repository/persistence/XMLRepositoryView.py 1.34 1.35
chandler/repository/remote/RemoteRepository.py 1.2 1.3
chandler/repository/tests/RepositoryTestCase.py 1.5 1.6
chandler/repository/tests/TestReferenceAttributes.py 1.16 1.17

Log message:
   - repository now able to run in diskless mode with -ramdb


ViewCVS links:
http://cvs.osafoundation.org/index.cgi/chandler/application/Application.py.diff?r1=text&tr1=1.217&r2=text&tr2=1.218
http://cvs.osafoundation.org/index.cgi/chandler/repository/persistence/DBContainer.py.diff?r1=text&tr1=1.11&r2=text&tr2=1.12
http://cvs.osafoundation.org/index.cgi/chandler/repository/persistence/FileContainer.py.diff?r1=text&tr1=1.9&r2=text&tr2=1.10
http://cvs.osafoundation.org/index.cgi/chandler/repository/persistence/Repository.py.diff?r1=text&tr1=1.72&r2=text&tr2=1.73
http://cvs.osafoundation.org/index.cgi/chandler/repository/persistence/XMLRepository.py.diff?r1=text&tr1=1.72&r2=text&tr2=1.73
http://cvs.osafoundation.org/index.cgi/chandler/repository/persistence/XMLRepositoryView.py.diff?r1=text&tr1=1.34&r2=text&tr2=1.35
http://cvs.osafoundation.org/index.cgi/chandler/repository/remote/RemoteRepository.py.diff?r1=text&tr1=1.2&r2=text&tr2=1.3
http://cvs.osafoundation.org/index.cgi/chandler/repository/tests/RepositoryTestCase.py.diff?r1=text&tr1=1.5&r2=text&tr2=1.6
http://cvs.osafoundation.org/index.cgi/chandler/repository/tests/TestReferenceAttributes.py.diff?r1=text&tr1=1.16&r2=text&tr2=1.17

Index: chandler/repository/persistence/Repository.py
diff -u chandler/repository/persistence/Repository.py:1.72 chandler/repository/persistence/Repository.py:1.73
--- chandler/repository/persistence/Repository.py:1.72	Tue May 18 00:26:06 2004
+++ chandler/repository/persistence/Repository.py	Tue May 18 20:19:20 2004
@@ -1,10 +1,10 @@
 
-__revision__  = "$Revision: 1.72 $"
-__date__      = "$Date: 2004/05/18 07:26:06 $"
+__revision__  = "$Revision: 1.73 $"
+__date__      = "$Date: 2004/05/19 03:19:20 $"
 __copyright__ = "Copyright (c) 2002 Open Source Applications Foundation"
 __license__   = "http://osafoundation.org/Chandler_0.1_license_terms.htm"
 
-import sys, os, os.path, threading, logging, heapq
+import os, os.path, threading, logging, heapq
 import libxml2
 
 from repository.util.UUID import UUID
@@ -52,29 +52,29 @@
         self._threaded = ThreadLocal()
         self._notifications = []
 
-    def create(self):
+    def create(self, **kwds):
 
-        self._init()
+        self._init(**kwds)
         
-    def open(self, create=False):
+    def open(self, **kwds):
 
-        self._init()
+        self._init(**kwds)
 
     def delete(self):
         
         raise NotImplementedError, "Repository.delete"
 
-    def _init(self):
+    def _init(self, **kwds):
 
         self._status = 0
         self.logger = logging.getLogger('repository')
 
-        if '-debug' in sys.argv:
+        if kwds.get('debug', False):
             self.logger.setLevel(logging.DEBUG)
         else:
             self.logger.setLevel(logging.INFO)
 
-        if '-stderr' in sys.argv or not self.logger.root.handlers:
+        if kwds.get('stderr', False) or not self.logger.root.handlers:
             if not self.logger.handlers:
                 self.logger.addHandler(logging.StreamHandler())
             
@@ -95,6 +95,9 @@
     def closeView(self, purge=False):
         self.view.close()
 
+    def openView(self):
+        self.view.open()
+
     def commit(self, purge=False):
 
         if not self.isOpen():
@@ -238,8 +241,13 @@
         raise NotImplementedError, "RepositoryView.getTextType"
 
     def closeView(self):
-
         self.close()
+
+    def openView(self):
+        self.open()
+
+    def open(self):
+        pass
 
     def close(self):
 

Index: chandler/repository/persistence/XMLRepository.py
diff -u chandler/repository/persistence/XMLRepository.py:1.72 chandler/repository/persistence/XMLRepository.py:1.73
--- chandler/repository/persistence/XMLRepository.py:1.72	Fri May 14 19:36:24 2004
+++ chandler/repository/persistence/XMLRepository.py	Tue May 18 20:19:20 2004
@@ -1,6 +1,6 @@
 
-__revision__  = "$Revision: 1.72 $"
-__date__      = "$Date: 2004/05/15 02:36:24 $"
+__revision__  = "$Revision: 1.73 $"
+__date__      = "$Date: 2004/05/19 03:19:20 $"
 __copyright__ = "Copyright (c) 2002 Open Source Applications Foundation"
 __license__   = "http://osafoundation.org/Chandler_0.1_license_terms.htm"
 
@@ -26,7 +26,7 @@
 
 from bsddb.db import DBEnv, DB, DBError
 from bsddb.db import DB_CREATE, DB_BTREE, DB_THREAD, DB_LOCK_WRITE
-from bsddb.db import DB_RECOVER, DB_RECOVER_FATAL, DB_LOCK_MINLOCKS
+from bsddb.db import DB_RECOVER, DB_RECOVER_FATAL, DB_PRIVATE, DB_LOCK_MINLOCKS
 from bsddb.db import DB_INIT_MPOOL, DB_INIT_LOCK, DB_INIT_TXN, DB_DIRTY_READ
 from bsddb.db import DBRunRecoveryError, DBNoSuchFileError, DBNotFoundError
 from bsddb.db import DBLockDeadlockError
@@ -47,27 +47,36 @@
         super(XMLRepository, self).__init__(dbHome)
         self._env = None
         
-    def create(self):
+    def create(self, **kwds):
 
         if not self.isOpen():
-            super(XMLRepository, self).create()
-            self._create()
+            super(XMLRepository, self).create(**kwds)
+            self._create(**kwds)
             self._status |= self.OPEN
 
-    def _create(self):
+    def _create(self, **kwds):
+
+        ramdb = kwds.get('ramdb', False)
+
+        if not ramdb:
+            if not os.path.exists(self.dbHome):
+                os.makedirs(self.dbHome)
+            elif not os.path.isdir(self.dbHome):
+                raise ValueError, "%s is not a directory" %(self.dbHome)
+            else:
+                self.delete()
 
-        if not os.path.exists(self.dbHome):
-            os.makedirs(self.dbHome)
-        elif not os.path.isdir(self.dbHome):
-            raise ValueError, "%s exists but is not a directory" %(self.dbHome)
-        else:
-            self.delete()
-        
         self._env = self._createEnv()
-        self._env.open(self.dbHome, DB_CREATE | self.OPEN_FLAGS, 0)
+
+        if ramdb:
+            flags = DB_INIT_MPOOL | DB_PRIVATE | DB_THREAD
+        else:
+            flags = self.OPEN_FLAGS
+        self._env.open(self.dbHome, DB_CREATE | flags, 0)
 
         self.store = self._createStore()
-        self.store.open(True)
+        kwds['create'] = True
+        self.store.open(**kwds)
 
     def _createStore(self):
 
@@ -92,14 +101,17 @@
                         os.remove(f)
         os.path.walk(self.dbHome, purge, None)
 
-    def open(self, create=False, recover=False):
+    def open(self, **kwds):
 
-        if not self.isOpen():
-            super(XMLRepository, self).open()
+        if kwds.get('ramdb', False):
+            self.create(**kwds)
+
+        elif not self.isOpen():
+            super(XMLRepository, self).open(**kwds)
             self._env = self._createEnv()
             
             try:
-                if recover:
+                if kwds.get('recover', False):
                     before = datetime.now()
                     self._env.open(self.dbHome,
                                    DB_RECOVER | DB_CREATE | self.OPEN_FLAGS, 0)
@@ -110,11 +122,12 @@
                     self._env.open(self.dbHome, self.OPEN_FLAGS, 0)
 
                 self.store = self._createStore()
-                self.store.open(False)
+                kwds['create'] = False
+                self.store.open(**kwds)
 
             except DBNoSuchFileError:
-                if create:
-                    self._create()
+                if kwds.get('create', False):
+                    self._create(**kwds)
                 else:
                     raise
 
@@ -140,18 +153,22 @@
 
 class XMLContainer(object):
 
-    def __init__(self, store, name, txn, create):
+    def __init__(self, store, name, txn, **kwds):
 
         super(XMLContainer, self).__init__()
         
         self.store = store
-        self._xml = XmlContainer(store.env, name)
         self._filename = name
+
+        if kwds.get('ramdb', False):
+            name = ''
+
+        self._xml = XmlContainer(store.env, name)
         self.version = "%d.%d.%d" %(self._xml.get_version_major(),
                                     self._xml.get_version_minor(),
                                     self._xml.get_version_patch())
             
-        if create:
+        if kwds.get('create', False):
             self._xml.open(txn, DB_CREATE | DB_DIRTY_READ | DB_THREAD)
             self._xml.addIndex(txn, "", "uuid",
                                "node-attribute-equality-string")
@@ -324,23 +341,24 @@
         self._threaded = ThreadLocal()
         super(XMLStore, self).__init__(repository)
         
-    def open(self, create=False):
+    def open(self, **kwds):
 
+        self._ramdb = kwds.get('ramdb', False)
         txnStarted = False
         
         try:
             txnStarted = self.startTransaction()
             txn = self.txn
                 
-            self._data = XMLContainer(self, "__data__", txn, create)
-            self._refs = RefContainer(self, "__refs__", txn, create)
-            self._names = NamesContainer(self, "__names__", txn, create)
-            self._versions = VerContainer(self, "__versions__", txn, create)
-            self._history = HistContainer(self, "__history__", txn, create)
-            self._text = FileContainer(self, "__text__", txn, create)
-            self._binary = FileContainer(self, "__binary__", txn, create)
-            self._blocks = BlockContainer(self, "__blocks__", txn, create)
-            self._index = IndexContainer(self, "__index__", txn, create)
+            self._data = XMLContainer(self, "__data__", txn, **kwds)
+            self._refs = RefContainer(self, "__refs__", txn, **kwds)
+            self._names = NamesContainer(self, "__names__", txn, **kwds)
+            self._versions = VerContainer(self, "__versions__", txn, **kwds)
+            self._history = HistContainer(self, "__history__", txn, **kwds)
+            self._text = FileContainer(self, "__text__", txn, **kwds)
+            self._binary = FileContainer(self, "__binary__", txn, **kwds)
+            self._blocks = BlockContainer(self, "__blocks__", txn, **kwds)
+            self._index = IndexContainer(self, "__index__", txn, **kwds)
         finally:
             if txnStarted:
                 self.commitTransaction()
@@ -457,9 +475,12 @@
 
     def startTransaction(self):
 
-        if self.txn is None:
-            self.txn = self.repository._env.txn_begin(None, DB_DIRTY_READ)
-            return True
+        if not self._ramdb:
+            if self.txn is None:
+                self.txn = self.repository._env.txn_begin(None, DB_DIRTY_READ)
+                return True
+        else:
+            self.txn = None
 
         return False
 
@@ -538,13 +559,18 @@
 
     def acquireLock(self):
 
-        repository = self.repository
-        return repository._env.lock_get(self.lockId, repository.itsUUID._uuid,
-                                        DB_LOCK_WRITE)
+        if not self._ramdb:
+            repository = self.repository
+            return repository._env.lock_get(self.lockId,
+                                            repository.itsUUID._uuid,
+                                            DB_LOCK_WRITE)
+
+        return None
 
     def releaseLock(self, lock):
 
-        self.repository._env.lock_put(lock)
+        if lock is not None:
+            self.repository._env.lock_put(lock)
         return None
 
     def saveItem(self, xml, uuid, version, currPN, origPN, status):

Index: chandler/repository/tests/RepositoryTestCase.py
diff -u chandler/repository/tests/RepositoryTestCase.py:1.5 chandler/repository/tests/RepositoryTestCase.py:1.6
--- chandler/repository/tests/RepositoryTestCase.py:1.5	Tue May 11 13:23:33 2004
+++ chandler/repository/tests/RepositoryTestCase.py	Tue May 18 20:19:22 2004
@@ -1,23 +1,25 @@
 """
 A base class for repository testing
 """
-__revision__  = "$Revision: 1.5 $"
-__date__      = "$Date: 2004/05/11 20:23:33 $"
+__revision__  = "$Revision: 1.6 $"
+__date__      = "$Date: 2004/05/19 03:19:22 $"
 __copyright__ = "Copyright (c) 2003 Open Source Applications Foundation"
 __license__   = "http://osafoundation.org/Chandler_0.1_license_terms.htm"
 
-import unittest, os, sys
+from unittest import TestCase
+import os, sys
 
 from repository.persistence.XMLRepository import XMLRepository
 
-class RepositoryTestCase(unittest.TestCase):
+class RepositoryTestCase(TestCase):
 
-    def setUp(self):
+    def setUp(self, ramdb=False):
+        self.ramdb = ramdb
         self.rootdir = os.environ['CHANDLERHOME']
         self.testdir = os.path.join(self.rootdir, 'chandler', 'repository',
                                     'tests')
         self.rep = XMLRepository(os.path.join(self.testdir, '__repository__'))
-        self.rep.create()
+        self.rep.create(ramdb=self.ramdb)
         schemaPack = os.path.join(self.rootdir, 'chandler', 'repository',
                                   'packs', 'schema.pack')
         self.rep.loadPack(schemaPack)
@@ -25,13 +27,20 @@
 
     def tearDown(self):
         self.rep.close()
-        self.rep.delete()
+        if not self.ramdb:
+            self.rep.delete()
 
     def _reopenRepository(self):
         self.rep.commit()
-        self.rep.close()
-        self.rep = XMLRepository(os.path.join(self.testdir, '__repository__'))
-        self.rep.open()
+
+        if self.ramdb:
+            self.rep.closeView()
+            self.rep.openView()
+        else:
+            self.rep.close()
+            self.rep = XMLRepository(os.path.join(self.testdir,
+                                                  '__repository__'))
+            self.rep.open()
 
     def _find(self, item):
         return self.rep.find(item)

Index: chandler/application/Application.py
diff -u chandler/application/Application.py:1.217 chandler/application/Application.py:1.218
--- chandler/application/Application.py:1.217	Tue May 11 13:20:39 2004
+++ chandler/application/Application.py	Tue May 18 20:19:19 2004
@@ -1,5 +1,5 @@
-__version__ = "$Revision: 1.217 $"
-__date__ = "$Date: 2004/05/11 20:20:39 $"
+__version__ = "$Revision: 1.218 $"
+__date__ = "$Date: 2004/05/19 03:19:19 $"
 __copyright__ = "Copyright (c) 2003 Open Source Applications Foundation"
 __license__ = "http://osafoundation.org/Chandler_0.1_license_terms.htm"
 
@@ -198,10 +198,15 @@
                                       "__repository__")
         Globals.repository = XMLRepository(repositoryPath)
 
+        kwds = { 'stderr': '-stderr' in sys.argv,
+                 'ramdb': '-ramdb' in sys.argv,
+                 'create': True,
+                 'recover': True }
+
         if '-create' in sys.argv:
-            Globals.repository.create()
+            Globals.repository.create(**kwds)
         else:
-            Globals.repository.open(create=True, recover=True)
+            Globals.repository.open(**kwds)
 
         if not Globals.repository.find('//Packs/Schema'):
             """

Index: chandler/repository/persistence/DBContainer.py
diff -u chandler/repository/persistence/DBContainer.py:1.11 chandler/repository/persistence/DBContainer.py:1.12
--- chandler/repository/persistence/DBContainer.py:1.11	Fri May 14 19:36:24 2004
+++ chandler/repository/persistence/DBContainer.py	Tue May 18 20:19:20 2004
@@ -1,6 +1,6 @@
 
-__revision__  = "$Revision: 1.11 $"
-__date__      = "$Date: 2004/05/15 02:36:24 $"
+__revision__  = "$Revision: 1.12 $"
+__date__      = "$Date: 2004/05/19 03:19:20 $"
 __copyright__ = "Copyright (c) 2002 Open Source Applications Foundation"
 __license__   = "http://osafoundation.org/Chandler_0.1_license_terms.htm"
 
@@ -18,21 +18,27 @@
 
 class DBContainer(object):
 
-    def __init__(self, store, name, txn, create):
+    def __init__(self, store, name, txn, **kwds):
 
         super(DBContainer, self).__init__()
 
         self.store = store
         self._db = DB(store.env)
         self._filename = name
+        
+        if kwds.get('ramdb', False):
+            self._flags = 0
+            name = None
+        else:
+            self._flags = DB_DIRTY_READ
             
-        if create:
+        if kwds.get('create', False):
             self._db.open(filename = name, dbtype = DB_BTREE,
-                          flags = DB_CREATE | DB_DIRTY_READ | DB_THREAD,
+                          flags = DB_CREATE | DB_THREAD | self._flags,
                           txn = txn)
         else:
             self._db.open(filename = name, dbtype = DB_BTREE,
-                          flags = DB_DIRTY_READ | DB_THREAD,
+                          flags = DB_THREAD | self._flags,
                           txn = txn)
 
     def close(self):
@@ -61,11 +67,11 @@
 
     def get(self, key):
 
-        return self._db.get(key, txn=self.store.txn, flags=DB_DIRTY_READ)
+        return self._db.get(key, txn=self.store.txn, flags=self._flags)
 
     def cursor(self):
 
-        return self._db.cursor(txn=self.store.txn, flags=DB_DIRTY_READ)
+        return self._db.cursor(txn=self.store.txn, flags=self._flags)
 
     def _logDL(self, n):
 
@@ -166,7 +172,7 @@
                 cursor = self.cursor()
 
                 try:
-                    value = cursor.set_range(cursorKey, flags=DB_DIRTY_READ)
+                    value = cursor.set_range(cursorKey, flags=self._flags)
                 except DBNotFoundError:
                     return None
                 except DBLockDeadlockError:
@@ -230,7 +236,7 @@
             key = item._uuid._uuid
 
             try:
-                value = cursor.set_range(key, flags=DB_DIRTY_READ)
+                value = cursor.set_range(key, flags=self._flags)
                 while value is not None and value[0].startswith(key):
                     cursor.delete()
                     value = cursor.next()
@@ -244,10 +250,10 @@
 
 class VerContainer(DBContainer):
 
-    def __init__(self, store, name, txn, create):
+    def __init__(self, store, name, txn, **kwds):
 
-        super(VerContainer, self).__init__(store, name, txn, create)
-        if create:
+        super(VerContainer, self).__init__(store, name, txn, **kwds)
+        if kwds.get('create', False):
             self._db.put(Repository.itsUUID._uuid, pack('>l', 0), txn)
             self._db.put(self.itsUUID._uuid, UUID()._uuid, txn)
 
@@ -292,7 +298,7 @@
                 
                 try:
                     key = uuid._uuid
-                    value = cursor.set_range(key, flags=DB_DIRTY_READ)
+                    value = cursor.set_range(key, flags=self._flags)
                 except DBNotFoundError:
                     return None
                 except DBLockDeadlockError:
@@ -338,7 +344,7 @@
 
                 try:
                     key = uuid._uuid
-                    value = cursor.set_range(key, flags=DB_DIRTY_READ)
+                    value = cursor.set_range(key, flags=self._flags)
                 except DBNotFoundError:
                     return None
                 except DBLockDeadlockError:
@@ -398,7 +404,7 @@
 
             try:
                 value = cursor.set_range(pack('>l', oldVersion + 1),
-                                         flags=DB_DIRTY_READ)
+                                         flags=self._flags)
             except DBNotFoundError:
                 return
 
@@ -451,7 +457,7 @@
                 cursor = self.cursor()
                 
                 try:
-                    value = cursor.set_range(cursorKey, flags=DB_DIRTY_READ)
+                    value = cursor.set_range(cursorKey, flags=self._flags)
                 except DBNotFoundError:
                     return None
                 except DBLockDeadlockError:

Index: chandler/repository/persistence/FileContainer.py
diff -u chandler/repository/persistence/FileContainer.py:1.9 chandler/repository/persistence/FileContainer.py:1.10
--- chandler/repository/persistence/FileContainer.py:1.9	Sun Feb  1 19:08:34 2004
+++ chandler/repository/persistence/FileContainer.py	Tue May 18 20:19:20 2004
@@ -1,6 +1,6 @@
 
-__revision__  = "$Revision: 1.9 $"
-__date__      = "$Date: 2004/02/02 03:08:34 $"
+__revision__  = "$Revision: 1.10 $"
+__date__      = "$Date: 2004/05/19 03:19:20 $"
 __copyright__ = "Copyright (c) 2002 Open Source Applications Foundation"
 __license__   = "http://osafoundation.org/Chandler_0.1_license_terms.htm"
 
@@ -8,8 +8,6 @@
 from cStringIO import StringIO
 from time import time
 
-from bsddb.db import DB_DIRTY_READ
-
 from PyLucene import DbDirectory, IndexWriter, StandardAnalyzer
 from PyLucene import IndexSearcher, QueryParser
 from PyLucene import Document, Field
@@ -65,7 +63,7 @@
                 cursor = self.cursor()
             
                 try:
-                    value = cursor.set_range('', flags=DB_DIRTY_READ,
+                    value = cursor.set_range('', flags=self._flags,
                                              dlen=0, doff=0)
                 except DBNotFoundError:
                     return results
@@ -201,7 +199,7 @@
             key = self.getKey()._uuid
             
             try:
-                value = cursor.set_range(key, flags=DB_DIRTY_READ,
+                value = cursor.set_range(key, flags=self._flags,
                                          dlen=0, doff=0)
             except DBNotFoundError:
                 pass
@@ -420,13 +418,13 @@
 
 class IndexContainer(FileContainer):
 
-    def __init__(self, store, name, txn, create):
+    def __init__(self, store, name, txn, **kwds):
 
-        super(IndexContainer, self).__init__(store, name, txn, create)
+        super(IndexContainer, self).__init__(store, name, txn, **kwds)
 
-        if create:
+        if kwds.get('create', False):
             directory = DbDirectory(txn, self._db, store._blocks._db,
-                                    DB_DIRTY_READ)
+                                    self._flags)
             indexWriter = IndexWriter(directory, StandardAnalyzer(), True)
             indexWriter.close()
 
@@ -438,7 +436,7 @@
 
         return IndexWriter(DbDirectory(self.store.txn,
                                        self._db, self.store._blocks._db,
-                                       DB_DIRTY_READ),
+                                       self._flags),
                            StandardAnalyzer(), False)
 
     def indexDocument(self, indexWriter, reader,
@@ -461,7 +459,7 @@
 
         directory = DbDirectory(self.store.txn,
                                 self._db, self.store._blocks._db,
-                                DB_DIRTY_READ)
+                                self._flags)
         searcher = IndexSearcher(directory)
         query = QueryParser.parse(query, "contents", StandardAnalyzer())
         hits = searcher.search(query)

Index: chandler/repository/persistence/XMLRepositoryView.py
diff -u chandler/repository/persistence/XMLRepositoryView.py:1.34 chandler/repository/persistence/XMLRepositoryView.py:1.35
--- chandler/repository/persistence/XMLRepositoryView.py:1.34	Thu May 13 23:34:23 2004
+++ chandler/repository/persistence/XMLRepositoryView.py	Tue May 18 20:19:20 2004
@@ -1,6 +1,6 @@
 
-__revision__  = "$Revision: 1.34 $"
-__date__      = "$Date: 2004/05/14 06:34:23 $"
+__revision__  = "$Revision: 1.35 $"
+__date__      = "$Date: 2004/05/19 03:19:20 $"
 __copyright__ = "Copyright (c) 2002 Open Source Applications Foundation"
 __license__   = "http://osafoundation.org/Chandler_0.1_license_terms.htm"
 
@@ -137,7 +137,7 @@
 
         if self._indexWriter is None:
             store = self.repository.store
-            if store.txn is None:
+            if not store._ramdb and store.txn is None:
                 raise RepositoryError, "Can't index outside transaction"
             self._indexWriter = store._index.getIndexWriter()
 

Index: chandler/repository/remote/RemoteRepository.py
diff -u chandler/repository/remote/RemoteRepository.py:1.2 chandler/repository/remote/RemoteRepository.py:1.3
--- chandler/repository/remote/RemoteRepository.py:1.2	Fri May 14 19:36:25 2004
+++ chandler/repository/remote/RemoteRepository.py	Tue May 18 20:19:21 2004
@@ -1,6 +1,6 @@
 
-__revision__  = "$Revision: 1.2 $"
-__date__      = "$Date: 2004/05/15 02:36:25 $"
+__revision__  = "$Revision: 1.3 $"
+__date__      = "$Date: 2004/05/19 03:19:21 $"
 __copyright__ = "Copyright (c) 2002 Open Source Applications Foundation"
 __license__   = "http://osafoundation.org/Chandler_0.1_license_terms.htm"
 
@@ -38,9 +38,9 @@
         super(RemoteStore, self).__init__(repository)
         self.transport = transport
 
-    def open(self, create=False):
+    def open(self, **kwds):
 
-        super(RemoteStore, self).open(create=create)
+        super(RemoteStore, self).open(**kwds)
         self.transport.open()
 
     def close(self):

Index: chandler/repository/tests/TestReferenceAttributes.py
diff -u chandler/repository/tests/TestReferenceAttributes.py:1.16 chandler/repository/tests/TestReferenceAttributes.py:1.17
--- chandler/repository/tests/TestReferenceAttributes.py:1.16	Tue Mar 23 21:08:55 2004
+++ chandler/repository/tests/TestReferenceAttributes.py	Tue May 18 20:19:22 2004
@@ -2,8 +2,8 @@
 Unit tests for reference attributes
 """
 
-__revision__  = "$Revision: 1.16 $"
-__date__      = "$Date: 2004/03/24 05:08:55 $"
+__revision__  = "$Revision: 1.17 $"
+__date__      = "$Date: 2004/05/19 03:19:22 $"
 __copyright__ = "Copyright (c) 2003 Open Source Applications Foundation"
 __license__   = "http://osafoundation.org/Chandler_0.1_license_terms.htm"
 
@@ -140,6 +140,8 @@
 
         # now write what we've done and read it back
         self._reopenRepository()
+        managerKind = self.rep['manager']
+        employeeKind = self.rep['employee']
         emp1 = None
         emp2 = None
         emp3 = None
@@ -202,6 +204,8 @@
 
         # now write what we've done and read it back
         self._reopenRepository()
+        managerKind = self.rep['manager']
+        employeeKind = self.rep['employee']
         (manager, [emp1, emp2, emp3, emp4]) = self._findManagerAndEmployees('//boss','//employee1','//employee2','//employee3','//employee4')
         self._checkManagerAndEmployees(manager, [ emp1, emp2, emp3, emp4 ])
 



More information about the Commits mailing list