...
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.
...