Bhuvan Gupta created CAMEL-12112:
------------------------------------

             Summary: Camel processing single file twice in 'file' endpoint
                 Key: CAMEL-12112
                 URL: https://issues.apache.org/jira/browse/CAMEL-12112
             Project: Camel
          Issue Type: Bug
          Components: camel-core
    Affects Versions: 2.18.5, 2.17.7
         Environment: We are using Apache Camel core 2.18.5, Oracle Java 1.8, 
we have tried on Ubuntu and window 7 both.
            Reporter: Bhuvan Gupta
         Attachments: App.java

 we defined our route as:

        from("file:stageDummy")
        .threads(1)
        .process(myProcess);

   We first add 1000 file in stageDummy folder, then we run the code and we get 
exception as below



{code:java}
org.apache.camel.component.file.GenericFileOperationFailedException: Cannot 
rename file: GenericFile[newFile319] to: GenericFile[.camel/newFile319]
        at 
org.apache.camel.component.file.strategy.GenericFileProcessStrategySupport.renameFile(GenericFileProcessStrategySupport.java:115)
        at 
org.apache.camel.component.file.strategy.GenericFileRenameProcessStrategy.commit(GenericFileRenameProcessStrategy.java:88)
        at 
org.apache.camel.component.file.GenericFileOnCompletion.processStrategyCommit(GenericFileOnCompletion.java:127)
        at 
org.apache.camel.component.file.GenericFileOnCompletion.onCompletion(GenericFileOnCompletion.java:83)
        at 
org.apache.camel.component.file.GenericFileOnCompletion.onComplete(GenericFileOnCompletion.java:57)
        at 
org.apache.camel.util.UnitOfWorkHelper.doneSynchronizations(UnitOfWorkHelper.java:104)
        at 
org.apache.camel.impl.DefaultUnitOfWork.done(DefaultUnitOfWork.java:229)
        at 
org.apache.camel.util.UnitOfWorkHelper.doneUow(UnitOfWorkHelper.java:65)
        at 
org.apache.camel.processor.CamelInternalProcessor$UnitOfWorkProcessorAdvice.after(CamelInternalProcessor.java:654)
        at 
org.apache.camel.processor.CamelInternalProcessor$UnitOfWorkProcessorAdvice.after(CamelInternalProcessor.java:609)
        at 
org.apache.camel.processor.CamelInternalProcessor$InternalCallback.done(CamelInternalProcessor.java:239)
        at 
org.apache.camel.processor.CamelInternalProcessor$InternalCallback.done(CamelInternalProcessor.java:250)
        at 
org.apache.camel.processor.RedeliveryErrorHandler$1.done(RedeliveryErrorHandler.java:480)
        at 
org.apache.camel.management.InstrumentationProcessor$1.done(InstrumentationProcessor.java:86)
        at org.apache.camel.processor.Pipeline$1.done(Pipeline.java:148)
        at 
org.apache.camel.processor.ThreadsProcessor$ProcessCall.run(ThreadsProcessor.java:85)
        at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
        at java.util.concurrent.FutureTask.run(FutureTask.java:262)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)


{code}
As per our understanding camel picks up the file from the mentioned directory 
i.e in my case-stageDummy and processed by process-myProcess
and moves it to .camel sub folder.We noticed that if we were having more than 
or around 1000 files in the folder -stageDummy ,there were some exceptions
thrown 

This exception is thrown randomly for n number of files,where n changes 
everytime we execute our main.Note that we were not trying to access the 
exchange 
instead we kept our process simple.We could see that if there are 1000 files in 
our folder then the processor is getting called 1000+x times ,where x changes 
everytime example it gets called 1024 times,and we could see that camel is 
trying to process  these x number of files again

We are attaching the Sample Main class



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to