Ssh – How to fix unison failing with “Fatal error: Internal error: New archives are not identical” for identical paths

sshunison

When trying to sync two paths (one of which is remote) via ssh, unison fails with

Fatal error: Internal error: New archives are not identical.

while syncing via a network mount works just fine.

While unison -debug all yields no indication on the possible error, having it use ssh -v causes a lot of

channel 0: bad ext data

errors. However, both machines run the same version of unison (2.40.63).

Best Answer

As hinted at by this macports.org ticket, the problem lies in having used two different major versions of OCaml (3.12 vs 4.0) in compilation on the two machines. Either use the same binary on both machines or (as was the case for me due to different architectures) recompile unison with identical OCaml versions.

(Side note: The Windows version compiled by Karl M requires OCaml 3.12)

Related Question