Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a Database Cache to Porch #836

Open
9 tasks
liamfallon opened this issue Jan 22, 2025 · 0 comments
Open
9 tasks

Add a Database Cache to Porch #836

liamfallon opened this issue Jan 22, 2025 · 0 comments
Assignees

Comments

@liamfallon
Copy link
Member

liamfallon commented Jan 22, 2025

Currently Porch uses etcd to cache the metadata for packages. This work will add a new database cache that will cache the entire package including metadata to a database.

With the DB cache, Porch will access Git on the "Approve" and "Delete" actions, so there will be less access required to Git. In the DB cache, we will only need to lock on packages, so simultaneous access to different packages will be possible as long as you are not doing an "Approve" or a "Delete".

The DB cache:

  • enables HA on Porch (even across k8s clusters)
  • improves data consistency
  • makes operations more performant, reads no longer go to git and writes do reads before writing so they will be faster too
  • reduces the complexity of the Porch code

This work will be carried out in phases:

@liamfallon liamfallon self-assigned this Jan 22, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant