Again we’re meeting in Berlin at Woboq Intl. Headquarters to work on the ownCloud Sync Client again. One of our topics is the still not completely fixed problem with conflict files. There has been lots of troubles about false conflict files the client is generating in that situations were the ETag database is wasted.
We revisited this problem and will come up with a better solution.
The key changes will probably be
- Conflict files will never again be generated on the server. Even if we are in a conflict situation, we will download the file and keep the conflicting version only on the client. This enables us to detect false conflicts.
- The current way we handle a system time difference has to be changed. We wont adjust the file mtimes of files in the file system any more with the time difference between the client and server. That way we do not suffer from floating time differences any more.
For the decision of which version is more recent, we will still consider the time difference.
- We will use a very quick request like OPTION to get the servers time setting to the client. That will allow to calculate the time difference between server and client more accurately. It’s needed to decide which file is more recent.