我正在使用camel替换文件中的数据(它是400 MB的大文件),即使文件正在使用(它处于写入模式),我也面临其他消费者拾取文件的问题。
骆驼有没有办法锁定处于写入模式的文件,这样另一个消费者/路线就不能消费了。它应该在写入完成后消耗。我尝试使用 readLocks 但到目前为止没有运气。
from("file://A").split().tokenize("\n", 999).streaming()
.log("Spliting::::::::::").unmarshal(csv).bean("transferDate", "enrich")
.marshal(csv).to("file://B?fileExist=Append");
from("file://B?delete=true").to("file://A"); // this route pick up file even the first route haven't finished writing file completely