Share via


IForgottenKnowledge Interface

Represents knowledge that has been forgotten because of tombstone cleanup.

interface IForgottenKnowledge : ISyncKnowledge

Members

IForgottenKnowledge methods Description

IForgottenKnowledge::ForgetToVersion

Updates the forgotten knowledge to reflect that all versions that are less than or equal to the specified version might have been forgotten, and that corresponding tombstones might have been deleted.

Remarks

The forgotten knowledge tracks the maximum version of tombstones that have been cleaned up. When an item is deleted from the item store, the metadata for that item is kept, but the item is marked as deleted. Metadata for a deleted item is called a tombstone. Tombstones must be periodically cleaned up or they will eventually use too much space in the item store. When a tombstone is removed from the metadata, the forgotten knowledge must be updated to contain the version of the removed tombstone. Be aware that forgotten knowledge is an overestimation of which items have had their metadata removed. Therefore, the forgotten knowledge might also contain items that still have active entries in the metadata.

Sync Framework uses the forgotten knowledge to detect an out-of-date synchronization destination. For more information, see Managing Tombstones and Recovering an Out-of-Date Replica.

To obtain a new IForgottenKnowledge object, first create an IProviderSyncServices object by passing CLSID_SyncServices and IID_IProviderSyncServices to the CoCreateInstance function. Then, create the knowledge object by using IProviderSyncServices::CreateForgottenKnowledge.

Requirements

Header: Synchronization.h

See Also

Concepts

Sync Framework Core Components
Managing Tombstones
Recovering an Out-of-Date Replica