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

Revise caching strategy #8

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

johnbelamaric
Copy link
Member

This contains the changes from kptdev/kpt#4094.

It needs more e2e tests though before merging.

Copy link
Contributor

nephio-prow bot commented Dec 19, 2023

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: johnbelamaric

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@johnbelamaric
Copy link
Member Author

/hold

This will pass the Porch E2E tests, but seems to still have some issues that need fixing. I need to create some new E2E tests that will fail due to those issues, and debug this before we merge it.

@efiacor
Copy link
Collaborator

efiacor commented Feb 20, 2024

/hold

This will pass the Porch E2E tests, but seems to still have some issues that need fixing. I need to create some new E2E tests that will fail due to those issues, and debug this before we merge it.

Hi @johnbelamaric
Could you maybe expand on what the "issues" are and maybe we could take a look at testing/addressing them?
As an aside, is the overall "plan" described in kptdev/kpt#3630 a major piece of work and how high a priority is it?

@efiacor
Copy link
Collaborator

efiacor commented Feb 23, 2024

/retest

@efiacor
Copy link
Collaborator

efiacor commented Feb 23, 2024

/test all

@johnbelamaric
Copy link
Member Author

Umm. I don't remember the details from back in December. Our TNA team identified some issues in their testing so we backed this change out. @tliron can you reach out to the team and they can perhaps provide some insight?

@liamfallon
Copy link
Member

liamfallon commented Nov 11, 2024

This PR introduces a separate mutex for reconciling the cache, which does not block reads. Therefore reads can proceed even if there is a reconcile ongoing as long as the reconcile is not actually updating the cache or the repo. It also consolidates the cache recnciliation into a new method, which does a 3-way reconciliation against the cache, what's in the CRDs in etc and what's in Git.

The implementation in this PR was merged manually into the current main and the performance of Porch with this PR compared with the current main is shown on the plot below. The change introduced in #129 increases the performance of Porch much more so than this PR does.

Therefore I suggest we close this PR.

#135 is a manual rebase of this PR against the current main branch.

Screenshot 2024-11-11 at 14 41 13

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants