[
https://issues.apache.org/jira/browse/KAFKA-4468?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15770284#comment-15770284
]
Guozhang Wang commented on KAFKA-4468:
--------------------------------------
Since window_size for a specific window object is static and fixed, I think we
do not need to serialize it into the rocksdb payload. Instead we can first
return the {{TimeWindow}} from the deserializer with end set to a dummy first,
and then replace it in the Windows class with the known window_size.
Is that doable?
> Correctly calculate the window end timestamp after read from state stores
> -------------------------------------------------------------------------
>
> Key: KAFKA-4468
> URL: https://issues.apache.org/jira/browse/KAFKA-4468
> Project: Kafka
> Issue Type: Bug
> Components: streams
> Reporter: Guozhang Wang
> Assignee: Bill Bejeck
> Labels: architecture
>
> When storing the WindowedStore on the persistent KV store, we only use the
> start timestamp of the window as part of the combo-key as (start-timestamp,
> key). The reason that we do not add the end-timestamp as well is that we can
> always calculate it from the start timestamp + window_length, and hence we
> can save 8 bytes per key on the persistent KV store.
> However, after read it (via {{WindowedDeserializer}}) we do not set its end
> timestamp correctly but just read it as an {{UnlimitedWindow}}. We should fix
> this by calculating its end timestamp as mentioned above.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)