Discussion:
[unison-users] Re: Destination updated during synchronization
Jason Crawford nnd160615uns@trewt.us [unison-users]
2017-03-06 18:08:02 UTC
Permalink
Hi Team,
I've read other threads, but the suggestions there have not helped me.

I run Unison v 2.40.102 on a variety of Windows 7/10 (cygwin) and
CentOS machines. I have a central CentOS machine that the Windows
machines sync with each a few minutes apart from another. Most syncs are
bidirectional.

I'm consistently facing a problem where after I run Quickbooks on my
Windows 7 machine, when the changes eventually are synced to my Windows
10 machine (via the central CentOS machine), unison complains that the
bmfd.qbw.ND file at the destination (Window10) machine is being changed:

[update] checkNoUpdates /cygdrive/c/firehouse engine/quickbooks/bmfd.qbw.ND
[update] buildUpdate: /cygdrive/c/firehouse/engine/quickbooks/bmfd.qbw.ND
[update] buildUpdate -> Deleted
Failed: Destination updated during synchronization
The file engine/quickbooks/bmfd.qbw.ND has been deleted

You can find a much more detailed summary of the logs here:
http://zwork11.zwpost.com/ccjason/unilog.2017-02-19-182127.summary.log

I'm not deeply familiar enough with unison to interpret those detailed
unison logs. I'm hoping someone here is. The summary includes all
lines in the log file(s) near occurrences of the string bmfd.qbw.ND. If
there are other lines of the logs that would be interesting, let me know.

Of note: nothing on the Windows 10 machine (besides Unison) should be
messing with that destination directory. The modification flow should
be [windows7] -> [centos] -> [window10]. The clocks on all machines
are within two seconds of each other. We never see two unison commands
running against the same machine at once.

I can work around this problem by using the -prefers parameter on the
win10 machine, but my understanding is that that should not be
necessary. And some day I might want to edit on both machines in which
case the -prefers parameter would not be ideal.

Any help you can provide would be appreciated. Please let me know if
you have additional questions.

Thanks,

J
Alan Schmitt alan.schmitt@polytechnique.org [unison-users]
2017-03-07 07:32:07 UTC
Permalink
Hello Jason,
Post by Jason Crawford ***@trewt.us [unison-users]
I run Unison v 2.40.102 on a variety of Windows 7/10 (cygwin) and
CentOS machines. I have a central CentOS machine that the Windows
machines sync with each a few minutes apart from another. Most syncs
are bidirectional.
I'm consistently facing a problem where after I run Quickbooks on my
Windows 7 machine, when the changes eventually are synced to my
Windows 10 machine (via the central CentOS machine), unison complains
that the bmfd.qbw.ND file at the destination (Window10) machine is
[update] checkNoUpdates /cygdrive/c/firehouse engine/quickbooks/bmfd.qbw.ND
[update] buildUpdate: /cygdrive/c/firehouse/engine/quickbooks/bmfd.qbw.ND
[update] buildUpdate -> Deleted
Failed: Destination updated during synchronization
The file engine/quickbooks/bmfd.qbw.ND has been deleted
http://zwork11.zwpost.com/ccjason/unilog.2017-02-19-182127.summary.log
I'm not deeply familiar enough with unison to interpret those detailed
unison logs. I'm hoping someone here is. The summary includes all
lines in the log file(s) near occurrences of the string bmfd.qbw.ND.
If there are other lines of the logs that would be interesting, let me
know.
Of note: nothing on the Windows 10 machine (besides Unison) should be
messing with that destination directory. The modification flow should
be [windows7] -> [centos] -> [window10]. The clocks on all machines
are within two seconds of each other. We never see two unison commands
running against the same machine at once.
I can work around this problem by using the -prefers parameter on the
win10 machine, but my understanding is that that should not be
necessary. And some day I might want to edit on both machines in which
case the -prefers parameter would not be ideal.
Any help you can provide would be appreciated. Please let me know if
you have additional questions.
The reason synchronization fails is because, as you correctly noted, the
file is updated/deleted on the Windows 10 machine. I searched for what
kind of file this is, and it seems to be something internal to
Quickbooks:
https://community.intuit.com/articles/1020931-what-is-an-nd-file

It does not seem to be necessary to synchronize that file:
https://www.experts-exchange.com/questions/26206047/QBW-ND-QBW-TLG-files.html

So I guess what is happening is that there is a helper process on the
windows machine that is watching files for Quickbooks, and when there
are updates to the data file, it recreates this ND file, hence
preventing its successful synchronization.

I would thus suggest that you ignore this file in your unison profile.

Best,

Alan
--
OpenPGP Key ID : 040D0A3B4ED2E5C7
Monthly Athmospheric CO₂, Mauna Loa Obs. 2017-01: 406.13, 2016-01: 402.52
Andrew Schulman andrex@utexas.edu [unison-users]
2017-03-07 14:54:54 UTC
Permalink
Post by Alan Schmitt ***@polytechnique.org [unison-users]
Post by Jason Crawford ***@trewt.us [unison-users]
I'm consistently facing a problem where after I run Quickbooks on my
Windows 7 machine, when the changes eventually are synced to my
Windows 10 machine (via the central CentOS machine), unison complains
that the bmfd.qbw.ND file at the destination (Window10) machine is
[update] checkNoUpdates /cygdrive/c/firehouse engine/quickbooks/bmfd.qbw.ND
[update] buildUpdate: /cygdrive/c/firehouse/engine/quickbooks/bmfd.qbw.ND
[update] buildUpdate -> Deleted
Failed: Destination updated during synchronization
The file engine/quickbooks/bmfd.qbw.ND has been deleted
The reason synchronization fails is because, as you correctly noted, the
file is updated/deleted on the Windows 10 machine. I searched for what
kind of file this is, and it seems to be something internal to
https://community.intuit.com/articles/1020931-what-is-an-nd-file
https://www.experts-exchange.com/questions/26206047/QBW-ND-QBW-TLG-files.html
So I guess what is happening is that there is a helper process on the
windows machine that is watching files for Quickbooks, and when there
are updates to the data file, it recreates this ND file, hence
preventing its successful synchronization.
I would thus suggest that you ignore this file in your unison profile.
Exactly right. Quickbooks leaves processes running that manipulate that
file, even after you exit the main application. And no, you don't need to
synchronize it. I have these rules in my profiles:

ignore = Name *.qbw.dsn
ignore = Name *.qbw.nd
ignore = Name *.qbw.tlg
ignore = Name *.qbw.SearchIndex
ignore = Name QuickBooksAutoDataRecovery

With these I sync just the .qbw file, and it works fine.

Good luck,
Andrew

Loading...