Set a row factory instead of nesting the iterator in __objects

This commit is contained in:
Lee Miller 2024-09-11 02:35:09 +03:00
parent addf75814e
commit f6d528a035
Signed by untrusted user: lee.miller
GPG Key ID: 4F97A5EA88F4AB63

View File

@ -41,14 +41,16 @@ class Inventory():
cur.execute("INSERT INTO status VALUES ('lastvacuumtime', ?)", (now,)) cur.execute("INSERT INTO status VALUES ('lastvacuumtime', ?)", (now,))
self._db.commit() self._db.commit()
def __objects(self, cur): @staticmethod
return ( def __object(cursor, row):
structure.Object( vector, expires, obj_type, version, stream, tag, data, offset = row
return structure.Object(
expires, obj_type, version, stream, data, offset, expires, obj_type, version, stream, data, offset,
tag=tag, vector=vector) tag=tag, vector=vector)
for (vector, expires, obj_type, version, stream, tag, data, offset)
in cur.fetchall() def __objects(self, cur):
) cur.row_factory = self.__object
return cur
def cleanup(self): def cleanup(self):
with shared.objects_lock: with shared.objects_lock: