Hi Below is my envmt of Camel application deployment OS: Suse Linux 2.6.34.7-0.3 File System nodes: Distributed file system based out of NAS mounted through NFS. They are mounted on 2 Linux nodes though Camel only runs in one of the node.
There is a file reader as shown below: from("file:{{fmsSys.root.ClientFile.Mailbox}}?noop=true&recursive=true&sortBy=file:modified" + "&idempotentKey=${file:name}-${file:size}-${date:now:yyyyMMddssSSS}" + "&readLock=changed"+ "&preMove={{fmsSys.root.File.InProgress.In}}/${file:name}" + "&antInclude={{fmsSys.root.ClientFile.Mailbox.AntIncludeDir}}" + "&antExclude={{fmsSys.root.ClientFile.Mailbox.AntExcludeDir}}").routeId("CommonMailboxReader") .routeId("ClientMailboxReader") .setHeader(FMSHeaders.FILE_ORIGIN, constant(FileOriginType.EXTERNAL)) .setHeader(FMSHeaders.INBOUND_FILE_PATH, header(Exchange.FILE_PATH)) .to("log:ClientMailboxReader?level=DEBUG&showExchangeId=true&showHeaders=true&showProperties=true&multiline=true&showFiles=true") .threads() .to("seda:RegisterFile") ; Issue: If the file size is large (about 750MB) whereby you have a slow writer and if FTP transferred/Linux copied to Camel Linux node, the above code works fine by getting the ExclusiveRead Lock and doing the premove of the file completely. However if the same file is FTP transferrered/Linux copied to non Camel Linux node (acting just as a file mount), it does a premove wrongly whereby only partial file is moved (ie about 500MB). Options tried: 1)readLock=markerFile //doesn't even work 2)readLock=rename// doesn't work even on the Camel linux node 3)I did read the section titled "Consuming files from folders where others drop files directly" on the page http://camel.apache.org/file2.html, which didn't assist me further. Please advice what could be done to make it work? -- View this message in context: http://camel.465427.n5.nabble.com/Issues-with-Exclusive-File-ReadLock-tp5750661.html Sent from the Camel - Users mailing list archive at Nabble.com.