We cannot reproduce your problem. There can be several reasons why a file cannot be renamed, but unfortunately the file api just returns a boolean if it cannot rename a file. A typical problem is that your do some custom code where you read the file or do something with a input stream you do not close properly.
Also using threads(1) does not really make sense. On Tue, Jan 2, 2018 at 6:02 AM, Bhuvan Gupta <bhuva...@gmail.com> wrote: > Hello nice people, > > We are using camel 2.17 with java 1.7 in our sample project and 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 > > > 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) > > 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 Main class as well as the project zip > > AND HAPPY NEW YEAR. > > hoping to resolve it soon > > > > -- Claus Ibsen ----------------- http://davsclaus.com @davsclaus Camel in Action 2: https://www.manning.com/ibsen2