You raised a separate question about whether we should be strict or permissive if the suppression node actually has multiple parents which specify two different grace periods.
I favored strict because I think this makes the situation more debuggable and comprehensible. But you are correct in stating that it's not a correctness issue, since the grace period doesn't affect the key. For this reason, I would be ok with logging a warning and just using the larger grace period. The consideration we need to weigh is in that situation with two different windowed tables getting merged/joined, assuming they only differ in grace period, how can we ensure that all operators follow the same strategy of taking the larger grace period. It affects windowed store retention as well as suppression. I think taking the larger is a reasonably obvious choice, so maybe it's not a big deal, though. [ Full content available at: https://github.com/apache/kafka/pull/5567 ] This message was relayed via gitbox.apache.org for [email protected]
