-
Notifications
You must be signed in to change notification settings - Fork 247
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
Batching support #569
Open
fmterrorf
wants to merge
6
commits into
commanded:master
Choose a base branch
from
calmwave-open-source:batching-support
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Batching support #569
+1,195
−52
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
Skeleton code for batched handling, to be tested Basic skeleton test Ensure that no conflicting options/handlers are configured Move the module compilation test into describe block Add code to do error handling on batches (untested) Add tests for batching error handling Allow ack_events to take a list of events and acknowledge last event batch handler telemetry error handling fixes Update support batch handler logic Add batch handler telemetry tests Align naming of batch handler test module Update retry logic Update tests Add configuration test for ensuring batch_size and concurrency not test at same time Fix handle_batch comparison and add test case Add tests for handle_batch state and update last_event_seen logic Remove list implementation for InMemory#ack_event/3 Minor update for event_handler_batch_state_test Document handle_batch/2 for state update Add more event handler test coverage - upcast test for handle_batch/2 - batch_reset_event_handler_test Do not retry if :skip is received Commanded.options() -> Commanded.Application.options() Allow skipping events for batched handler Include commanded#493 and commanded#489 in CHANGELOG Include commanded#493 and commanded#489 in CHANGELOG Release v1.4.0 bugfix: retry command executing when the aggregator is down right before the execution chore: improve typespec for router dispatch resp Include commanded#494 in CHANGELOG Remove duplicate event apply when receiving missed events published to aggregate's event stream Update CHANGELOG Use Erlang v25.0.4 and Elixir v1.14.0-otp-25 Require at least Elixir v1.10 Fix typespec typo in Commanded.Application Use `:test` Mix env for GitHub workflow To catch dialyzer and credo errors in test files. Release v1.4.1 retry remaining batch when skipping event only retry for batch Reduce compile-time dependencies Reformat Cleanup some TODO comments that have been implemented Remove unused code in test Make Credo happy Update docs for :skip return in error callback Filter any already seen events from handle_batch Update docs on event given to batch error hander
Format Fix dialyzer error
Note: review can wait until Calmwave has dogfooded this for a bit. |
Any updates on this one? |
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.
This adds the option of having batched event handlers to speed things up. Please refer to the included documentation for details.
This PR is mostly taken from #509
Related PRs
commanded/commanded-ecto-projections#54