English - United States  


Usenet Posting #30 - Trigeminal Software, Inc. (English)

Subject: INFO: Do you leave a tip when the service [pack] is lousy?
(Originally posted 01/26/02)

If you have used replication with Jet 3.5, you may have received the error "Synchronization between replica '<source replica>' and replica '<target replica>' failed. Two members of the replica set cannot be synchronized because there is no common point to start the synchronization" described in Q191916. This was one of the most infamous of the Y2K bugs since it was not just related to the year 2000; instead, it was related to any Jet 3.5 replica set that had maintenance done on it after the year 2000. Luckily, it was fixed in Jet 3.5 Service Pack 3 but there always seems to be a catch, doesn't there?

In order to understand the problem, you have to understand what this service pack does: it installs all of the bug fixes and changes to Jet 3.5 since it was originally shipped with Access 97. The files all come from the Jet team, whose test team apparently runs the Jet Synchronizer from the ($WinSys) directory (where the rest of Jet 3.5 is placed). The ODE and runtime setups places certain key replication files in a slightly different location:

$(ProgramFilesDir)\$(CommonFilesDir)\Microsoft Shared\Replication Manager 3.5

Now, since the service pack was created by the Jet folks, the file is put in the ($WinSys) directory, and this causes problems since the Jet Indirect (file system) Synchronization file (msrpfs35.dll) is now on the machine twice: an older version in your Replication Manager directory, and a newer one in the system directory. Due to the way that DLLs are loaded under Win32 (first the EXE dir, then the path), you will see a situation where ReplMan and the Jet Synchronizer can be using a different version than Jet might be later! This leads to many potential problems:

  • Event ID 2009 errors in the Event Log on workstations (this error, described in Q165815, is reported more often on Server than Workstation/Professional but can happen on either)
  • After one or a few successful indirect syncs, future indirect synchronizations will appear to hang with an "In Progress" status, which does not resolve itself until the Synchronizer is stopped and restarted.

These two problems only hurt people who are using the Jet Synchronizer to do indirect synchronization, who are coincidentally the only people who have a Replication Manager directory, anyway!

But you MUST install the service pack! So what do you to fix one bug without having the others?

Well, the workaround is quite easy: the msrpfs35.dll file that is installed to the ($WinSys) directory needs to be moved to the Repliction Manager directory, above -- and deleted from the ($WinSys) directory. You do have to shut down the Jet Synchronizer so the file will not be in use, but you can restart it right after copying the file (no reboot is necessary).

Which brings us back to the title of this article -- if I go to a restaurant and get lousy service, I do not leave as good of a tip; does this mean we should stiff them on the tip if we get a lousy service pack? ;-)


Problems with this site? Please contact the webmaster@trigeminal.com
with your comments, questions, or suggestions.