Regrettably, my experience with syncing has revealed that this service is just not reliable. I've had a few incidents where syncing two computers via Webbrain sync has not given desired results particularly with respect to internal attachments.
Case in point: Today an internal Word document was deleted from my office computer brain (call it WorkBrain) after syncing, having synced the previous evening from my home computer (call it HomeBrain). Luckily I had a printout of the four-page attachment and was able to reproduce the changes I had made at home and submit the document on time.
Before syncing from work, I relocated the newly edited internal attachment to another thought in WorkBrain. When I returned home I immediately checked HomeBrain before syncing and saw the attachment as I had left it this morning. Without further ado, I synced HomeBrain expecting it to
- Delete the Word attachment from the thought in question and
- Display the relocated Word attachment from WorkBrain in the corresponding thought
Step 2 happened, but Step 1 did not! The Word document was still in its original thought in HomeBrain even though it was absent in Webbrain, as shown below after synchronizing TWICE:
The image shows that ERFA 2014.docx on HomeBrain was probably not transferred to Webbrain the previous evening, resulting in its deletion from WorkBrain the next day. What is curious, is that it remains glued to only HomeBrain even after a normal sync (not a forced sync).
The relevant area in the output.log reveals an orphaned attachment and a java exception:
4125308 [AWT-EventQueue-0] WARN com.thebrain.common.model.h - Orphaned attachment 1808 - C32B1A2B-4662-3DCD-2E69-F4A8EA2C45EE\ERFA 2014.docx
4125316 [AWT-EventQueue-0] WARN com.thebrain.common.model.h - Orphaned attachment 1808 - C32B1A2B-4662-3DCD-2E69-F4A8EA2C45EE\ERFA 2014.docx fixed - added back as internal to thought/link 2,694
4125316 [AWT-EventQueue-0] WARN com.thebrain.common.model.h - Fixed link to internal file C:\Users\Michael\Documents\MyBrains\[omitted]_brain\Files\C32B1A2B-4662-3DCD-2E69-F4A8EA2C45EE\ERFA 2014.docx
4125319 [Thread-745] ERROR com.thebrain.personal.d.l.j -
java.io.IOException: Zugriff verweigert
at java.io.WinNTFileSystem.createFileExclusively(Native Method)
at java.io.File.createNewFile(Unknown Source)
at java.lang.Thread.run(Unknown Source)
This was a real bummer today and I can see the message of choice is mirroring changes of WorkBrain and HomeBrain using external storage media and a reliable synchronizing tool with the appropriate settings (this has proven most reliable!).
How can synchronization be made more reliable?
One thing that bothers me is that I must open a local brain in order to synchronize it. I presume this step changes timestamps in the local brain files as well as content in some meta data in various tables. Would it be feasible and advantageous to add an option in the context menu of the list of brains to sync prior to opening the local brain?
Would that enhance reliability at all or in any other way be a desirable feature?
TheBrain 9.0.263.0 / 22.214.171.124 / JRE 1.8.0_161 / Win7 Pro, v. 6.1.7601 SP1 Build 7601