generated from arcus-azure/arcus.github.template
-
Notifications
You must be signed in to change notification settings - Fork 11
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
feat: change circuitbreaker approach #453
Merged
fgheysels
merged 26 commits into
frgh/fix/433_unable_to_stop_processor
from
frgh/feat/auto_circuitbreaker
Dec 10, 2024
Merged
feat: change circuitbreaker approach #453
fgheysels
merged 26 commits into
frgh/fix/433_unable_to_stop_processor
from
frgh/feat/auto_circuitbreaker
Dec 10, 2024
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
stijnmoreels
changed the title
Spike: change circuitbreaker approach
feat: change circuitbreaker approach
Dec 3, 2024
stijnmoreels
reviewed
Dec 3, 2024
src/Arcus.Messaging.Abstractions.ServiceBus/MessageHandling/AzureServiceBusMessageRouter.cs
Show resolved
Hide resolved
stijnmoreels
reviewed
Dec 3, 2024
src/Arcus.Messaging.Pumps.Abstractions/Resiliency/DefaultMessagePumpCircuitBreaker.cs
Show resolved
Hide resolved
stijnmoreels
reviewed
Dec 3, 2024
src/Arcus.Messaging.Tests.Integration/MessagePump/ServiceBusMessagePump.ResiliencyTests.cs
Show resolved
Hide resolved
stijnmoreels
reviewed
Dec 4, 2024
src/Arcus.Messaging.Pumps.ServiceBus/Resiliency/CircuitBreakerServiceBusMessageHandler.cs
Show resolved
Hide resolved
fgheysels
commented
Dec 4, 2024
src/Arcus.Messaging.Abstractions.ServiceBus/MessageHandling/AzureServiceBusMessageRouter.cs
Show resolved
Hide resolved
src/Arcus.Messaging.Abstractions/MessageHandling/MessageProcessingResult.cs
Show resolved
Hide resolved
src/Arcus.Messaging.Pumps.Abstractions/Resiliency/DefaultMessagePumpCircuitBreaker.cs
Show resolved
Hide resolved
src/Arcus.Messaging.Pumps.Abstractions/Resiliency/IMessagePumpCircuitBreaker.cs
Outdated
Show resolved
Hide resolved
src/Arcus.Messaging.Tests.Integration/MessagePump/ServiceBusMessagePump.ResiliencyTests.cs
Show resolved
Hide resolved
fgheysels
commented
Dec 5, 2024
src/Arcus.Messaging.Pumps.Abstractions/Resiliency/IMessagePumpCircuitBreaker.cs
Show resolved
Hide resolved
fgheysels
commented
Dec 9, 2024
src/Arcus.Messaging.Pumps.Abstractions/Resiliency/IMessagePumpCircuitBreaker.cs
Outdated
Show resolved
Hide resolved
src/Arcus.Messaging.Pumps.Abstractions/Resiliency/IMessagePumpCircuitBreaker.cs
Show resolved
Hide resolved
…CircuitBreaker.cs Co-authored-by: Frederik Gheysels <[email protected]>
…cus-azure/arcus.messaging into frgh/feat/auto_circuitbreaker
/azp run CI - Arcus.Messaging |
Azure Pipelines successfully started running 1 pipeline(s). |
fgheysels
commented
Dec 9, 2024
src/Arcus.Messaging.Pumps.Abstractions/Resiliency/IMessagePumpCircuitBreaker.cs
Outdated
Show resolved
Hide resolved
src/Arcus.Messaging.Pumps.Abstractions/Resiliency/IMessagePumpCircuitBreaker.cs
Outdated
Show resolved
Hide resolved
src/Arcus.Messaging.Pumps.Abstractions/Resiliency/IMessagePumpCircuitBreaker.cs
Outdated
Show resolved
Hide resolved
…CircuitBreaker.cs Co-authored-by: Frederik Gheysels <[email protected]>
…CircuitBreaker.cs Co-authored-by: Frederik Gheysels <[email protected]>
…CircuitBreaker.cs
fgheysels
merged commit Dec 10, 2024
8cbd9eb
into
frgh/fix/433_unable_to_stop_processor
8 checks passed
fgheysels
added a commit
that referenced
this pull request
Dec 13, 2024
… during circuit breaker (#444) * Upgrade packages * update package * package updates * remove duplicate package ref * detach eventhandlers before stopping ServiceBusProcessor * pr-fix: fully use message receiver * pr-fix: use newest features in messaging package * pr-fix: update az packages + message pump accessibility check * pr-fix: set is-started in receive messages * pr-fix: correct accessibility on message pump * pr-fix: introduce resume functionality * pr-fix: mark the interval processing as long-running * pr-fix: intro circuit breaker message handler * pr-fix: correct worker logging * pr-fix: stabelize with file system as event source * temp commit * pr-sug: use private set for circuit breaker state * pr-fix: correctly auto-complete message * pr-fix: add additional test verifications * Update src/Arcus.Messaging.Pumps.Abstractions/MessagePump.cs Co-authored-by: Frederik Gheysels <[email protected]> * pr-fix: auto-dead-letter when no message handler can process message * pr-fix: add exception handling for fallback registrations * pr-fix: correct receiver tests * pr-fix: receive on sensors * pr-fix: auto-abandon & -dead-letter in router * pr-fix: null-check and updated unit tests * pr-fix: transient complete + safeguard missing message * pr-fix: correct namespace connection string * pr-fix: use managed identity * pr-fix: skip for now unavailable system tests * pr-fix: use dedicated namespace connection string * pr-fix: correct appsettings.json * pr-fix: remove delay 1 day * pr-fix: activate circuit-breaker tests * pr-sug: rename get circuit-breaker state expose method * Improve circuit-breaker handling * safeguards in pause * remove unused private * fix compiler warnings * fix test * code layout * feat: change circuitbreaker approach (#453) * processing spike * code cleanup * pr-sug: use message processing result io boolean * pr-sug: promote circuit breaker state enum to class * pr-fix: throw-if-null is not available in net-standard * pr-fix: correct usings in az service bus message pump * pr-sug: add message id context to the processing result * pr-fix: correct time-out for resiliency tests * pr-fix: remove useless dev-test * pr-fix: correct recieved message creation in unit tests * pr-fix: more stable post-assertion resilence * pr-fix: use back the message id for the message processing result * pr-sug: finishing touches on circuit breaker state transitioning * pr-fix: streamline equalization in circuit breaker state * pr-fix: let router abbandon message io circuit breaker handler * pr-sug: rename wait interval method + fix wait recovery period log * pr-fix: complete renaming in message pump * pr-sug: use transition method for open state * pr-sug: add half-open state boolean flag * pr-fix: limit processing of single message on queue * Update src/Arcus.Messaging.Pumps.Abstractions/Resiliency/IMessagePumpCircuitBreaker.cs Co-authored-by: Frederik Gheysels <[email protected]> * pr-sug: reframe summary and remarks wording in circuit breaker states * Update src/Arcus.Messaging.Pumps.Abstractions/Resiliency/IMessagePumpCircuitBreaker.cs Co-authored-by: Frederik Gheysels <[email protected]> * Update src/Arcus.Messaging.Pumps.Abstractions/Resiliency/IMessagePumpCircuitBreaker.cs Co-authored-by: Frederik Gheysels <[email protected]> * Update src/Arcus.Messaging.Pumps.Abstractions/Resiliency/IMessagePumpCircuitBreaker.cs --------- Co-authored-by: stijnmoreels <[email protected]> * pr-sug: correct is started description --------- Co-authored-by: Frederik Gheysels <[email protected]> Co-authored-by: Frederik Gheysels <[email protected]>
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.
The CircuitBreaker now just signals the MessagePump to pause retrieving messages instead of stopping the MessagePump and restarting it later using a separate Task.