improved reliability of retrieveDepends
git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@948 cd1c1023-2f26-0410-ae45-c471fc1f0318
This commit is contained in:
@@ -716,10 +716,6 @@ def generateDependsTree(idpackages, deep = False):
|
||||
|
||||
# check if dependstable is sane before beginning
|
||||
rx = clientDbconn.retrieveDepends(idpackages[0])
|
||||
if rx == -2:
|
||||
# generation needed
|
||||
clientDbconn.regenerateDependsTable(output = False)
|
||||
rx = clientDbconn.retrieveDepends(idpackages[0])
|
||||
|
||||
while (not dependsOk):
|
||||
treedepth += 1
|
||||
|
||||
@@ -230,17 +230,6 @@ def searchDepends(atoms, idreturn = False, dbconn = None):
|
||||
else:
|
||||
dbconn = clientDbconn
|
||||
searchResults = dbconn.retrieveDepends(result[0])
|
||||
if searchResults == -2:
|
||||
if (matchInRepo):
|
||||
# run equo update
|
||||
dbconn.closeDB()
|
||||
del dbconn
|
||||
syncRepositories([result[1]], forceUpdate = True)
|
||||
dbconn = openRepositoryDatabase(result[1])
|
||||
else:
|
||||
# I need to generate dependstable
|
||||
dbconn.regenerateDependsTable()
|
||||
searchResults = dbconn.retrieveDepends(result[0])
|
||||
for idpackage in searchResults:
|
||||
if (idreturn):
|
||||
dataInfo.add(idpackage)
|
||||
|
||||
@@ -644,9 +644,6 @@ def installPackages(packages = [], atomsdata = [], deps = True, emptydeps = Fals
|
||||
dependQueue = set()
|
||||
for idpackage in removalQueue:
|
||||
depends = clientDbconn.retrieveDepends(idpackage)
|
||||
if depends == -2:
|
||||
clientDbconn.regenerateDependsTable(output = False)
|
||||
depends = clientDbconn.retrieveDepends(idpackage)
|
||||
for depend in depends:
|
||||
dependkey = clientDbconn.retrieveCategory(depend)+"/"+clientDbconn.retrieveName(depend)
|
||||
dependslot = clientDbconn.retrieveSlot(depend)
|
||||
|
||||
@@ -428,7 +428,6 @@ class etpDatabase:
|
||||
self.runTreeUpdatesActions(update_actions)
|
||||
|
||||
# store new actions
|
||||
### FIXME: add support int reagent database --initialize
|
||||
self.addRepositoryUpdatesActions(repository,update_actions)
|
||||
# store new digest into database
|
||||
self.setRepositoryUpdatesDigest(repository, portage_dirs_digest)
|
||||
@@ -470,6 +469,7 @@ class etpDatabase:
|
||||
for action in actions:
|
||||
command = action.split()
|
||||
if command[0] == "move":
|
||||
print_warning(darkred(" * ")+bold("RUNNING: ")+red("action: %s" % (blue(action),)))
|
||||
self.runTreeUpdatesMoveAction(command[1:])
|
||||
|
||||
|
||||
@@ -2454,8 +2454,8 @@ class etpDatabase:
|
||||
|
||||
# sanity check on the table
|
||||
sanity = self.isDependsTableSane()
|
||||
if (not sanity):
|
||||
return -2 # table does not exist or is broken, please regenerate and re-run
|
||||
if (not sanity): # is empty, need generation
|
||||
self.regenerateDependsTable(output = False)
|
||||
|
||||
self.cursor.execute('SELECT dependencies.idpackage FROM dependstable,dependencies WHERE dependstable.idpackage = (?) and dependstable.iddependency = dependencies.iddependency', (idpackage,))
|
||||
result = self.fetchall2set(self.cursor.fetchall())
|
||||
|
||||
Reference in New Issue
Block a user