diff options
Diffstat (limited to 'bitbake/lib/hashserv/sqlalchemy.py')
-rw-r--r-- | bitbake/lib/hashserv/sqlalchemy.py | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/bitbake/lib/hashserv/sqlalchemy.py b/bitbake/lib/hashserv/sqlalchemy.py index 873547809a..0e28d738f5 100644 --- a/bitbake/lib/hashserv/sqlalchemy.py +++ b/bitbake/lib/hashserv/sqlalchemy.py | |||
@@ -48,6 +48,7 @@ class UnihashesV3(Base): | |||
48 | __table_args__ = ( | 48 | __table_args__ = ( |
49 | UniqueConstraint("method", "taskhash"), | 49 | UniqueConstraint("method", "taskhash"), |
50 | Index("taskhash_lookup_v4", "method", "taskhash"), | 50 | Index("taskhash_lookup_v4", "method", "taskhash"), |
51 | Index("unihash_lookup_v1", "unihash"), | ||
51 | ) | 52 | ) |
52 | 53 | ||
53 | 54 | ||
@@ -279,6 +280,16 @@ class Database(object): | |||
279 | ) | 280 | ) |
280 | return map_row(result.first()) | 281 | return map_row(result.first()) |
281 | 282 | ||
283 | async def unihash_exists(self, unihash): | ||
284 | async with self.db.begin(): | ||
285 | result = await self._execute( | ||
286 | select(UnihashesV3) | ||
287 | .where(UnihashesV3.unihash == unihash) | ||
288 | .limit(1) | ||
289 | ) | ||
290 | |||
291 | return result.first() is not None | ||
292 | |||
282 | async def get_outhash(self, method, outhash): | 293 | async def get_outhash(self, method, outhash): |
283 | async with self.db.begin(): | 294 | async with self.db.begin(): |
284 | result = await self._execute( | 295 | result = await self._execute( |