I'm still having trouble understanding how the configs could match in the code 
you highlighted when we change connector and/or task config values when no keys 
are being pruned by the connector implementations in question.Would capturing a 
new generation value within the config itself on every submitted change be a 
possible fix/workaround?The possible slightly negative consequence of that 
change would be that re-submitting the same config which would effectively be a 
no-op in the current implementation would now force task reconfigures/restarts?
    On Wednesday, February 8, 2023, 12:47:19 PM EST, Greg Harris 
<greg.har...@aiven.io.invalid> wrote:  
> This is the condition which is causing the issue: 
> https://github.com/apache/kafka/blob/6e2b86597d9cd7c8b2019cffb895522deb63c93a/connect/runtime/src/main/java/org/apache/kafka/connect/runtime/distributed/DistributedHerder.java#L1918-L1931>
>  The DistributedHerder is comparing the generation 1 and generation 2 
> configurations, and erroneously believes that they are equal, when in fact 
> the underlying secrets have changed.> This prevents the DistributedHerder 
> from writing generation 2 task configs to the KafkaConfigBackingStore 
> entirely, leaving it in state (A) without realizing it.

  

Reply via email to