Skip to main content

Overview

The « DDA replication » module provides a simple interface to create and run replication tasks.

Replication tasks allow the distribution of DDA contents from one to multiple other cells. This is useful in numerous scenarios, such as :

-          Synch up data across multiple cells that require the same DDA contents

-          Synch between test/acceptance/production environments.

 

How it works

Replication tasks are defined in DDA table (ReplicationTasks) in a given cell.

When a replication task is run, a perl script is executed to perform the actual DDA replication, using a combination of mquery and mposter commands.

The script can also be run directly from the command line.

At the end of the replication, a row can optionally be added to a second table DDAReplicationLog for logging purposes.

The following fields are found in the “ReplicationTasks” table:

 

Field Name

Type

Description

TaskName

String

The unique name of the replication task.

SourceCell

String

The name of the source cell, that contains the DDA to be replicated.

SourceDDAs

List of String

The DDAs that must be replicated from SourceCell

TargetCells

List of String

The name of the target cell(s)

TargetDDAs

Calendar name

The name of the DDAs on the target cell(s). If the list is empty, the assumption is that the DDA names are identical across source and destination cells

ReplicationType

Enumeration

Determines the detailed behavior of the replication.

Merge – Source Priority : The contents of the source DDA is merged into the target DDA. Additional source DDA entries will be added. If the entry exists in the target DDA, its content will be replaced by the contents of the source DDA entry.

Merge – Target Priority : The contents of the source DDA is merged into the target DDA. Additional source DDA entries will be added. If the entry exists in the target DDA, its content will NOT be replaced by the contents of the source DDA entry.

Cleanup before import : The contents of the target DDA is entirely deleted before the contents of the source DDA is imported.

Smart Cleanup – Source Priority : Same as “Merge – Source Priority”, but after import, entries in the target DDA that do not exist on the source are deleted.

Smart Cleanup – Target Priority : Same as “Merge – Source Priority”, but after import, entries in the target DDA that do not exist on the source are deleted.

i The “mc_udid” of the source data is preserved (by design) for “merge” and “cleanup” types, but NOT for “Smart Cleanup” types. If you need  to preserve the  mc_udid (e.g. in the context of service model replications), use a “merge” replication type.

BackupBeforeReplication

YES/NO

Indicates if a backup of the source and destination DDA is taken before replication.

FilterClause

MRL “where” clause

Can be used to specify only a subset of data to replicate. The filter clause must a valid MRL expression used after the mquery “-w” switch.

EG

$THIS.active == YES

$THIS.name has_prefix test

ExcludedSlots

Comma separated slot names to exclude from replication

Can be used to exclude some slots from the replication. Useful e.g. when replicating published CI. E.G.

ExcludeSlots=HomeCell