Uploaded image for project: 'Camel'
  1. Camel
  2. CAMEL-4117

RedeliverErrorHandler - Should make defensive copy of Exchange so redelivery works for using Processor

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 2.7.0
    • 2.8.0
    • camel-core
    • None

    Description

      When using redelivery with the Camel error handler, it will by default use the previous exchange when redelivering. This ensures that any changes that was done by the failed attempt does not reflect when a redelivery is performed (eg think like use original message). However this does not apply when end users uses the low level .process in their Camel routes. So if they change the Exchange in the .process and then some error occurs, then that change is redelivered.

      We should consider making the redelivery error handler do a defensive copy of the exchange, so it can redelivery without any changes/side effects. For example this happens when people use .bean or any of the other EIPs. So why not for .process as well?

      Attachments

        1. CAMEL-4117.patch
          46 kB
          Claus Ibsen

        Issue Links

          Activity

            People

              davsclaus Claus Ibsen
              davsclaus Claus Ibsen
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: