I am scratching my head here how it is possible that ST deleted files that were on a network drive from remote nodes and then deleted them back from my main node when there was a temporary network outage.
The drives are local network drives. There was a network failure. ST deleted emptied the repo from the remote node, once they the network back, in return it also deleted the files on the original network drive.
It is a bit messed up if you will. I mean cant ST differentiate between nonexisting drives and deleted files? The weird thing is that the files are gone but the folders are there.
I am assuming that it was caused by ST because no other system , user or device accessing the files.
Yeah I knew that it has to find the .stfolder file first. That is why I am puzzled abit. I am pretty sure that when the network was down it was not able to find the file.
@AudriusButkevicius
It is peculiar sitation. I do not know how to produce this for sure, I can only speculate based on thje results I have here
Can you set up some test repos and try to recreate the network failure? Try to reproduce the “status” of the nodes — for example, whether or not they were in sync, etc. And of course, all with appropriate values of STTRACE.
Also, you may want to use lsof to double-check that nothing else accesses the files normally, just for completeness.
Depending on what the network mount does, there could be corner cases. For example maybe the existence of .stfolder was cached and there was no problem accessing it, but we got an IO error scanning the other files. We would then conclude they don’t exist any more.
The topology of the network mount was like this. ST runs on Linux but the files were on a NTFS drive that was on another pc that was running Windows7. The network mount was done via samba. I wonder if Samba does some caching but I cant be sure.