nicktelford opened a new pull request, #22958: URL: https://github.com/apache/kafka/pull/22958
We need to verify that, when transactional state stores are enabled and `processing.guarantee` is `exactly_once_v2`, records are buffered in the transaction buffer (invisible to a READ_COMMITTED reader) until the Streams commit cycle completes, and then committed to the store as expected. This reuses `EosIntegrationTest`, which already owns the EOS invariant machinery and a `transactionalStateStores` parameter. A new `shouldBufferStateStoreWritesUntilCommitUnderEos` test drives three bursts of writes across a commit boundary and asserts the READ_COMMITTED/READ_UNCOMMITTED store views at each step, via a new isolation-aware `verifyStateStore`/`queryStateStore` and a `waitForStateStore` helper that polls for the buffer flush (`context.commit()` only requests a commit; the actual flush happens asynchronously afterwards). The transactional dimension is orthogonal to group protocol and processing-threads, so — consistent with this file's existing sparse-matrix convention — the new test and the existing transactional parameterization are each exercised via a single representative combination rather than the full matrix, to avoid unnecessary integration-test runtime. -- 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]
