Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

1) In the from method of WindowKeySchema (called in deserialize in TimeWindowedDeserializer), we extract the window from the binary key, but we call getLong(binaryKey.length -TIMESTAMP_SIZE). However, the changelog for ChangeLoggingWindowBytesStore will log the windowed key as:

...

Code Block
final ByteBuffer buf = ByteBuffer.allocate(serializedKey.length + TIMESTAMP_SIZE + SEQNUM_SIZE);

with the seqnum sequence number (used for de-duping). So the eventual result is that when we deserialize, we do not assume the windowed changelog key has a seq_numsequence number, and the window extracted will be gibberish since the bytes won't be alligned.

...