Skip to content

KAFKA-10892: Shared Readonly State Stores#12188

Closed
calmera wants to merge 2 commits into
apache:trunkfrom
calmera:KIP-813
Closed

KAFKA-10892: Shared Readonly State Stores#12188
calmera wants to merge 2 commits into
apache:trunkfrom
calmera:KIP-813

Conversation

@calmera

@calmera calmera commented May 20, 2022

Copy link
Copy Markdown
Contributor

This PR implements KIP-813: support for shareable state stores.

Tests were created to validate the structure of the resulting topology.

Certain parts (MockProcessor eg.) have been migrated to the newer PAPI as well. Tests have been ran against the whole project to be sure this migration doesn't cause any side-effects.

The contribution is my original work and I license the work to the project under the project's open source license

Had to migrate the MockProcessor supporting test classes to the "new" PAPI.
@mjsax mjsax added streams kip Requires or implements a KIP labels May 20, 2022

@mjsax mjsax left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the PR. And sorry for the long wait on a review.

As the store should be read-only, we should extend ProcessorContext#getStateStore to return a read only store if any other Processor get a handle on the store. We do a similar thing for global stores to protect them. I guess, the tricky thing will be to know if a store is read-only -- maybe we need to track some metadata about it.

Can you also rebase the PR to resolve the conflicts. Thx.

Comment thread streams/src/main/java/org/apache/kafka/streams/Topology.java
Comment thread streams/src/main/java/org/apache/kafka/streams/Topology.java Outdated
Comment thread streams/src/main/java/org/apache/kafka/streams/Topology.java Outdated
Comment thread streams/src/main/java/org/apache/kafka/streams/Topology.java Outdated
Comment thread streams/src/main/java/org/apache/kafka/streams/Topology.java Outdated
@calmera

calmera commented Oct 13, 2022

Copy link
Copy Markdown
Contributor Author

Split this PR into two new ones:

@calmera calmera closed this Oct 13, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

kip Requires or implements a KIP streams

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants