Starting with 12.0.1, the 32-bit MobiLink server is no longer supported on 64-bit operating systems.
This means that if you accidentally CONTINUE to use the 32-bit MobiLink server and client on the same machine after upgrading to 12.0.1, you will suddenly get a "Protocol version mismatch" as shown below.
That's because the old version 12.0.0 32-bit version of mlsrv12.exe is not removed by the 12.0.1 installation even though a 12.0.1 copy is not installed. However, the 32-bit version of dbmlsync.exe is installed. That means when you run the same sync setup that worked before, it starts failing with the oh-so-meaningful "Protocol version mismatch".
As Volker pointed out in a comment, this is not a bug... but it sure as heck is confusing :)
I. 2011-03-07 09:24:00. SQL Anywhere MobiLink Server Version 18.104.22.16801 ... I. 2011-03-07 09:30:07. System event on shared administrative connection: SELECT property_set_name, property_name, property_value FROM ml_property WHERE component_name = ? ORDER BY property_set_name I. 2011-03-07 09:30:07. Translated SQL: SELECT property_set_name, property_name, property_value FROM ml_property WHERE component_name = ? ORDER BY property_set_name E. 2011-03-07 09:30:31. (,) [-10004] Protocol version mismatch -- expecting 49 but received 65 I. 2011-03-07 09:30:31. (,) failed reading command with id:1 and handle:1 I. 2011-03-07 09:30:31. (,) Synchronization failed
I. 2011-03-07 09:29:40. SQL Anywhere MobiLink Client Version 22.214.171.12452 ... I. 2011-03-07 09:30:31. Waiting for MobiLink to apply upload E. 2011-03-07 09:30:31. Error code from MobiLink server: -10244 E. 2011-03-07 09:30:31. Server error: The MobiLink server has encountered an error and the synchronization has been aborted E. 2011-03-07 09:30:31. Data read failed. Requested 2 bytes but got 0 bytes. E. 2011-03-07 09:30:31. Unable to read 0 bytes. I. 2011-03-07 09:30:31. End synchronizing subscription(s) 'clifit' I. 2011-03-07 09:30:31. Disconnecting from MobiLink server
FWIW, the Linux installer does upgrade any existing mlsrv12 binaries to ones that won't run (i.e. they spit out an error message). I cannot speak for the Windows installer, though.
answered 11 Mar '11, 11:49