Ejemplo n.º 1
0
        private static IReadOnlyCollection <ICommand> CreateShadowReplicationCommands(TableName table, TimeSpan bulkCopyTimeout, DbManagementMode mode)
        {
            var createTableCopyCommand = new CreateTableCopyCommand(table);
            var commands = new List <ICommand>
            {
                createTableCopyCommand,
                new DisableIndexesCommand(createTableCopyCommand.TargetTable),
                new BulkInsertDataObjectsCommand(bulkCopyTimeout, CreateTableCopyCommand.Prefix),
                new EnableIndexesCommand(createTableCopyCommand.TargetTable)
            };

            if (mode.HasFlag(DbManagementMode.UpdateTableStatistics))
            {
                commands.Add(new UpdateTableStatisticsCommand(createTableCopyCommand.TargetTable));
            }

            return(commands);
        }
Ejemplo n.º 2
0
 private static IReadOnlyCollection <ICommand> CreateTablesReplacingCommands(IEnumerable <TableName> tableTypesDictionary)
 {
     return(tableTypesDictionary
            .Select(t => new ReplaceTableCommand(t, CreateTableCopyCommand.GetTableCopyName(t)))
            .ToList());
 }