Resolved conflicts for Begall's db fixes

This commit is contained in:
piejanssens
2014-08-11 20:47:57 +02:00
parent e04245cff5
commit e7ddb2d7b2

View File

@@ -59,37 +59,32 @@ class DBConnection:
return return
sqlResult = None sqlResult = None
attempt = 0
try:
while attempt < 5: with self.connection as c:
try:
if args == None: if args == None:
#logger.debug(self.filename+": "+query) sqlResult = c.execute(query)
sqlResult = self.connection.execute(query)
else: else:
#logger.debug(self.filename+": "+query+" with args "+str(args)) sqlResult = c.execute(query, args)
sqlResult = self.connection.execute(query, args)
self.connection.commit() except sqlite3.OperationalError, e:
break if "unable to open database file" in e.message or "database is locked" in e.message:
except sqlite3.OperationalError, e: logger.warn('Database Error: %s', e)
if "unable to open database file" in e.message or "database is locked" in e.message: else:
logger.warn('Database Error: %s', e) logger.error('Database error: %s', e)
attempt += 1
time.sleep(1)
else:
logger.error('Database error: %s', e)
raise
except sqlite3.DatabaseError, e:
logger.error('Fatal Error executing %s :: %s', query, e)
raise raise
except sqlite3.DatabaseError, e:
logger.error('Fatal Error executing %s :: %s', query, e)
raise
return sqlResult return sqlResult
def select(self, query, args=None): def select(self, query, args=None):
sqlResults = self.action(query, args).fetchall() sqlResults = self.action(query, args).fetchall()
if sqlResults == None: if sqlResults == None or sqlResults == [None]:
return [] return []
return sqlResults return sqlResults