Alias our subqueries to appease the MySQL beast
This commit is contained in:
parent
90ec66561d
commit
7ae94f414c
1 changed files with 4 additions and 2 deletions
|
@ -226,12 +226,14 @@ def lookup_repo_storages_by_content_checksum(repo, checksums):
|
|||
# to use a union to select just one storage with each checksum
|
||||
queries = []
|
||||
|
||||
for checksum in set(checksums):
|
||||
for counter, checksum in enumerate(set(checksums)):
|
||||
query_alias = 'q{0}'.format(counter)
|
||||
candidate_subq = (ImageStorage
|
||||
.select(ImageStorage.id, ImageStorage.content_checksum)
|
||||
.join(Image)
|
||||
.where(Image.repository == repo, ImageStorage.content_checksum == checksum)
|
||||
.limit(1))
|
||||
.limit(1)
|
||||
.alias(query_alias))
|
||||
queries.append(ImageStorage
|
||||
.select(SQL('*'))
|
||||
.from_(candidate_subq))
|
||||
|
|
Reference in a new issue