-
Notifications
You must be signed in to change notification settings - Fork 17
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
chore: different periods between send and receive #1563
Conversation
Signed-off-by: Case Wylie <cmwylie19@defenseunicorns.com>
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #1563 +/- ##
==========================================
- Coverage 78.29% 78.24% -0.06%
==========================================
Files 41 41
Lines 1880 1889 +9
Branches 444 417 -27
==========================================
+ Hits 1472 1478 +6
- Misses 376 409 +33
+ Partials 32 2 -30
|
Signed-off-by: Case Wylie <cmwylie19@defenseunicorns.com>
Signed-off-by: Case Wylie <cmwylie19@defenseunicorns.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Given the troubleshooting we performed yesterday, this seems like it should also come with a test in pepr-excellent-examples to verify that the store behaves as intended with many sequential writes. I think we can turn @cmwylie19's troubleshooting steps into something scripted so we can catch this issue without manual testing.
Here is one -- defenseunicorns/pepr-excellent-examples#204 It does a double |
Signed-off-by: Case Wylie <cmwylie19@defenseunicorns.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
E2E test added, good to go!
Description
We lowered the debounce period (to one second) in which our Store Subscribers receive updates from the Watch on the
PeprStore
resource, meaning they can react to changes faster.The same debounce period was responsible for sending JSON patches to the
PeprStore
resource. The cache that holds these updates is updated and the items that were sent are deleted after the JSON patch succeeds. This meant that if we are sending events every second, and the kube-apiserver does not process the patch in a second, then the same events will be sent over multiple intervals. It is unclear if this would make the data incorrect as it is idempotent but it certainly introduces pressure on the network which could create a fallout of other network created problems.This PR:
SetItemAndWait/RemoveItemAndWait
SetItemAndWait/RemoveItemAndWait
e2e: defenseunicorns/pepr-excellent-examples#204
Related Issue
Fixes #1561
Relates to #
Type of change
Checklist before merging