[elbe-devel] [PATCH 00/22] elbepack: projectmanager: remove cache

Thomas Weißschuh thomas.weissschuh at linutronix.de
Wed Aug 14 15:29:14 CEST 2024


The cache artificially limits each user to one active project at a time.
Retrieving projects by userid instead of their unique builddir, which is
always available has the potential to operate on an incorrect project.
It also introduces a global lock.

The only work that the cache optimizes are small data fetches from a
local database which don't need such a cache, and are cached in the ORM
anyways.

Signed-off-by: Thomas Weißschuh <thomas.weissschuh at linutronix.de>
---
Thomas Weißschuh (22):
      elbepack: projectmanager: split out busy check
      elbepack: projectmanager: return opened project
      elbepack: projectmanager: add allow_busy to open_project()
      elbepack: projectmanager: avoid cache indirection in set_project_xml()
      elbepack: projectmanager: avoid cache indirection in set_upload_cdrom()
      elbepack: projectmanager: avoid cache indirection in build_project()
      elbepack: projectmanager: avoid cache indirection in update_pbuilder()
      elbepack: projectmanager: avoid cache indirection in build_pbuilder()
      elbepack: projectmanager: avoid cache indirection in build_pdebuild()
      elbepack: projectmanager: avoid cache indirection in set_orig_fname()
      elbepack: projectmanager: avoid cache indirection in get_orig_fname()
      elbepack: projectmanager: avoid cache indirection in build_chroot_tarball()
      elbepack: projectmanager: avoid cache indirection in build_sysroot()
      elbepack: projectmanager: avoid cache indirection in build_sdk()
      elbepack: projectmanager: avoid cache indirection in build_cdroms()
      elbepack: projectmanager: avoid cache indirection in rm_log()
      elbepack: projectmanager: avoid cache indirection in add_deb_package()
      elbepack: projectmanager: avoid cache indirection in project_is_busy()
      PLACEHOLDER: remove build_update_package
      elbepack: projectmanager: remove _get_current_project()
      elbepack: projectmanager: remove cache
      elbepack: projectmanager: remove dummy lock

 elbepack/daemons/soap/esoap.py |  56 ++------
 elbepack/projectmanager.py     | 313 +++++++++++++----------------------------
 2 files changed, 114 insertions(+), 255 deletions(-)
---
base-commit: e773c9b1a3d631b593bf103cc2f24a9c21c6f7bc
change-id: 20240814-projectmanager-cache-371a80f7ea10

Best regards,
-- 
Thomas Weißschuh <thomas.weissschuh at linutronix.de>



More information about the elbe-devel mailing list