bbejeck opened a new pull request, #21734:
URL: https://github.com/apache/kafka/pull/21734
Fixes a bug where MeteredSessionStoreWithHeaders iterator methods fail when
key deserializers require headers.
The class inherits iterator-returning methods from MeteredSessionStore:
- fetch(K) / backwardFetch(K)
- fetch(K, K) / backwardFetch(K, K)
- findSessions(K, long, long) / backwardFindSessions(K, long, long)
- findSessions(K, K, long, long) / backwardFindSessions(K, K, long, long)
- findSessions(long, long)
These methods use serdes.keyFrom(bytes, new RecordHeaders()) which
provides empty headers, causing deserialization failures when headers are
required.
The fix overrides each method in MeteredSessionStoreWithHeaders with a
custom iterator that deserializes the value first to extract headers from
AggregationWithHeaders, then uses those headers to deserialize the key.
This is the session store equivalent of #21705 which fixed the same issue
for MeteredTimestampedWindowStoreWithHeaders.
--
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.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]