Beispiel #1
0
 // Token: 0x06001D3E RID: 7486 RVA: 0x00083E24 File Offset: 0x00082024
 public LogInspector(IPerfmonCounters perfmonCounters, IReplayConfiguration replayConfig, string logfileBaseName, string logfileSuffix, string replayDir, FileState fileState, ILogTruncater logTruncater, ISetBroken setBroken, ISetGeneration setGeneration, IReplicaProgress replicaProgress, NetworkPath netPath, bool runningAcll) : base(replayConfig.LogInspectorPath, logfileBaseName, 0L, logfileSuffix, setBroken, replicaProgress)
 {
     this.Config          = replayConfig;
     this.m_logTruncater  = logTruncater;
     this.m_replayDir     = replayDir;
     this.m_fileState     = fileState;
     this.m_setGeneration = setGeneration;
     this.m_logVerifier   = new LogVerifier(logfileBaseName);
     ExTraceGlobals.LogInspectorTracer.TraceDebug((long)this.GetHashCode(), "LogInspector initialized - inspectDir = {0}, logfileBaseName = {1}, replayDir = {2}, fileState = {3}", new object[]
     {
         replayConfig.LogInspectorPath,
         logfileBaseName,
         replayDir,
         fileState
     });
     ExTraceGlobals.PFDTracer.TracePfd((long)this.GetHashCode(), "LogInspector initialized - inspectDir = {0}, logfileBaseName = {1}, replayDir = {2}, fileState = {3}", new object[]
     {
         replayConfig.LogInspectorPath,
         logfileBaseName,
         replayDir,
         fileState
     });
     this.Config.ReplayState.InspectorGenerationNumber = this.m_fileState.HighestGenerationPresent;
     this.m_logSource = LogSource.Construct(replayConfig, perfmonCounters, netPath, LogSource.GetLogShipTimeoutInMsec(runningAcll));
     if (0L != this.m_fileState.HighestGenerationPresent)
     {
         this.m_logContinuityChecker.Initialize(this.m_fileState.HighestGenerationPresent, this.Config.DestinationLogPath, this.Config.LogFilePrefix, logfileSuffix);
     }
 }
        // Token: 0x06001BA1 RID: 7073 RVA: 0x00075F7C File Offset: 0x0007417C
        public AttemptCopyLastLogs(IPerfmonCounters perfmonCounters, ReplayConfiguration configuration, FileChecker fileChecker, bool performDivergenceCheck, ISetGeneration setGeneration, ISetViable setViable, bool fSkipHealthChecks, DatabaseMountDialOverride mountDialOverride, AcllPerformanceTracker acllPerf, string uniqueOperationId, int subactionAttemptNumber)
        {
            this.m_uniqueOperationId      = uniqueOperationId;
            this.m_subactionAttemptNumber = subactionAttemptNumber;
            this.m_acllPerf = acllPerf;
            this.m_fPerformDivergenceCheck = performDivergenceCheck;
            this.m_fSkipHealthChecks       = fSkipHealthChecks;
            this.m_mountDialOverride       = mountDialOverride;
            this.m_perfmonCounters         = perfmonCounters;
            this.m_configuration           = configuration;
            string displayName = this.m_configuration.DisplayName;

            this.m_setBrokenForCopier    = new SimpleSetBroken(displayName);
            this.m_setBrokenForInspector = new SimpleSetBroken(displayName);
            this.m_setBrokenForReplayer  = new SimpleSetBroken(displayName);
            this.m_setBrokenForOther     = new SimpleSetBroken(displayName);
            this.m_setGeneration         = setGeneration;
            this.m_setViable             = setViable;
            this.m_state          = this.m_configuration.ReplayState;
            this.m_fileChecker    = fileChecker;
            this.m_fileState      = fileChecker.FileState;
            this.m_logCopier      = null;
            this.m_logInspector   = null;
            this.m_remoteConfig   = (this.m_configuration as RemoteReplayConfiguration);
            this.NumberOfLogsLost = -1L;
            DiagCore.RetailAssert(this.m_remoteConfig != null, "ACLL is only supported for HA replicated databases", new object[0]);
        }
        // Token: 0x06001BB1 RID: 7089 RVA: 0x00076118 File Offset: 0x00074318
        public static AmAcllReturnStatus AttemptCopyLastLogsOnceRcr(IPerfmonCounters perfmonCounters, ReplayConfiguration configuration, FileChecker fileChecker, ISetGeneration setGeneration, ISetViable setViable, LogCopier logCopier, LogInspector logInspector, LogReplayer logReplayer, bool performDivergenceCheck, bool fSkipHealthChecks, DatabaseMountDialOverride mountDialOverride, AcllPerformanceTracker acllPerf, string uniqueOperationId, int subactionAttemptNumber, bool mountPending)
        {
            AttemptCopyLastLogs attemptCopyLastLogs = new AttemptCopyLastLogs(perfmonCounters, configuration, fileChecker, performDivergenceCheck, setGeneration, setViable, fSkipHealthChecks, mountDialOverride, acllPerf, uniqueOperationId, subactionAttemptNumber);

            attemptCopyLastLogs.MakeAttempt(logCopier, logInspector, logReplayer);
            return(attemptCopyLastLogs.GetReturnStatus());
        }
 // Token: 0x0600223A RID: 8762 RVA: 0x0009F97A File Offset: 0x0009DB7A
 public LogCopyClient(IReplayConfiguration config, IPerfmonCounters perfmonCounters, NetworkPath initialNetworkPath, int timeoutMs)
 {
     this.m_config             = config;
     this.m_perfmonCounters    = perfmonCounters;
     this.m_defaultTimeoutInMs = timeoutMs;
     this.m_sourceAddr         = config.SourceMachine;
     this.m_initialNetworkPath = initialNetworkPath;
 }
Beispiel #5
0
 public GranularWriter(LogCopier logCopier, IPerfmonCounters perfmonCounters, IReplayConfiguration replayConfiguration, ISetBroken setBroken)
 {
     this.m_logCopier       = logCopier;
     this.m_setBroken       = setBroken;
     this.m_perfmonCounters = perfmonCounters;
     this.m_config          = replayConfiguration;
     this.m_perfmonCounters.GranularReplication = 0L;
 }
Beispiel #6
0
 public LogTruncater(IPerfmonCounters perfmonCounters, IFileChecker fileChecker, ISetBroken setBroken, IReplayConfiguration configuration, ITruncationConfiguration truncationConfig, IReplicaInstanceContext replicaInstanceContext, ManualOneShotEvent shuttingDownEvent) : base(TimeSpan.Zero, TimeSpan.FromMilliseconds((double)RegistryParameters.LogTruncationTimerDuration), "LogTruncater")
 {
     this.m_perfmonCounters        = perfmonCounters;
     this.m_fileChecker            = fileChecker;
     this.m_configuration          = configuration;
     this.m_truncationConfig       = truncationConfig;
     this.m_replicaInstanceContext = replicaInstanceContext;
     this.m_shuttingDownEvent      = shuttingDownEvent;
     this.m_localInspectorGen      = this.m_configuration.ReplayState.InspectorGenerationNumber;
     this.m_localReplayerGen       = this.m_configuration.ReplayState.ReplayGenerationNumber;
     this.m_perfmonCounters.TruncatedGenerationNumber = this.m_genTruncatedLocally;
     LogTruncater.Tracer.TraceDebug <IReplayConfiguration>((long)this.GetHashCode(), "LogTruncater initialized - configuration = {0}", configuration);
 }
 public ReplicaInstanceContainer(ReplicaInstance instance, ReplicaInstanceActionQueue queue, IPerfmonCounters perfCounters)
 {
     this.ReplicaInstance     = instance;
     this.Queue               = queue;
     this.PerformanceCounters = perfCounters;
 }
Beispiel #8
0
 // Token: 0x060020B5 RID: 8373 RVA: 0x00096F94 File Offset: 0x00095194
 public SourceReplicaInstance(ReplayConfiguration replayConfiguration, ReplicaInstance previousReplicaInstance, IPerfmonCounters perfCounters) : base(replayConfiguration, false, previousReplicaInstance, perfCounters)
 {
     ReplicaInstance.DisposeIfActionUnsuccessful(delegate
     {
         this.TraceDebug("object created");
         ExTraceGlobals.PFDTracer.TracePfd <int>((long)this.GetHashCode(), "PFD CRS {0} SourceReplicaInstance is created", 32029);
         base.InitializeSuspendState();
         base.CurrentContext.InitializeForSource();
     }, this);
 }
 public TargetReplicaInstance(ReplayConfiguration replayConfiguration, ReplicaInstance previousReplicaInstance, IPerfmonCounters perfCounters) : base(replayConfiguration, true, previousReplicaInstance, perfCounters)
 {
     TargetReplicaInstance < > 4__this = this;
     ReplicaInstance.DisposeIfActionUnsuccessful(delegate
     {
Beispiel #10
0
 // Token: 0x06002225 RID: 8741 RVA: 0x0009F85E File Offset: 0x0009DA5E
 internal static LogSource Construct(IReplayConfiguration config, IPerfmonCounters perfmonCounters, NetworkPath initialNetworkPath, int timeoutMs)
 {
     return(new LogCopyClient(config, perfmonCounters, initialNetworkPath, timeoutMs));
 }
Beispiel #11
0
 // Token: 0x060020AA RID: 8362 RVA: 0x00096E7E File Offset: 0x0009507E
 public SingleCopyReplicaInstance(ReplayConfiguration replayConfiguration, IPerfmonCounters perfCounters) : base(replayConfiguration, false, null, perfCounters)
 {
     ReplicaInstance.DisposeIfActionUnsuccessful(delegate
     {
     }, this);
 }
Beispiel #12
0
 public LogReplayScanControl(IADDatabase database, bool isLagCopy, IMonitoringADConfigProvider adConfigProvider, ICopyStatusClientLookup statusLookup, IPerfmonCounters keepingUpReader, LogReplayScanControl.ControlParameters parameters)
 {
     this.sensor     = new AvailabilitySensor(database, adConfigProvider, statusLookup, parameters.MinAvailablePassiveCopies + 1, parameters.MaxProbeFreq);
     this.isLagCopy  = isLagCopy;
     this.Database   = database;
     this.Parameters = parameters;
     this.keepingUp  = keepingUpReader;
 }
 public PerfCounterUpdater(IPerfmonCounters counters, ReplayConfiguration config) : base(TimeSpan.FromMilliseconds((double)RegistryParameters.PerfCounterUpdateIntervalInMSec), TimeSpan.FromMilliseconds((double)RegistryParameters.PerfCounterUpdateIntervalInMSec), "PerfCounterUpdater")
 {
     this.m_counters   = counters;
     this.m_config     = config;
     this.m_amCounters = ActiveManagerPerfmon.GetInstance(config.Name);
 }
Beispiel #14
0
 // Token: 0x06001D3D RID: 7485 RVA: 0x00083DFC File Offset: 0x00081FFC
 public LogInspector(IPerfmonCounters perfmonCounters, IReplayConfiguration replayConfig, string logfileBaseName, string logfileSuffix, string replayDir, FileState fileState, ILogTruncater logTruncater, ISetBroken setBroken, ISetGeneration setGeneration, IReplicaProgress replicaProgress, NetworkPath netPath) : this(perfmonCounters, replayConfig, logfileBaseName, logfileSuffix, replayDir, fileState, logTruncater, setBroken, setGeneration, replicaProgress, netPath, false)
 {
 }
Beispiel #15
0
 // Token: 0x06000C85 RID: 3205 RVA: 0x00037214 File Offset: 0x00035414
 public ExternalReplicaInstanceStatus(ReplicaInstanceContext currentContext, ReplicaInstanceContextMinimal previousContext, ReplayConfigType configurationType, IPerfmonCounters perfmonCounters, ReplayState replayState)
 {
     this.CurrentContext  = currentContext;
     this.PreviousContext = previousContext;
     this.ConfigType      = configurationType;
     this.PerfmonCounters = perfmonCounters;
     this.ReplayState     = replayState;
     if (ThirdPartyManager.IsThirdPartyReplicationEnabled && this.ConfigType == ReplayConfigType.RemoteCopyTarget)
     {
         this.LastCopyStatus = CopyStatusEnum.NonExchangeReplication;
     }
     else
     {
         this.LastCopyStatus = CopyStatusEnum.Unknown;
     }
     this.m_displayName = currentContext.DisplayName;
     this.m_identity    = currentContext.Identity;
     this.DatabaseName  = currentContext.DatabaseName;
 }
Beispiel #16
0
 // Token: 0x060017B2 RID: 6066 RVA: 0x00061F03 File Offset: 0x00060103
 internal void ReceiveFile(string fullDestinationFileName, IReplicaSeederCallback callback, IPerfmonCounters copyPerfCtrs, CheckSummer summer)
 {
     this.DestinationFileName = fullDestinationFileName;
     this.m_channel.ReceiveFile(this, callback, copyPerfCtrs, summer);
 }
Beispiel #17
0
 // Token: 0x060017B3 RID: 6067 RVA: 0x00061F1C File Offset: 0x0006011C
 internal void ReceiveFile(string fullDestinationFileName, IPerfmonCounters copyPerfCtrs, CheckSummer summer)
 {
     this.ReceiveFile(fullDestinationFileName, null, copyPerfCtrs, summer);
 }
Beispiel #18
0
 public LogReplayScanControl(IADDatabase database, bool isLagCopy, IMonitoringADConfigProvider adConfigProvider, ICopyStatusClientLookup statusLookup, IPerfmonCounters keepingUpReader) : this(database, isLagCopy, adConfigProvider, statusLookup, keepingUpReader, new LogReplayScanControl.ControlParameters())
 {
 }