-
Notifications
You must be signed in to change notification settings - Fork 350
Remove the redecryption logic in the timeline #5869
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
base: main
Are you sure you want to change the base?
Conversation
This task is still necessary because the redecryptor in the event cache might miss some room keys. In this case the timeline can tell the redecryptor which events it should retry to decrypt. We're collecting all the UTDs in the timeline and telling the redecryptor to do its best.
| #[async_test] | ||
| async fn test_retry_fetching_encryption_info() { |
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.
This test is not gone, it was reimplemented in the event cache: 4a519bd.
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #5869 +/- ##
==========================================
+ Coverage 88.58% 88.60% +0.01%
==========================================
Files 363 362 -1
Lines 102782 102512 -270
Branches 102782 102512 -270
==========================================
- Hits 91050 90830 -220
+ Misses 7493 7453 -40
+ Partials 4239 4229 -10 ☔ View full report in Codecov by Sentry. |
CodSpeed Performance ReportMerging #5869 will not alter performanceComparing Summary
|
andybalaam
left a comment
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.
Looks good, with the relatively limited context I have.
Does this mean we persist the redecrypted event in the event cache instead of redecrypting it every time we want to display it?
That's correct, yes. Redecrypting an event replaces the event in storage. |
This PR follows from #5746 and concludes #3872.
We still have a bit of logic left in the timeline, to handle the UTD hook and to handle explicit redecryption requests that come from the application or in case the redecryptor missed some room keys due to lagging broadcast channels.
There's still a bit more work to be done, mainly to check that #5474 and #5798 have been fixed or fix them if they were not yet fixed by the new and more robust architecture we have for redecryption.