]> git.ipfire.org Git - pbs.git/commit
database: Use joined loading a little bit more often
authorMichael Tremer <michael.tremer@ipfire.org>
Thu, 23 Jan 2025 09:39:30 +0000 (09:39 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Thu, 23 Jan 2025 09:39:30 +0000 (09:39 +0000)
commit3e2385d3fcdb7f7433cf88484197b560e659c50c
treed73e73e14ec172bbc65d5e8064d0efb6e7e0d8f4
parent54e60df3c8267e4356125a4423d19ebe26a47458
database: Use joined loading a little bit more often

Since we have so many objects that have so many very close relationships
between each other, we can have lots of roundtrips to the database when
we fetch them all individually in an extra query.

The joined loads will however increase the size of the result by quite a
siginificant amount of data when applied to 1:N relationships with
larger Ns. It is pretty much free in a 1:1 relationship.

Therefore this commit changes that we fetch lots of stuff in one go so
we don't have as many roundtrips to the database. It will however result
in larger queries and potentially a little bit more bandwidth usage.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
16 files changed:
src/buildservice/builders.py
src/buildservice/builds.py
src/buildservice/database.py
src/buildservice/events.py
src/buildservice/images.py
src/buildservice/jobs.py
src/buildservice/keys.py
src/buildservice/mirrors.py
src/buildservice/packages.py
src/buildservice/releasemonitoring.py
src/buildservice/releases.py
src/buildservice/repos.py
src/buildservice/sessions.py
src/buildservice/sources.py
src/buildservice/uploads.py
src/buildservice/users.py