I noticed that my local starkit cannot retrieve the updates from my cgi sync server. Update can perform the first pull from the server if there is no local copy of the starkit. That's great. Also, update can understand there are changes by using -n flag, however, still, the update operation leaves the virtual file system unchanged. A subsequent run of update with -n says there are still changes on the server compared to the local copy, which is true.
I examined the source and possibly found the reason. In
lib/starsync/starsync.tcl
There is a request procedure. Through the end of the procedure, there is a Mount operation using -nocommit flag:
vfs::mk4::Mount $path $path -nocommit
If I remove that flag, the issue is resolved. The local copy can receive the updates and a subsequent run with update -n says, there is no change on the server. This seems to work for me now, however, I hope I am not distorting the transactional nature of updates by doing so. It would be great to understand that, and if there is no issue involved remove the nocommit flag from the mount operation.
Dr. Koru
Information Systems
UMBC
|