forward-port
This commit is contained in:
+7
-4
@@ -33,7 +33,7 @@ import pisi.db.installdb
|
|||||||
import pisi.db.filesdb
|
import pisi.db.filesdb
|
||||||
import pisi.db.componentdb
|
import pisi.db.componentdb
|
||||||
import pisi.db.sourcedb
|
import pisi.db.sourcedb
|
||||||
import pisi.db.lockeddbshelve
|
import pisi.db.lockeddbshelve as shelve
|
||||||
import pisi.index
|
import pisi.index
|
||||||
import pisi.config
|
import pisi.config
|
||||||
import pisi.metadata
|
import pisi.metadata
|
||||||
@@ -44,6 +44,7 @@ import pisi.build
|
|||||||
import pisi.atomicoperations
|
import pisi.atomicoperations
|
||||||
import pisi.delta
|
import pisi.delta
|
||||||
import pisi.comariface
|
import pisi.comariface
|
||||||
|
import pisi.signalhandler
|
||||||
|
|
||||||
class Error(pisi.Error):
|
class Error(pisi.Error):
|
||||||
pass
|
pass
|
||||||
@@ -91,6 +92,8 @@ def init(database = True, write = True,
|
|||||||
if stderr:
|
if stderr:
|
||||||
ctx.stderr = stderr
|
ctx.stderr = stderr
|
||||||
|
|
||||||
|
# FIXME: something is wrong here... see __init__.py also. Why do we import pisi.api in __init__.py
|
||||||
|
import pisi.config
|
||||||
ctx.config = pisi.config.Config(options)
|
ctx.config = pisi.config.Config(options)
|
||||||
|
|
||||||
if signal_handling:
|
if signal_handling:
|
||||||
@@ -104,7 +107,7 @@ def init(database = True, write = True,
|
|||||||
# initialize repository databases
|
# initialize repository databases
|
||||||
ctx.database = database
|
ctx.database = database
|
||||||
if database:
|
if database:
|
||||||
pisi.db.lockeddbshelve.init_dbenv(write=write)
|
shelve.init_dbenv(write=write)
|
||||||
ctx.repodb = pisi.db.repodb.RepoDB()
|
ctx.repodb = pisi.db.repodb.RepoDB()
|
||||||
ctx.installdb = pisi.db.installdb.InstallDB()
|
ctx.installdb = pisi.db.installdb.InstallDB()
|
||||||
ctx.filesdb = pisi.db.filesdb.FilesDB()
|
ctx.filesdb = pisi.db.filesdb.FilesDB()
|
||||||
@@ -509,12 +512,12 @@ def rebuild_db(files=False):
|
|||||||
|
|
||||||
# check db schema versions
|
# check db schema versions
|
||||||
try:
|
try:
|
||||||
pisi.lockeddbshelve.check_dbversion('filesdbversion', pisi.__filesdbversion__, write=False)
|
shelve.check_dbversion('filesdbversion', pisi.__filesdbversion__, write=False)
|
||||||
except KeyboardInterrupt:
|
except KeyboardInterrupt:
|
||||||
raise
|
raise
|
||||||
except Exception, e: #FIXME: what exception could we catch here, replace with that.
|
except Exception, e: #FIXME: what exception could we catch here, replace with that.
|
||||||
files = True # exception means the files db version was wrong
|
files = True # exception means the files db version was wrong
|
||||||
pisi.lockeddbshelve.init_dbenv(write=True, writeversion=True)
|
shelve.init_dbenv(write=True, writeversion=True)
|
||||||
destroy(files) # bye bye
|
destroy(files) # bye bye
|
||||||
|
|
||||||
# save parameters and shutdown pisi
|
# save parameters and shutdown pisi
|
||||||
|
|||||||
Reference in New Issue
Block a user