You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@camel.apache.org by "Hadrian Zbarcea (JIRA)" <ji...@apache.org> on 2008/11/11 23:36:05 UTC

[jira] Created: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Do not copy Exchanges at each step to improve performance
---------------------------------------------------------

                 Key: CAMEL-1078
                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
             Project: Apache Camel
          Issue Type: Improvement
          Components: camel-core
    Affects Versions: 1.5.0
            Reporter: Hadrian Zbarcea
            Assignee: Hadrian Zbarcea
            Priority: Critical
             Fix For: 2.0.0


The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.

There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "James Strachan (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47972#action_47972 ] 

James Strachan commented on CAMEL-1078:
---------------------------------------

BTW the main reason to zap generics was it forced a pointless copy of an exchange when sending to - say - a JMS endpoint. However when consuming from a JMS endpoint - using a JmsExchange makes sense - and is a good optimisation IMHO

> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Hadrian Zbarcea (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47273#action_47273 ] 

hadrian edited comment on CAMEL-1078 at 11/11/08 5:22 PM:
------------------------------------------------------------------

Exchange specialized classes to be removed:
BeanExchange
CxfExchange
DummyExchange
FileExchange
HttpExchange
IrcExchange
[DONE] - JhcExchange
JmxExchange
JMXExchange
MailExchange
[DONE] - MinaExchange
MyExchange
QuarzExchange
RemoteFileExchange
SpringIntegrationExchange
XmppExchange



      was (Author: hadrian):
    Exchange specialized classes to be removed:
BeanExchange
CxfExchange
DummyExchange
FileExchange
HttpExchange
IrcExchange
[DONE] - JhcExchange
JmxExchange
JMXExchange
MailExchange
MinaExchange
MyExchange
QuarzExchange
RemoteFileExchange
SpringIntegrationExchange
XmppExchange


  
> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Hadrian Zbarcea (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47273#action_47273 ] 

hadrian edited comment on CAMEL-1078 at 11/11/08 4:54 PM:
------------------------------------------------------------------

Exchange specialized classes to be removed:
BeanExchange
CxfExchange
DummyExchange
FileExchange
HttpExchange
IrcExchange
[DONE] - JhcExchange
JmxExchange
JMXExchange
MailExchange
MinaExchange
MyExchange
QuarzExchange
RemoteFileExchange
SpringIntegrationExchange
XmppExchange



      was (Author: hadrian):
    Exchange specialized classes to be removed:
BeanExchange
CxfExchange
DummyExchange
FileExchange
HttpExchange
IrcExchange
JhcExchange
JmxExchange
JMXExchange
MailExchange
MinaExchange
MyExchange
QuarzExchange
RemoteFileExchange
SpringIntegrationExchange
XmppExchange


  
> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Hadrian Zbarcea (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47273#action_47273 ] 

hadrian edited comment on CAMEL-1078 at 11/11/08 8:02 PM:
------------------------------------------------------------------

Exchange specialized classes to be removed:
[DONE] - BeanExchange
CxfExchange
DummyExchange
FileExchange
HttpExchange
IrcExchange
[DONE] - JhcExchange
JmxExchange
JMXExchange
MailExchange
[DONE] - MinaExchange
MyExchange
[DONE] - QuartzExchange
RemoteFileExchange
SpringIntegrationExchange
XmppExchange



      was (Author: hadrian):
    Exchange specialized classes to be removed:
BeanExchange
CxfExchange
DummyExchange
FileExchange
HttpExchange
IrcExchange
[DONE] - JhcExchange
JmxExchange
JMXExchange
MailExchange
[DONE] - MinaExchange
MyExchange
[DONE] - QuartzExchange
RemoteFileExchange
SpringIntegrationExchange
XmppExchange


  
> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "James Strachan (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47970#action_47970 ] 

James Strachan commented on CAMEL-1078:
---------------------------------------

Hadrian - removing the generics doesn't mean we should remove the specialised Exchange implementations!

They can be a massive optimisation!

e.g. if you are routing from JMS to JMS and you don't modify the payload at all - you could just forward the JMS message on. Or you can expose the full JMS message to JMS aware consumers.

So I don't see why we need to remove the custom exchange implementations if they add some possible value!

> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Hadrian Zbarcea (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47273#action_47273 ] 

Hadrian Zbarcea edited comment on CAMEL-1078 at 6/24/09 9:45 PM:
-----------------------------------------------------------------

Exchange specialized classes to be removed:
[DONE] - BeanExchange
[DONE] - CxfExchange
[DONE] - DummyExchange
[DONE] - FileExchange
[DONE] - HttpExchange
[DONE] - IrcExchange
[DONE] - JhcExchange
JmsExchange
[DONE] - JMXExchange
[DONE] - MailExchange
[DONE] - MinaExchange
[DONE] - MyExchange
[DONE] - QuartzExchange
[DONE] - RemoteFileExchange
[DONE] - SpringIntegrationExchange
TraceEventExchange
[DONE] - XmppExchange

And some hard ones:
GenericFileExchange
JmsExchange

      was (Author: hadrian):
    Exchange specialized classes to be removed:
[DONE] - BeanExchange
[DONE] - CxfExchange
[DONE] - DummyExchange
[DONE] - FileExchange
[DONE] - HttpExchange
[DONE] - IrcExchange
[DONE] - JhcExchange
JmsExchange
[DONE] - JMXExchange
[DONE] - MailExchange
[DONE] - MinaExchange
[DONE] - MyExchange
[DONE] - QuartzExchange
[DONE] - RemoteFileExchange
[DONE] - SpringIntegrationExchange
TraceEventExchange
XmppExchange

And some hard ones:
GenericFileExchange
JmsExchange
  
> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.1.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Claus Ibsen updated CAMEL-1078:
-------------------------------

    Fix Version/s:     (was: 2.1.0)
                   2.0.0

Hadrian there are only 2-3 left so lets get them done before 2.0 is final.

That would be great as then there are no API changes needed for the performance improvements we can do under the covers.

We could even consider making DefaultExchange *final* so people wont create their own classes. Then the copy can be avoided.

> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Hadrian Zbarcea (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47273#action_47273 ] 

Hadrian Zbarcea edited comment on CAMEL-1078 at 6/27/09 6:52 AM:
-----------------------------------------------------------------

Exchange specialized classes to be removed:
[DONE] - BeanExchange
[DONE] - CxfExchange
[DONE] - DummyExchange
[DONE] - FileExchange
[DONE] - HttpExchange
[DONE] - IrcExchange
[DONE] - JhcExchange
[DONE] - JmsExchange
[DONE] - JMXExchange
[DONE] - MailExchange
[DONE] - MinaExchange
[DONE] - MyExchange
[DONE] - QuartzExchange
[DONE] - RemoteFileExchange
[DONE] - SpringIntegrationExchange
TraceEventExchange
[DONE] - XmppExchange

And some hard ones:
GenericFileExchange
[DONE] - RemoteFileExchange


      was (Author: hadrian):
    Exchange specialized classes to be removed:
[DONE] - BeanExchange
[DONE] - CxfExchange
[DONE] - DummyExchange
[DONE] - FileExchange
[DONE] - HttpExchange
[DONE] - IrcExchange
[DONE] - JhcExchange
JmsExchange
[DONE] - JMXExchange
[DONE] - MailExchange
[DONE] - MinaExchange
[DONE] - MyExchange
[DONE] - QuartzExchange
[DONE] - RemoteFileExchange
[DONE] - SpringIntegrationExchange
TraceEventExchange
[DONE] - XmppExchange

And some hard ones:
GenericFileExchange
JmsExchange
  
> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47273#action_47273 ] 

Claus Ibsen edited comment on CAMEL-1078 at 7/2/09 10:50 PM:
-------------------------------------------------------------

Exchange specialized classes to be removed:
[DONE] - BeanExchange
[DONE] - CxfExchange
[DONE] - DummyExchange
[DONE] - FileExchange
[DONE] - HttpExchange
[DONE] - IrcExchange
[DONE] - JhcExchange
[DONE] - JmsExchange
[DONE] - JMXExchange
[DONE] - MailExchange
[DONE] - MinaExchange
[DONE] - MyExchange
[DONE] - QuartzExchange
[DONE] - RemoteFileExchange
[DONE] - SpringIntegrationExchange
TraceEventExchange
[DONE] - XmppExchange

And some hard ones:
[DONE] - GenericFileExchange
[DONE] - RemoteFileExchange


      was (Author: hadrian):
    Exchange specialized classes to be removed:
[DONE] - BeanExchange
[DONE] - CxfExchange
[DONE] - DummyExchange
[DONE] - FileExchange
[DONE] - HttpExchange
[DONE] - IrcExchange
[DONE] - JhcExchange
[DONE] - JmsExchange
[DONE] - JMXExchange
[DONE] - MailExchange
[DONE] - MinaExchange
[DONE] - MyExchange
[DONE] - QuartzExchange
[DONE] - RemoteFileExchange
[DONE] - SpringIntegrationExchange
TraceEventExchange
[DONE] - XmppExchange

And some hard ones:
GenericFileExchange
[DONE] - RemoteFileExchange

  
> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Hadrian Zbarcea (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47273#action_47273 ] 

Hadrian Zbarcea edited comment on CAMEL-1078 at 6/23/09 2:01 PM:
-----------------------------------------------------------------

Exchange specialized classes to be removed:
[DONE] - BeanExchange
[DONE] - CxfExchange
[DONE] - DummyExchange
[DONE] - FileExchange
[DONE] - HttpExchange
IrcExchange
[DONE] - JhcExchange
JmsExchange
[DONE] - JMXExchange
MailExchange
[DONE] - MinaExchange
[DONE] - MyExchange
[DONE] - QuartzExchange
[DONE] - RemoteFileExchange
[DONE] - SpringIntegrationExchange
TraceEventExchange
XmppExchange



      was (Author: hadrian):
    Exchange specialized classes to be removed:
[DONE] - BeanExchange
[DONE] - CxfExchange
[DONE] - DummyExchange
[DONE] - FileExchange
[DONE] - HttpExchange
IrcExchange
[DONE] - JhcExchange
JmsExchange
[DONE] - JMXExchange
MailExchange
[DONE] - MinaExchange
[DONE] - MyExchange
[DONE] - QuartzExchange
[DONE] - RemoteFileExchange
SpringIntegrationExchange
TraceEventExchange
XmppExchange


  
> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.1.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "James Strachan (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47973#action_47973 ] 

James Strachan commented on CAMEL-1078:
---------------------------------------

after having more coffee (mmm!) - I guess custom exchange implementations don't add a huge value - other than typesafe getters for custom Message objects; so its not a huge biggie.

Custom Message implementations though is a biggie :)

> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Hadrian Zbarcea (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=51697#action_51697 ] 

Hadrian Zbarcea commented on CAMEL-1078:
----------------------------------------

@Roman,
I will work on finishing this issue this week, so we could have it in 2.0-M2.  I am not sure I agree with the no specialized Messages proposal, I hope others will pitch in.  I think it's actually a "cleaner" solution than you "dirty" flag (sorry, couldn't resist it :) ).


> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.1.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47273#action_47273 ] 

Claus Ibsen edited comment on CAMEL-1078 at 7/4/09 12:58 AM:
-------------------------------------------------------------

Exchange specialized classes to be removed:
[DONE] - BeanExchange
[DONE] - CxfExchange
[DONE] - DummyExchange
[DONE] - FileExchange
[DONE] - HttpExchange
[DONE] - IrcExchange
[DONE] - JhcExchange
[DONE] - JmsExchange
[DONE] - JMXExchange
[DONE] - MailExchange
[DONE] - MinaExchange
[DONE] - MyExchange
[DONE] - QuartzExchange
[DONE] - RemoteFileExchange
[DONE] - SpringIntegrationExchange
[DONE] - TraceEventExchange
[DONE] - XmppExchange
- GroupedExchange

And some hard ones:
[DONE] - GenericFileExchange
[DONE] - RemoteFileExchange


      was (Author: hadrian):
    Exchange specialized classes to be removed:
[DONE] - BeanExchange
[DONE] - CxfExchange
[DONE] - DummyExchange
[DONE] - FileExchange
[DONE] - HttpExchange
[DONE] - IrcExchange
[DONE] - JhcExchange
[DONE] - JmsExchange
[DONE] - JMXExchange
[DONE] - MailExchange
[DONE] - MinaExchange
[DONE] - MyExchange
[DONE] - QuartzExchange
[DONE] - RemoteFileExchange
[DONE] - SpringIntegrationExchange
[DONE] - TraceEventExchange
[DONE] - XmppExchange

And some hard ones:
[DONE] - GenericFileExchange
[DONE] - RemoteFileExchange

  
> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47273#action_47273 ] 

Claus Ibsen edited comment on CAMEL-1078 at 7/4/09 2:35 AM:
------------------------------------------------------------

Exchange specialized classes to be removed:
[DONE] - BeanExchange
[DONE] - CxfExchange
[DONE] - DummyExchange
[DONE] - FileExchange
[DONE] - HttpExchange
[DONE] - IrcExchange
[DONE] - JhcExchange
[DONE] - JmsExchange
[DONE] - JMXExchange
[DONE] - MailExchange
[DONE] - MinaExchange
[DONE] - MyExchange
[DONE] - QuartzExchange
[DONE] - RemoteFileExchange
[DONE] - SpringIntegrationExchange
[DONE] - TraceEventExchange
[DONE] - XmppExchange
[DONE]- GroupedExchange

And some hard ones:
[DONE] - GenericFileExchange
[DONE] - RemoteFileExchange


      was (Author: hadrian):
    Exchange specialized classes to be removed:
[DONE] - BeanExchange
[DONE] - CxfExchange
[DONE] - DummyExchange
[DONE] - FileExchange
[DONE] - HttpExchange
[DONE] - IrcExchange
[DONE] - JhcExchange
[DONE] - JmsExchange
[DONE] - JMXExchange
[DONE] - MailExchange
[DONE] - MinaExchange
[DONE] - MyExchange
[DONE] - QuartzExchange
[DONE] - RemoteFileExchange
[DONE] - SpringIntegrationExchange
[DONE] - TraceEventExchange
[DONE] - XmppExchange
- GroupedExchange

And some hard ones:
[DONE] - GenericFileExchange
[DONE] - RemoteFileExchange

  
> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Hadrian Zbarcea (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47273#action_47273 ] 

Hadrian Zbarcea edited comment on CAMEL-1078 at 5/14/09 12:33 PM:
------------------------------------------------------------------

Exchange specialized classes to be removed:
[DONE] - BeanExchange
CxfExchange
[DONE] -DummyExchange
FileExchange
HttpExchange
IrcExchange
[DONE] - JhcExchange
JmsExchange
[DONE] - JMXExchange
MailExchange
[DONE] - MinaExchange
MyExchange
[DONE] - QuartzExchange
RemoteFileExchange
SpringIntegrationExchange
XmppExchange



      was (Author: hadrian):
    Exchange specialized classes to be removed:
[DONE] - BeanExchange
CxfExchange
DummyExchange
FileExchange
HttpExchange
IrcExchange
[DONE] - JhcExchange
JmsExchange
[DONE] - JMXExchange
MailExchange
[DONE] - MinaExchange
MyExchange
[DONE] - QuartzExchange
RemoteFileExchange
SpringIntegrationExchange
XmppExchange


  
> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.1.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47273#action_47273 ] 

Claus Ibsen edited comment on CAMEL-1078 at 7/4/09 12:52 AM:
-------------------------------------------------------------

Exchange specialized classes to be removed:
[DONE] - BeanExchange
[DONE] - CxfExchange
[DONE] - DummyExchange
[DONE] - FileExchange
[DONE] - HttpExchange
[DONE] - IrcExchange
[DONE] - JhcExchange
[DONE] - JmsExchange
[DONE] - JMXExchange
[DONE] - MailExchange
[DONE] - MinaExchange
[DONE] - MyExchange
[DONE] - QuartzExchange
[DONE] - RemoteFileExchange
[DONE] - SpringIntegrationExchange
[DONE] - TraceEventExchange
[DONE] - XmppExchange

And some hard ones:
[DONE] - GenericFileExchange
[DONE] - RemoteFileExchange


      was (Author: hadrian):
    Exchange specialized classes to be removed:
[DONE] - BeanExchange
[DONE] - CxfExchange
[DONE] - DummyExchange
[DONE] - FileExchange
[DONE] - HttpExchange
[DONE] - IrcExchange
[DONE] - JhcExchange
[DONE] - JmsExchange
[DONE] - JMXExchange
[DONE] - MailExchange
[DONE] - MinaExchange
[DONE] - MyExchange
[DONE] - QuartzExchange
[DONE] - RemoteFileExchange
[DONE] - SpringIntegrationExchange
TraceEventExchange
[DONE] - XmppExchange

And some hard ones:
[DONE] - GenericFileExchange
[DONE] - RemoteFileExchange

  
> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Hadrian Zbarcea (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47273#action_47273 ] 

hadrian edited comment on CAMEL-1078 at 11/11/08 8:21 PM:
------------------------------------------------------------------

Exchange specialized classes to be removed:
[DONE] - BeanExchange
CxfExchange
DummyExchange
FileExchange
HttpExchange
IrcExchange
[DONE] - JhcExchange
JmsExchange
[DONE] - JMXExchange
MailExchange
[DONE] - MinaExchange
MyExchange
[DONE] - QuartzExchange
RemoteFileExchange
SpringIntegrationExchange
XmppExchange



      was (Author: hadrian):
    Exchange specialized classes to be removed:
[DONE] - BeanExchange
CxfExchange
DummyExchange
FileExchange
HttpExchange
IrcExchange
[DONE] - JhcExchange
JmxExchange
JMXExchange
MailExchange
[DONE] - MinaExchange
MyExchange
[DONE] - QuartzExchange
RemoteFileExchange
SpringIntegrationExchange
XmppExchange


  
> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Claus Ibsen updated CAMEL-1078:
-------------------------------

    Fix Version/s:     (was: 2.0.0)
                   2.1.0

> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.1.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Hadrian Zbarcea (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47273#action_47273 ] 

Hadrian Zbarcea edited comment on CAMEL-1078 at 6/24/09 9:24 PM:
-----------------------------------------------------------------

Exchange specialized classes to be removed:
[DONE] - BeanExchange
[DONE] - CxfExchange
[DONE] - DummyExchange
[DONE] - FileExchange
[DONE] - HttpExchange
[DONE] - IrcExchange
[DONE] - JhcExchange
JmsExchange
[DONE] - JMXExchange
[DONE] - MailExchange
[DONE] - MinaExchange
[DONE] - MyExchange
[DONE] - QuartzExchange
[DONE] - RemoteFileExchange
[DONE] - SpringIntegrationExchange
TraceEventExchange
XmppExchange

And some hard ones:
GenericFileExchange
JmsExchange

      was (Author: hadrian):
    Exchange specialized classes to be removed:
[DONE] - BeanExchange
[DONE] - CxfExchange
[DONE] - DummyExchange
[DONE] - FileExchange
[DONE] - HttpExchange
IrcExchange
[DONE] - JhcExchange
JmsExchange
[DONE] - JMXExchange
MailExchange
[DONE] - MinaExchange
[DONE] - MyExchange
[DONE] - QuartzExchange
[DONE] - RemoteFileExchange
[DONE] - SpringIntegrationExchange
TraceEventExchange
XmppExchange

And some hard ones:
GenericFileExchange
JmsExchange
  
> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.1.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Hadrian Zbarcea (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=51760#action_51760 ] 

Hadrian Zbarcea commented on CAMEL-1078:
----------------------------------------

This requires a bit of work indeed, I discovered for instance that the xmpp component requires a bit of love.

I agree that this should not hold the 2.0-M2 release.

> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.1.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=52689#action_52689 ] 

Claus Ibsen commented on CAMEL-1078:
------------------------------------

Last one done, so we now only have the DefaultExchange.

Should it be final? 

> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47273#action_47273 ] 

Claus Ibsen edited comment on CAMEL-1078 at 6/24/09 12:10 AM:
--------------------------------------------------------------

Exchange specialized classes to be removed:
[DONE] - BeanExchange
[DONE] - CxfExchange
[DONE] - DummyExchange
[DONE] - FileExchange
[DONE] - HttpExchange
IrcExchange
[DONE] - JhcExchange
JmsExchange
[DONE] - JMXExchange
MailExchange
[DONE] - MinaExchange
[DONE] - MyExchange
[DONE] - QuartzExchange
[DONE] - RemoteFileExchange
[DONE] - SpringIntegrationExchange
TraceEventExchange
XmppExchange

And some hard ones:
GenericFileExchange
JmsExchange

      was (Author: hadrian):
    Exchange specialized classes to be removed:
[DONE] - BeanExchange
[DONE] - CxfExchange
[DONE] - DummyExchange
[DONE] - FileExchange
[DONE] - HttpExchange
IrcExchange
[DONE] - JhcExchange
JmsExchange
[DONE] - JMXExchange
MailExchange
[DONE] - MinaExchange
[DONE] - MyExchange
[DONE] - QuartzExchange
[DONE] - RemoteFileExchange
[DONE] - SpringIntegrationExchange
TraceEventExchange
XmppExchange


  
> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.1.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=52690#action_52690 ] 

Claus Ibsen commented on CAMEL-1078:
------------------------------------

I have created a wiki page for design ideas of optimizations for Camel 2.x.

Please continue the discussion at this page. 

http://cwiki.apache.org/confluence/display/CAMEL/Camel+2.x+Speed+optimizations

> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=52656#action_52656 ] 

Claus Ibsen commented on CAMEL-1078:
------------------------------------

Hadrian only 1 left. Do you work on it or should I give a stab? Would be great to have it done by start of next week so we can get started on a RC build of Camel 2.0.

This is really the last API changes we must get done before a 2.0 can be cut.

> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47284#action_47284 ] 

Claus Ibsen commented on CAMEL-1078:
------------------------------------

+1

camel-extra has no specialized Exchanges, so we are safe there.

> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "James Strachan (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47971#action_47971 ] 

James Strachan commented on CAMEL-1078:
---------------------------------------

For performance btw we don't wanna construct a Camel Exchange / Message until we really really need one - and preferably avoid doing conversions if we can help them.

e.g. don't force the deserialisation of all the JMS Message properties until folks really look at them in a route.

> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=51733#action_51733 ] 

Claus Ibsen commented on CAMEL-1078:
------------------------------------

@Hadrian

I think it requires a bit more work than its possible to do over a weekend.
 
I would like to propose that this work should not hold up 2.0m2 release. I would really like that to get out as its a major leap over 2.0m1. We have done tons of work since and if it was a 1.x series it it would have constituted a new x.+1 release alone.

After the m2 I would love to give us the time needed to research and work with the API to find the right solution. 

> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.1.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Hadrian Zbarcea (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47273#action_47273 ] 

hadrian edited comment on CAMEL-1078 at 11/11/08 5:30 PM:
------------------------------------------------------------------

Exchange specialized classes to be removed:
BeanExchange
CxfExchange
DummyExchange
FileExchange
HttpExchange
IrcExchange
[DONE] - JhcExchange
JmxExchange
JMXExchange
MailExchange
[DONE] - MinaExchange
MyExchange
[DONE] - QuartzExchange
RemoteFileExchange
SpringIntegrationExchange
XmppExchange



      was (Author: hadrian):
    Exchange specialized classes to be removed:
BeanExchange
CxfExchange
DummyExchange
FileExchange
HttpExchange
IrcExchange
[DONE] - JhcExchange
JmxExchange
JMXExchange
MailExchange
[DONE] - MinaExchange
MyExchange
QuarzExchange
RemoteFileExchange
SpringIntegrationExchange
XmppExchange


  
> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Roman Kalukiewicz (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=51690#action_51690 ] 

Roman Kalukiewicz commented on CAMEL-1078:
------------------------------------------

So let me add my thoughts on it.

I believe Exchange don't have to be specialized and moreover messages should be not. To become consistent across all message types and components I believe we should use generic Message class that has an access to original message received from the endpoint.

This solution might have few benefits:
* Consistent look at the message independent of actual component used
** For example in JMS some headers are stored in the JMS message itself, while some in Camel's map of headers, because not every name can be used as JMS property name)
** In few cases I can retrieve a headers via getHeader(String), but they doesn't exists in the map returned by getHeaders() - I believe it was in JBI some time ago. This solution would eliminate those problems at all!
* If we keep original technology-specific message in camel exchange in read-only fashion, we can always access original request that came to the endpoint - it might be generally Object, so it can be used by any component.
** We can also keep some 'dirty' flag that can make solutions more optimal like JMS<->JMS bridge, that can detect unchanged JMS message and send it directly
** I believe because of Camel message model being not always 100% compatible with any technology we should avoid synchronizing camel message with underlying message as it is not always possible or meaningful.
** It involves marshaling/unmarshaling process when message arrives, but I would really like to keep all camel headers/body in one place - in DefaultMessage. Now when you debug, you never know ;) The only usage of subclasses of DefaultMessage I see is to delay marshaling/unmarshaling process like lazy-creating body or headers map when you retrieve them.
* And my beloved topic about one message per exchange - no in/out/fault distinction, but it is different story ;)

I know that all those things can be (in majority) fixed by tailing bugs, but simplification of the concept itself seems to be more bug-proof ;)

Maybe not all of those things should be targeted for 2.0, but those are my thoughts on Camel message model ;)

> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.1.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (CAMEL-1078) Remove specialized Exchange and make DefaultExchange final to pave the road for optimization by reducing exchange copies

Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Claus Ibsen updated CAMEL-1078:
-------------------------------

    Summary: Remove specialized Exchange and make DefaultExchange final to pave the road for optimization by reducing exchange copies  (was: Do not copy Exchanges at each step to improve performance)

> Remove specialized Exchange and make DefaultExchange final to pave the road for optimization by reducing exchange copies
> ------------------------------------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Hadrian Zbarcea (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47273#action_47273 ] 

Hadrian Zbarcea edited comment on CAMEL-1078 at 6/22/09 1:28 PM:
-----------------------------------------------------------------

Exchange specialized classes to be removed:
[DONE] - BeanExchange
CxfExchange
[DONE] -DummyExchange
FileExchange
[DONE] HttpExchange
IrcExchange
[DONE] - JhcExchange
JmsExchange
[DONE] - JMXExchange
MailExchange
[DONE] - MinaExchange
MyExchange
[DONE] - QuartzExchange
RemoteFileExchange
SpringIntegrationExchange
XmppExchange



      was (Author: hadrian):
    Exchange specialized classes to be removed:
[DONE] - BeanExchange
CxfExchange
[DONE] -DummyExchange
FileExchange
HttpExchange
IrcExchange
[DONE] - JhcExchange
JmsExchange
[DONE] - JMXExchange
MailExchange
[DONE] - MinaExchange
MyExchange
[DONE] - QuartzExchange
RemoteFileExchange
SpringIntegrationExchange
XmppExchange


  
> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.1.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Hadrian Zbarcea (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47273#action_47273 ] 

Hadrian Zbarcea commented on CAMEL-1078:
----------------------------------------

Exchange specialized classes to be removed:
BeanExchange
CxfExchange
DummyExchange
FileExchange
HttpExchange
IrcExchange
JhcExchange
JmxExchange
JMXExchange
MailExchange
MinaExchange
MyExchange
QuarzExchange
RemoteFileExchange
SpringIntegrationExchange
XmppExchange



> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (CAMEL-1078) Remove specialized Exchange and make DefaultExchange final to pave the road for optimization by reducing exchange copies

Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Claus Ibsen resolved CAMEL-1078.
--------------------------------

    Resolution: Fixed

Made DefaultExchange final.

Changed ticket subject.

Lets discuss at the design page and then create tickets after Camel 2.0 release and when got the time to do some optimizations.

> Remove specialized Exchange and make DefaultExchange final to pave the road for optimization by reducing exchange copies
> ------------------------------------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (CAMEL-1078) Do not copy Exchanges at each step to improve performance

Posted by "Hadrian Zbarcea (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47273#action_47273 ] 

Hadrian Zbarcea edited comment on CAMEL-1078 at 6/22/09 8:16 PM:
-----------------------------------------------------------------

Exchange specialized classes to be removed:
[DONE] - BeanExchange
[DONE] - CxfExchange
[DONE] - DummyExchange
[DONE] - FileExchange
[DONE] - HttpExchange
IrcExchange
[DONE] - JhcExchange
JmsExchange
[DONE] - JMXExchange
MailExchange
[DONE] - MinaExchange
[DONE] - MyExchange
[DONE] - QuartzExchange
[DONE] - RemoteFileExchange
SpringIntegrationExchange
TraceEventExchange
XmppExchange



      was (Author: hadrian):
    Exchange specialized classes to be removed:
[DONE] - BeanExchange
CxfExchange
[DONE] -DummyExchange
FileExchange
[DONE] HttpExchange
IrcExchange
[DONE] - JhcExchange
JmsExchange
[DONE] - JMXExchange
MailExchange
[DONE] - MinaExchange
MyExchange
[DONE] - QuartzExchange
RemoteFileExchange
SpringIntegrationExchange
XmppExchange


  
> Do not copy Exchanges at each step to improve performance
> ---------------------------------------------------------
>
>                 Key: CAMEL-1078
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1078
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 1.5.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>            Priority: Critical
>             Fix For: 2.1.0
>
>
> The code in DefaultEndpoint.createExchange(Exchange exchange), calls on getExchangeType() to figure out if a new copy of Exchange needs be created.  The code relies though on the generic argument of the Endpoint type to figure out the actual Exchange type.  With the generics removed part of CAMEL-872, getExchangeType() always returns null, forcing a copy every time.
> There is no real need to extend Exchange, so the proposal for this to make the Exchange final and move the component specific bits, if any,  in the Message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.