vvcephei commented on a change in pull request #8905:
URL: https://github.com/apache/kafka/pull/8905#discussion_r446363798



##########
File path: 
streams/src/main/java/org/apache/kafka/streams/state/internals/InMemoryTimeOrderedKeyValueBuffer.java
##########
@@ -361,26 +366,20 @@ private void restoreBatch(final 
Collection<ConsumerRecord<byte[], byte[]>> batch
                             contextualRecord.recordContext()
                         )
                     );
-                } else if 
(V_2_CHANGELOG_HEADERS.lastHeader("v").equals(record.headers().lastHeader("v")))
 {
-                    // in this case, the changelog value is a serialized 
BufferValue
+                } else if (Arrays.equals(versionHeader.value(), 
V_2_CHANGELOG_HEADER_VALUE)) {
+
+                    final DeserializationResult deserializationResult = 
duckTypeV2(record, key);

Review comment:
       Sorry, the comments in `duckTypeV2`.
   
   Basically, because we released three versions that would write data in the 
"v3" format, but with the "v2" flag, when we see the v2 flag, the data might be 
in v2 format or v3 format. The only way to tell is to just try to deserialize 
it in v2 format, and if we get an exception, then to try with v3 format.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to