[fix][misc] do not require encryption on system topics - #18898
Conversation
|
/pulsarbot rerun-failure-checks |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #18898 +/- ##
=============================================
+ Coverage 33.99% 47.40% +13.40%
- Complexity 6476 10635 +4159
=============================================
Files 623 703 +80
Lines 59103 68844 +9741
Branches 6147 7382 +1235
=============================================
+ Hits 20095 32634 +12539
+ Misses 36347 32582 -3765
- Partials 2661 3628 +967
Flags with carried forward coverage won't be shown. Click here to find out more.
|
michaeljmarshall
left a comment
There was a problem hiding this comment.
@nicoloboschi - I support this change, but I think it needs a little more work.
This code is relevant:
It is used here and in the non-partitioned topic:
If I am reading the code correctly, without updating the Producer#checkEncryption method, an update to a namespace policy will result in an unnecessary disconnection for producers to system topics when encryption becomes required for a namespace.
I've implemented isEncryptionRequired to always return false so the disconnection is never triggered. or maybe I didn't get your comments 🤔 |
|
Since 2.11.0 system topics are enabled by default so I think we must include this fix in 2.11.0. |
(cherry picked from commit 4129583)
(cherry picked from commit 4129583)
(cherry picked from commit 4129583)
Fixes #18897
Motivation
System topics on user namespace may be subject to have encryption set on the producer side. However they can't be forced to be encrypted since the encryption keys are set on the client side. Also they don't contain sensitive data.
The two main cases that I encountered are:
Modifications
Documentation
docdoc-requireddoc-not-neededdoc-complete