FAQ

[ServiceMix-users] Servicemix-ftp poller is not deleting files after processing

Kusma
Oct 17, 2008 at 3:34 am
Hi, I am using servicemix version 3.3.1.6. I have my ftp-poller configured as
below:

<ftp:poller service="tut:file"
endpoint="poller"
targetService="mp:transformBeanService" deleteFile="true"
uri="ftp://userid:passwd@remotehostname//tmp/fnlprceresponse">
<property name="filter">
<bean class="org.apache.commons.io.filefilter.WildcardFilter">
<constructor-arg value="*.csv" />
</bean>
</property>
<property name="marshaler">
<bean
class="org.apache.servicemix.components.util.BinaryFileMarshaler" >
<property name="attachment" value="content"/>
</bean>
</property>

</ftp:poller>

As per the above configuration, i expect the poller to delete the files
after successful processing (if everything goes without error). But that is
not what happening. I do not know if there is a bug in the poller component
or i am missing something.
I would appreciate any help on this.
Thanks in advance,
--
View this message in context: http://www.nabble.com/Servicemix-ftp-poller-is-not-deleting-files-after-processing-tp20026572p20026572.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.
reply

Search Discussions

4 responses

  • Lars Heinemann at Oct 17, 2008 at 6:39 am
    Hi,

    I fear there is no servicemix release with that version number yet :)
    Maybe you are speaking about Fuse?
    Regarding to the xbean content you may be right. The delete flag defaults to
    true and you explicitely set it to true as well, so the file should have been
    deleted.

    Have you had a look at the log files if errors occured? Have you turned on the
    DEBUG log level and tried again if there is some output regarding the file
    deletion?

    Regards
    Lars


    Am Freitag 17 Oktober 2008 05:34:13 schrieb kusma:
    Hi, I am using servicemix version 3.3.1.6. I have my ftp-poller configured
    as below:

    <ftp:poller service="tut:file"
    endpoint="poller"
    targetService="mp:transformBeanService" deleteFile="true"
    uri="ftp://userid:passwd@remotehostname//tmp/fnlprceresponse">
    <property name="filter">
    <bean class="org.apache.commons.io.filefilter.WildcardFilter">
    <constructor-arg value="*.csv" />
    </bean>
    </property>
    <property name="marshaler">
    <bean
    class="org.apache.servicemix.components.util.BinaryFileMarshaler" >
    <property name="attachment" value="content"/>
    </bean>
    </property>

    </ftp:poller>

    As per the above configuration, i expect the poller to delete the files
    after successful processing (if everything goes without error). But that is
    not what happening. I do not know if there is a bug in the poller component
    or i am missing something.
    I would appreciate any help on this.
    Thanks in advance,
  • Kusma at Oct 17, 2008 at 9:18 pm
    Hi Lars,
    Thanks for the quick reply
    Yes, I actually meant Fuse version.

    To your point, i tried to turn on the DEBUG log level on
    "org.apache.servicemix" logger. I could not find any messages regarding the
    file deletion, i do not know if the 'Unable to acquire lock' message implies
    anything.
    FYI, Following are the log message that i see from my log file.

    DEBUG | pool-component.servicemix-file-thread-6 | FileComponent |
    icemix.file.FilePollerEndpoint 289 | Polling directory
    c:\test\servicemix\in
    DEBUG | pool-component.servicemix-file-thread-6 | FileComponent |
    icemix.file.FilePollerEndpoint 301 | Scheduling file
    c:\test\servicemix\in\test.csv for processing
    DEBUG | pool-component.servicemix-file-thread-6 | FileComponent |
    icemix.file.FilePollerEndpoint 301 | Scheduling file
    c:\test\servicemix\in\upspricingoutput.csv for processing
    DEBUG | pool-component.servicemix-file-thread-7 | FileComponent |
    emix.file.FilePollerEndpoint$1 318 | Unable to acquire lock on
    c:\test\servicemix\in\test.csv
    DEBUG | pool-component.servicemix-file-thread-6 | FileComponent |
    emix.file.FilePollerEndpoint$1 318 | Unable to acquire lock on
    c:\test\servicemix\in\upspricingoutput.csv


    thanks
    Chitti



    lhe77 wrote:
    Hi,

    I fear there is no servicemix release with that version number yet :)
    Maybe you are speaking about Fuse?
    Regarding to the xbean content you may be right. The delete flag defaults
    to
    true and you explicitely set it to true as well, so the file should have
    been
    deleted.

    Have you had a look at the log files if errors occured? Have you turned on
    the
    DEBUG log level and tried again if there is some output regarding the file
    deletion?

    Regards
    Lars


    Am Freitag 17 Oktober 2008 05:34:13 schrieb kusma:
    Hi, I am using servicemix version 3.3.1.6. I have my ftp-poller
    configured
    as below:

    <ftp:poller service="tut:file"
    endpoint="poller"
    targetService="mp:transformBeanService" deleteFile="true"

    uri="ftp://userid:passwd@remotehostname//tmp/fnlprceresponse">
    <property name="filter">
    <bean class="org.apache.commons.io.filefilter.WildcardFilter">
    <constructor-arg value="*.csv" />
    </bean>
    </property>
    <property name="marshaler">
    <bean
    class="org.apache.servicemix.components.util.BinaryFileMarshaler" >
    <property name="attachment" value="content"/>
    </bean>
    </property>

    </ftp:poller>

    As per the above configuration, i expect the poller to delete the files
    after successful processing (if everything goes without error). But that
    is
    not what happening. I do not know if there is a bug in the poller
    component
    or i am missing something.
    I would appreciate any help on this.
    Thanks in advance,
    --
    View this message in context: http://www.nabble.com/Servicemix-ftp-poller-is-not-deleting-files-after-processing-tp20026572p20041211.html
    Sent from the ServiceMix - User mailing list archive at Nabble.com.
  • Lars Heinemann at Oct 20, 2008 at 8:40 am
    Chitti,

    the log messages say that those 2 files can't be locked by the poller endpoint.
    This can have several reasons...
    * the files were already polled and no answer was received yet so the lock can
    be released
    * the servicemix user has no rights on those files
    * etc.

    My suggestion is to check the message flow in the debug level. The normal flow
    would be that your file poller schedules and processes a file and sends a InOnly
    exchange to a targetService. This target service will do something and
    afterwards send a DONE (if all is ok) or an ERROR (if processing failed).
    The file poller will receive this state and will delete the file and release the
    lock.

    Please make sure, that the flow behaves like this in your case.

    Regards
    Lars


    Am Freitag 17 Oktober 2008 23:18:04 schrieb kusma:
    Hi Lars,
    Thanks for the quick reply
    Yes, I actually meant Fuse version.

    To your point, i tried to turn on the DEBUG log level on
    "org.apache.servicemix" logger. I could not find any messages regarding
    the file deletion, i do not know if the 'Unable to acquire lock' message
    implies anything.
    FYI, Following are the log message that i see from my log file.

    DEBUG | pool-component.servicemix-file-thread-6 | FileComponent
    icemix.file.FilePollerEndpoint 289 | Polling directory
    c:\test\servicemix\in
    DEBUG | pool-component.servicemix-file-thread-6 | FileComponent
    icemix.file.FilePollerEndpoint 301 | Scheduling file
    c:\test\servicemix\in\test.csv for processing
    DEBUG | pool-component.servicemix-file-thread-6 | FileComponent
    icemix.file.FilePollerEndpoint 301 | Scheduling file
    c:\test\servicemix\in\upspricingoutput.csv for processing
    DEBUG | pool-component.servicemix-file-thread-7 | FileComponent
    emix.file.FilePollerEndpoint$1 318 | Unable to acquire lock on
    c:\test\servicemix\in\test.csv
    DEBUG | pool-component.servicemix-file-thread-6 | FileComponent
    emix.file.FilePollerEndpoint$1 318 | Unable to acquire lock on
    c:\test\servicemix\in\upspricingoutput.csv


    thanks
    Chitti

    lhe77 wrote:
    Hi,

    I fear there is no servicemix release with that version number yet :)
    Maybe you are speaking about Fuse?
    Regarding to the xbean content you may be right. The delete flag defaults
    to
    true and you explicitely set it to true as well, so the file should have
    been
    deleted.

    Have you had a look at the log files if errors occured? Have you turned
    on the
    DEBUG log level and tried again if there is some output regarding the
    file deletion?

    Regards
    Lars

    Am Freitag 17 Oktober 2008 05:34:13 schrieb kusma:
    Hi, I am using servicemix version 3.3.1.6. I have my ftp-poller
    configured
    as below:

    <ftp:poller service="tut:file"
    endpoint="poller"
    targetService="mp:transformBeanService" deleteFile="true"

    uri="ftp://userid:passwd@remotehostname//tmp/fnlprceresponse">
    <property name="filter">
    <bean class="org.apache.commons.io.filefilter.WildcardFilter">
    <constructor-arg value="*.csv" />
    </bean>
    </property>
    <property name="marshaler">
    <bean
    class="org.apache.servicemix.components.util.BinaryFileMarshaler" >
    <property name="attachment" value="content"/>
    </bean>
    </property>

    </ftp:poller>

    As per the above configuration, i expect the poller to delete the files
    after successful processing (if everything goes without error). But that
    is
    not what happening. I do not know if there is a bug in the poller
    component
    or i am missing something.
    I would appreciate any help on this.
    Thanks in advance,
  • Kusma at Oct 20, 2008 at 8:44 pm
    Thanks much Lars.
    I forgot to set the status to DONE in my target service. I fixed that now
    and is working fine.

    Thanks again for your help.
    Chitti



    lhe77 wrote:
    Chitti,

    the log messages say that those 2 files can't be locked by the poller
    endpoint.
    This can have several reasons...
    * the files were already polled and no answer was received yet so the lock
    can
    be released
    * the servicemix user has no rights on those files
    * etc.

    My suggestion is to check the message flow in the debug level. The normal
    flow
    would be that your file poller schedules and processes a file and sends a
    InOnly
    exchange to a targetService. This target service will do something and
    afterwards send a DONE (if all is ok) or an ERROR (if processing failed).
    The file poller will receive this state and will delete the file and
    release the
    lock.

    Please make sure, that the flow behaves like this in your case.

    Regards
    Lars


    Am Freitag 17 Oktober 2008 23:18:04 schrieb kusma:
    Hi Lars,
    Thanks for the quick reply
    Yes, I actually meant Fuse version.

    To your point, i tried to turn on the DEBUG log level on
    "org.apache.servicemix" logger. I could not find any messages regarding
    the file deletion, i do not know if the 'Unable to acquire lock' message
    implies anything.
    FYI, Following are the log message that i see from my log file.

    DEBUG | pool-component.servicemix-file-thread-6 | FileComponent
    icemix.file.FilePollerEndpoint 289 | Polling directory
    c:\test\servicemix\in
    DEBUG | pool-component.servicemix-file-thread-6 | FileComponent
    icemix.file.FilePollerEndpoint 301 | Scheduling file
    c:\test\servicemix\in\test.csv for processing
    DEBUG | pool-component.servicemix-file-thread-6 | FileComponent
    icemix.file.FilePollerEndpoint 301 | Scheduling file
    c:\test\servicemix\in\upspricingoutput.csv for processing
    DEBUG | pool-component.servicemix-file-thread-7 | FileComponent
    emix.file.FilePollerEndpoint$1 318 | Unable to acquire lock on
    c:\test\servicemix\in\test.csv
    DEBUG | pool-component.servicemix-file-thread-6 | FileComponent
    emix.file.FilePollerEndpoint$1 318 | Unable to acquire lock on
    c:\test\servicemix\in\upspricingoutput.csv


    thanks
    Chitti

    lhe77 wrote:
    Hi,

    I fear there is no servicemix release with that version number yet :)
    Maybe you are speaking about Fuse?
    Regarding to the xbean content you may be right. The delete flag defaults
    to
    true and you explicitely set it to true as well, so the file should have
    been
    deleted.

    Have you had a look at the log files if errors occured? Have you turned
    on the
    DEBUG log level and tried again if there is some output regarding the
    file deletion?

    Regards
    Lars

    Am Freitag 17 Oktober 2008 05:34:13 schrieb kusma:
    Hi, I am using servicemix version 3.3.1.6. I have my ftp-poller
    configured
    as below:

    <ftp:poller service="tut:file"
    endpoint="poller"
    targetService="mp:transformBeanService" deleteFile="true"

    uri="ftp://userid:passwd@remotehostname//tmp/fnlprceresponse">
    <property name="filter">
    <bean class="org.apache.commons.io.filefilter.WildcardFilter">
    <constructor-arg value="*.csv" />
    </bean>
    </property>
    <property name="marshaler">
    <bean
    class="org.apache.servicemix.components.util.BinaryFileMarshaler"
    <property name="attachment" value="content"/>
    </bean>
    </property>

    </ftp:poller>

    As per the above configuration, i expect the poller to delete the
    files
    after successful processing (if everything goes without error). But
    that
    is
    not what happening. I do not know if there is a bug in the poller
    component
    or i am missing something.
    I would appreciate any help on this.
    Thanks in advance,
    --
    View this message in context: http://www.nabble.com/Servicemix-ftp-poller-is-not-deleting-files-after-processing-tp20026572p20078370.html
    Sent from the ServiceMix - User mailing list archive at Nabble.com.

Related Discussions

Discussion Navigation
viewthread | post

2 users in discussion

Kusma: 3 posts Lars Heinemann: 2 posts