JAMES-3804 Improve error handling when mailetContainer misses a proce…#1128
Merged
chibenwa merged 5 commits intoapache:masterfrom Aug 23, 2022
Merged
JAMES-3804 Improve error handling when mailetContainer misses a proce…#1128chibenwa merged 5 commits intoapache:masterfrom
chibenwa merged 5 commits intoapache:masterfrom
Conversation
…ssor
Today, if I specify a mailet pointing to a processor that do not exist, James will start, and the failure will be managed at runtime: upon processing, each mail needed to be processed by the unspecified processor will instead go to the error processor.
Recovering data from such a failure is quite a journey in itself.
Example of such configuration:
```
<mailet matcher="All" class="ToProcessor">
<processor>notFound</processor>
</mailet>
```
Instead of handling such failures at runtime, we could instead abort James startup.
Given we add a new method on the mailet interface, for a mailet to give the list of processor it needs, we can trivially implement such a check in the mailet container.
Arsnael
approved these changes
Aug 16, 2022
Arsnael
approved these changes
Aug 18, 2022
…tainer misses a processor
…iletContainer misses a processor
This file contains hidden or 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
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.
…ssor
Today, if I specify a mailet pointing to a processor that do not exist, James will start, and the failure will be managed at runtime: upon processing, each mail needed to be processed by the unspecified processor will instead go to the error processor.
Recovering data from such a failure is quite a journey in itself.
Example of such configuration:
Instead of handling such failures at runtime, we could instead abort James startup.
Given we add a new method on the mailet interface, for a mailet to give the list of processor it needs, we can trivially implement such a check in the mailet container.