fix(coprocessor): context keys/values not deleted across stages#8679
fix(coprocessor): context keys/values not deleted across stages#8679
Conversation
✅ Docs preview has no changesThe preview was not built because there were no changes. Build ID: 6b9e759f67251cf00738c79f |
This comment has been minimized.
This comment has been minimized.
| pub(crate) fn extract_context_keys_sent( | ||
| target_context: &Context, | ||
| context_config: &ContextConf, | ||
| ) -> HashSet<String> { |
There was a problem hiding this comment.
out of curiosity, I'm wondering if we could potentially avoid allocations here and then not cloning keys but instead returning HashSet<&'str> ? Maybe it's not easy, I just want to know if it could be a quick win
There was a problem hiding this comment.
This seemed pretty hard to do due to the way dashmap works, but I reworked the code so that we don't need to extract/store them separately anyway
bnjjj
left a comment
There was a problem hiding this comment.
Just a small comment, otherwise LGTM
| ); | ||
| } | ||
|
|
||
| #[test] |
There was a problem hiding this comment.
Why did you remove this test ?
There was a problem hiding this comment.
I think this was the "remove key if value set to null" test - that functionality was mistakenly added in this PR in the first place, I think it would have been a breaking change as it didn't happen before
Ensure that coprocessor keys that are deleted in a previous stage do not re-appear in later stages
Checklist
Complete the checklist (and note appropriate exceptions) before the PR is marked ready-for-review.
Exceptions
Note any exceptions here
Notes
Footnotes
It may be appropriate to bring upcoming changes to the attention of other (impacted) groups. Please endeavour to do this before seeking PR approval. The mechanism for doing this will vary considerably, so use your judgement as to how and when to do this. ↩
Configuration is an important part of many changes. Where applicable please try to document configuration examples. ↩
A lot of (if not most) features benefit from built-in observability and
debug-level logs. Please read this guidance on metrics best-practices. ↩Tick whichever testing boxes are applicable. If you are adding Manual Tests, please document the manual testing (extensively) in the Exceptions. ↩