@@ -53,18 +53,22 @@ DcpConnMap::DcpConnMap(EventuallyPersistentEngine &e)
5353 engine.getConfiguration ().getDcpMinCompressionRatio ());
5454
5555 // Note: these allocations are deleted by ~Configuration
56- engine.getConfiguration ().addValueChangedListener (
56+ auto & config = engine.getConfiguration ();
57+ config.addValueChangedListener (
5758 " dcp_blacklist_fts_connection_logs" ,
5859 std::make_unique<DcpConfigChangeListener>(*this ));
59- engine. getConfiguration () .addValueChangedListener (
60+ config .addValueChangedListener (
6061 " dcp_consumer_process_buffered_messages_yield_limit" ,
6162 std::make_unique<DcpConfigChangeListener>(*this ));
62- engine. getConfiguration () .addValueChangedListener (
63+ config .addValueChangedListener (
6364 " dcp_consumer_process_buffered_messages_batch_size" ,
6465 std::make_unique<DcpConfigChangeListener>(*this ));
65- engine. getConfiguration () .addValueChangedListener (
66+ config .addValueChangedListener (
6667 " dcp_idle_timeout" ,
6768 std::make_unique<DcpConfigChangeListener>(*this ));
69+ config.addValueChangedListener (
70+ " allow_sanitize_value_in_deletion" ,
71+ std::make_unique<DcpConfigChangeListener>(*this ));
6872}
6973
7074DcpConnMap::~DcpConnMap () {
@@ -583,6 +587,8 @@ void DcpConnMap::DcpConfigChangeListener::booleanValueChanged(const std::string&
583587 bool value) {
584588 if (key == " dcp_blacklist_fts_connection_logs" ) {
585589 myConnMap.blacklistFtsConnectionLogsConfigChanged (value);
590+ } else if (key == " allow_sanitize_value_in_deletion" ) {
591+ myConnMap.consumerAllowSanitizeValueInDeletionConfigChanged (value);
586592 }
587593}
588594
@@ -636,6 +642,17 @@ void DcpConnMap::blacklistFtsConnectionLogsConfigChanged(bool newValue) {
636642 }
637643}
638644
645+ void DcpConnMap::consumerAllowSanitizeValueInDeletionConfigChanged (
646+ bool newValue) {
647+ LockHolder lh (connsLock);
648+ for (const auto & cookieToConn : map_) {
649+ auto * consumer = dynamic_cast <DcpConsumer*>(cookieToConn.second .get ());
650+ if (consumer) {
651+ consumer->setAllowSanitizeValueInDeletion (newValue);
652+ }
653+ }
654+ }
655+
639656std::shared_ptr<ConnHandler> DcpConnMap::findByName (const std::string& name) {
640657 LockHolder lh (connsLock);
641658 for (const auto & cookieToConn : map_) {
0 commit comments