Treating Synthetic Time with Respect
Novell Cool Solutions: Tip
By Peter Kuo
Digg This -
Posted: 10 Mar 2005
Many of us have encountered the infamous "Synthetic time is being issues on partition XYZ". Synthetic time occurs when the modification timestamp (MTS) on at least one object in the partition is set to a time that is in the future. We know the general fix is to declare a new time epoch -- even DSRepair tells you that in its log file when it detects objects with future MTSs. However, what is less commonly known is the side-effect of such an action.
There are two ways in which you can address the synthetic time problem, depending on how far ahead the MTS is. If you run an unattended full repair or a local database repair using DSRepair, it will report objects with future MTSs as shown here:
ERROR: Illegal timestamps were found in this replica. You may need to run the advanced option: 'Repair timestamps and declare new epoch' Value: 4054e3cb, ID: 00008059, DN: T=OES-BETA-TREE2 03/01/2010 05:59:23 PM; rep # = 0001; event = 0001
The last line here shows the MTS to be many years in the future.
If the future MTS is measurable in hours or days, you should strongly consider simply waiting for the time to catch up. The convergency typically takes half the time of the difference between the future MTS and the current time. So, if the MTS is reported to be an hour into the future, it should take about 30 minutes for the problem to resolve itself.
If, however, the time differential is large (as in the example above), then you need to repair the timestamp and declare a time epoch. Before you perform this procedure, keep the following in mind:
- Repairing timestamps is a very DS traffic-intensive operation because all non-Master replicas of the partition are essentially destroyed and re-created. This can cause loss of services that requires bindery contexts for the duration of the repair.
- Depending on the number of replicas and their sizes, this operation can take hours to complete. You should schedule this for off-hours if necessary.
- If multiple partitions needs to be repaired (as is generally the case if the server holds more than one partition and the time-jump will likely affect all the partitions), you should repair one partition at a time. Use DSRepair or NDS iMonitor to verify that all replicas of the partition is On before initiating repair on another partition.
Novell Cool Solutions (corporate web communities) are produced by WebWise Solutions. www.webwiseone.com