4.13  More About Syncing Among Macs

This section gives technical detail which may be helpful for troubleshooting any problems that might occur when synchronizing your bookmarks among Macs, assuming that you have fully activated Simple Agents for two-way syncing like this…

4.13.1  Step By Step

We show the actions which occur when you add or otherwise change a bookmark in a client web browser’s built-in bookmarks under the above conditions, using Dropbox as the Online File Syncing Service.

As you read the steps below, you can follow along in this drawing…

A.  Due to the to Import Changes from Clients checkbox, after 1-5 minutes, bookmarks changes you make in the bulit-in bookmarks of your web browsers are detected and imported into Smarky, Synkmark or BookMacster.  If the app is running and has the subject Collection open, the Worker will instruct the app to process the file and you’ll see the actions in the Status Bar; otherwise, the invisible Worker will process the file itself and you won’t see anything.  If you have checked the box Export Results to Clients, the app, or a Worker, will export changes, if any, to the other client web browsers on the local Mac.

B.  Internally, this Agent has a command to Save Document after the export, so the Collection() (.bkmxDoc file), which is in your Dropbox folder, gets saved to your Dropbox folder.

C.  The Dropbox application is always watching your Dropbox folder.  When it sees the changes in your Collection, it compresses them and then…

D.  Uploads the changes to the nearest Dropbox server.

E.  The Dropbox servers synchronize each other over the internet.

F.  The Dropbox application on your other Mac will receive the changes.  If you have just logged in or waken from sleep, Dropbox waits about 60 seconds for the things to calm down, and probably to get some assurance that the connection is going to stick around.

G.  The Dropbox application on your other Mac moves the original version to an archive in ~/.dropbox/cache, and then reconstructs the file, including the changes it receives, back into the Dropbox folder.  After Dropbox has received the file, you’ll see a Growl notification from Dropbox (unless you’ve disabled them).

H.  A Smarky, Synkmark or BookMacster Agent sees that the file has changed, and activates an Agent’s Worker.  Or, if you leave a Collection open, the app itself detects when changes are received from the remote server and automatically reloads the file – this behavior is hard-wired ON, even if you are not using Dropbox and have not enabled any Agents.  In the latter case, if the Collection is the active window or has unsaved changes when its file is updated, an Alert is displayed, and you must choose whether to Update to the server’s version and lose your changes, or vice versa.  In either case…

I.  The same Agent has a command (its only command) to Export changes to the Client web browsers on your other Mac.

(The cloud and network icons in the figure are provided by Open Security Architecture under the Creative Commons License.)

4.13.2  Slow but Sure

Although Smarky, Synkmark or BookMacster have built in methods to handle file conflicts, as do Online File Syncing Services, it is best if conflicts do not occur because the dialogs you will be asked to click through are annoying.  To minimize conflicts, before an Agent’s Worker performs work on a Collection which is located in your Dropbox, it takes some samples of Dropbox app activity to make sure it is not busy.  This analysis takes about 15 seconds.  Also, because Dropbox is somewhat active during Time Machine backups, Worker activity on a Collection in your Dropbox is also usually delayed for an additional minute or two while Time Machine is doing a backup.  It gives up after 20 minutes.

4.13.3  Deleted or Replaced Files

If a file is deleted or replaced on one Mac, Dropbox moves it into a special cache folder on other Macs, and appends (deleted) and a string of characters to its name, resulting in something funky like this:

   My Bookmarks (deleted 95d803a1e8aa701e86fbcbd1506e338e).bkmxDoc

Therefore, if you want to trash a Collection file which is in your Dropbox, you must trash it on each Mac.  To do that,

If you’ve changed your mind about this document and instead you want to keep it, instead of Close and Delete, you’ll want to rename and move the document.  To rename and move,