Synchronization of Objects and Their Values Between Vaults

Note: This content is no longer updated. For the latest content, please go to the user guide for M-Files Online. For information on the supported product versions, refer to our lifecycle policy.

This section provides further information on synchronization of objects and their values. We recommend studying this section before defining any synchronization jobs. Synchronization is implemented via Content Replication and Archiving.

Synchronizing Objects

When the metadata structures of vaults have been defined according to your needs and the required metadata definitions can be associated with them, the actual synchronization of objects and values can be performed between vaults. Synchronization of data between vaults is performed with replication of content. For more information, refer to Content Replication and Archiving and Replication and Archiving User's Guide.

Note: Only the values for which there is a built-in object type are synchronized automatically. For other object types, either the alias or the combination of ID and name must match, so that objects of this object type are imported to the target vault during import. You should check that these definitions are in proper order. For more information, see Associating the Metadata Definitions.

Conflicts and their resolution

If users edit an object at the same time in multiple vaults, a conflict can occur during synchronization of data between vaults. For example, from source vault A to target vault B. When M-Files detects a conflict, it creates a conflict object.

Unresolved conflicts are shown in object relationships. In the listing area, expand an object with the arrow button. If the object has unresolved conflicts, they are shown under the Conflicts node.

To see all conflict objects of the vault, go to the Conflicts view. By default, the view is hidden. For information on unhiding views, see Using the Clean View, Hide View, and Unhide Views commands.

In manual conflict resolution, you decide which object version you want to keep. To resolve a conflict, you must have editing rights to the object and the conflict object in the same vault. Right-click the conflict object and click Resolve Conflict: Keep These Changes to replace the local changes with the contents of the conflict object or Resolve Conflict: Discard These Changes to keep the local version.

If two-way synchronization (replication of contents) is used, you must resolve the conflict in both vaults.

Publishing selected objects of one vault in another vault

If you want to publish only certain objects from a vault by using another vault, you can do this by using a search filter when defining the content export. You should also check that the object types of the published objects can be associated either automatically or based on aliases.

Synchronizing Metadata Values

Value list values

When the metadata structures of vaults have been defined according to your needs and the required metadata definitions can be associated, the actual synchronization of objects and their values can be performed between vaults. Data synchronization between different vaults is performed with replication of contents.

However, you should note that if the value does not exist in the target vault or you cannot create it as a normal value-list value during import (for example, in the case of built-in values, such as classes, workflows, and users), the value name is displayed in metadata in the form "Value name XYZ (deleted)". In other words, if the value does not exist in the metadata structure of the target vault after import, it is shown as a "Value name XYZ (deleted)" value.

Note: The default permissions for the imported values are the target vault's default permissions for new values set from value lists. This means that the name of the value may be shown regardless of its permissions in the source vault. For example, the name of the document creator is shown in the metadata of the published document via the "Created by: User XYZ (deleted)" value. If necessary, check the permissions and association of the metadata definitions if you do not want to display this information in the other vault.