-
Notifications
You must be signed in to change notification settings - Fork 136
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feature: Choose between consumer or producer commit modes #31
Merged
astubbs
merged 11 commits into
confluentinc:master
from
astubbs:features/transactions-optional
Nov 23, 2020
Merged
feature: Choose between consumer or producer commit modes #31
astubbs
merged 11 commits into
confluentinc:master
from
astubbs:features/transactions-optional
Nov 23, 2020
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
astubbs
force-pushed
the
features/transactions-optional
branch
2 times, most recently
from
November 11, 2020 17:13
11802f0
to
42e502c
Compare
astubbs
force-pushed
the
features/transactions-optional
branch
4 times, most recently
from
November 20, 2020 11:33
5ca0b22
to
893ae25
Compare
astubbs
changed the title
Fixes #30 - Makes transactions optional
feature: Choose between consumer or producer commit modes
Nov 20, 2020
astubbs
force-pushed
the
features/transactions-optional
branch
from
November 20, 2020 15:51
1004717
to
1829f3b
Compare
astubbs
force-pushed
the
features/transactions-optional
branch
8 times, most recently
from
November 23, 2020 13:32
f55badb
to
52c7819
Compare
…mits - Choose either Consumer sync or async commits - Fixes confluentinc#25 confluentinc#25: -- Sometimes a a transaction error occurs - Cannot call send in state COMMITTING_TRANSACTION confluentinc#25 - ReentrantReadWrite lock protects non-thread safe transactional producer from incorrect multithreaded use - Wider lock to prevent transaction's containing produced messages that they shouldn't - Implement non transactional synchronous commit sync properly - Select tests adapted to non transactional as well - Must start tx in MockProducer as well - Adds supervision to poller - Fixes a performance issue with the async committer not being woken up - Enhances tests to run under multiple commit modes - Fixes example app tests - incorrectly testing wrong thing and MockProducer not configured to auto complete - Make committer thread revoke partitions and commit - Have onPartitionsRevoked be responsible for committing on close, instead of an explicit call to commit by controller - Make sure Broker Poller now drains properly, committing any waiting work - Add missing revoke flow to MockConsumer wrapper - Add missing latch timeout check
…ng (avoid races), add ability to request commit
astubbs
force-pushed
the
features/transactions-optional
branch
from
November 23, 2020 15:46
52c7819
to
a90f11c
Compare
astubbs
force-pushed
the
features/transactions-optional
branch
2 times, most recently
from
November 23, 2020 15:49
398a11f
to
bcb4f9c
Compare
astubbs
force-pushed
the
features/transactions-optional
branch
from
November 23, 2020 15:51
bcb4f9c
to
88261e9
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #30 - Makes transactions optional
Fixes #25 by locking producer access around a read/write lock, as when using a transactional producer, it's not actually completely thread safe.
Fixes #26 Document config options better - maxConcurrency, numberOfThreads, maxUncommittedMessagesToHandlePerPartition documentation
Fixed #12 Create a parallel consumer which doesn't require a Producer instance enhancement