From my (Linux-)application, I am watching a hotfolder for specific sets of files. For example, I am waiting for this set:
- example-1.xml
- example-2.xml
- example-3.xml
The hotfolder is shared over the network via SMB. Now, to be sure that all files are written before I move them away, I will wait for one last empty file:
- example.done
My client will ensure that this file will be the last file that is written.
My assumptions are:
- files will be sent over the network and stored on disk in the order they were written.
- once the example.done file is available, all previous files will be complete.
Are these assumptions correct?
Searching for "file system guarantees" only results in explanations of in-file ordering or reliability in system crashes:
Guarantees of order of the operations on file
Does Linux guarantee the contents of a file is flushed to disc after close()?
What reliability guarantees are provided by NTFS?