A. Sophie Blee-Goldman created KAFKA-12313:
----------------------------------------------

             Summary: Consider deprecating the 
default.windowed.serde.inner.class configs
                 Key: KAFKA-12313
                 URL: https://issues.apache.org/jira/browse/KAFKA-12313
             Project: Kafka
          Issue Type: Improvement
            Reporter: A. Sophie Blee-Goldman


During the discussion of KIP-659 we discussed whether it made sense to have a 
"default" class for the serdes of windowed inner classes across Streams. Using 
these configs instead of specifying an actual Serde object can lead to subtle 
bugs, since the WindowedDeserializer requires a windowSize in addition to the 
inner class. If the default constructor is invoked, as it will be when falling 
back on the config, this windowSize defaults to MAX_VALUE. 

If the downstream program doesn't care about the window end time in the output, 
then this can go unnoticed and technically there is no problem. But if anything 
does depend on the end time, or the user just wants to manually read the output 
for testing purposes, then the MAX_VALUE will result in a garbage timestamp.

We should consider whether the convenience of specifying a config instead of 
instantiating a Serde in each operator is really worth the risk of a user 
accidentally failing to specify a windowSize



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to