[jira] Commented: (SM-936) FilePoller component leaves the target endpoint in dirty state
[ https://issues.apache.org/activemq/browse/SM-936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_39026 ] Guillaume Nodet commented on SM-936: Well, I was expecting a standard JBI component using servicemix-common. There is already a small lightweight component at http://fisheye6.cenqua.com/browse/servicemix/tags/servicemix-3.1/common/servicemix-components/src/main/java/org/apache/servicemix/components/jdbc/JdbcComponent.java?r=506389 I must admit I'm not very keen on including another lightweight component, as the goal is to use standard JBI components wherever possible. > FilePoller component leaves the target endpoint in dirty state > -- > > Key: SM-936 > URL: https://issues.apache.org/activemq/browse/SM-936 > Project: ServiceMix > Issue Type: Bug > Components: servicemix-file >Affects Versions: 3.1 >Reporter: Dejan Predovic > > FilePoller invokes the target endpoint using simply sendSync(). Many > components require additional call to done() to ensure cleanup and resource > release. Any such component when invoked from FilePoller, FtpPoller (or any > other poller written on the basis of the two) will "leak". -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (SM-936) FilePoller component leaves the target endpoint in dirty state
[ https://issues.apache.org/activemq/browse/SM-936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_39025 ] Dejan Predovic commented on SM-936: --- I need to check with my boss if that's ok, but I have to say I wouldn't really qualify it as "a good JDBC component". It's more "a JDBC component that does the job at the moment". :) Anyway, what the DbMapPoller takes the select statement from the configuration, executes it and generates a message per row. Messages are map-like in form: value value ... messages in that form are send to an in-out target endpoint (usually a transformer). Out message must be in the same map-form, but the values are used as param values for the update or delete statement that needs to take care of the record so that it doesn't get selected again. The config looks something like: select NAE_ESB_EXCHANGE_ID, ESB_MESSAGE_ID, SKS_ID, SIM_SERIALNUMBER from SCHNITTSTELLE..NAE_ESB_EXCHANGE where ESB_MESSAGE_STATE_ID = 1 update SCHNITTSTELLE..NAE_ESB_EXCHANGE set TS_CHANGED=getdate(), ESB_MESSAGE_STATE_ID = convert(int, :stateId), REQUEST_ID = convert(int, :requestId), RESPONSE = :response, ERROR_MESSAGE = :errorMessage where NAE_ESB_EXCHANGE_ID = :id Do you still want it? :) > FilePoller component leaves the target endpoint in dirty state > -- > > Key: SM-936 > URL: https://issues.apache.org/activemq/browse/SM-936 > Project: ServiceMix > Issue Type: Bug > Components: servicemix-file >Affects Versions: 3.1 >Reporter: Dejan Predovic > > FilePoller invokes the target endpoint using simply sendSync(). Many > components require additional call to done() to ensure cleanup and resource > release. Any such component when invoked from FilePoller, FtpPoller (or any > other poller written on the basis of the two) will "leak". -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (SM-936) FilePoller component leaves the target endpoint in dirty state
[ https://issues.apache.org/activemq/browse/SM-936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_39018 ] Guillaume Nodet commented on SM-936: Yeah, in such a case, you just need to call done(exchange) or exchange.setStatus(ExchangeStatus.DONE) getDeliveryChannel().send(exchange) after the call to sendSync, and after having processed the exchange output response. ServiceMix really lacks a good JDBC component. Is yours something you might contribute ? > FilePoller component leaves the target endpoint in dirty state > -- > > Key: SM-936 > URL: https://issues.apache.org/activemq/browse/SM-936 > Project: ServiceMix > Issue Type: Bug > Components: servicemix-file >Affects Versions: 3.1 >Reporter: Dejan Predovic > > FilePoller invokes the target endpoint using simply sendSync(). Many > components require additional call to done() to ensure cleanup and resource > release. Any such component when invoked from FilePoller, FtpPoller (or any > other poller written on the basis of the two) will "leak". -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (SM-936) FilePoller component leaves the target endpoint in dirty state
[ https://issues.apache.org/activemq/browse/SM-936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_39012 ] Guillaume Nodet commented on SM-936: The FilePoller and FtpPoller only use InOnly exchanges. For such exchanges, the provider (the target service) is responsible for sending the DONE exchange to the consumer (the poller), but there is no additional roundtrip. > FilePoller component leaves the target endpoint in dirty state > -- > > Key: SM-936 > URL: https://issues.apache.org/activemq/browse/SM-936 > Project: ServiceMix > Issue Type: Bug > Components: servicemix-file >Affects Versions: 3.1 >Reporter: Dejan Predovic > > FilePoller invokes the target endpoint using simply sendSync(). Many > components require additional call to done() to ensure cleanup and resource > release. Any such component when invoked from FilePoller, FtpPoller (or any > other poller written on the basis of the two) will "leak". -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
