// Token: 0x06001D5E RID: 7518 RVA: 0x00084B14 File Offset: 0x00082D14 public static bool ExitLogRepair(Guid dbGuid) { LogRepair.Tracer.TraceDebug <Guid>(0L, "ExitLogRepair({0})", dbGuid); bool result; lock (LogRepair.s_globalLock) { RegistryStateIO registryStateIO = new RegistryStateIO(null, dbGuid.ToString(), false); LogRepairMode logRepairMode; registryStateIO.TryReadEnum <LogRepairMode>("LogRepairMode", LogRepairMode.Off, out logRepairMode); if (logRepairMode == LogRepairMode.ReplayPending) { registryStateIO.WriteEnum <LogRepairMode>("LogRepairMode", LogRepairMode.Off, true); registryStateIO.WriteLong("LogRepairRetryCount", 0L, true); result = true; } else if (logRepairMode == LogRepairMode.Enabled) { LogRepair.Tracer.TraceDebug <Guid>(0L, "ExitLogRepair({0}) skipped because another corruption was reported", dbGuid); result = false; } else { result = true; } } return(result); }
// Token: 0x06001D5D RID: 7517 RVA: 0x00084A68 File Offset: 0x00082C68 public static void EnableLogRepair(Guid dbGuid) { LogRepair.Tracer.TraceDebug <Guid>(0L, "EnableLogRepair({0})", dbGuid); lock (LogRepair.s_globalLock) { RegistryStateIO registryStateIO = new RegistryStateIO(null, dbGuid.ToString(), false); LogRepairMode logRepairMode; registryStateIO.TryReadEnum <LogRepairMode>("LogRepairMode", LogRepairMode.Off, out logRepairMode); if (logRepairMode != LogRepairMode.Enabled) { registryStateIO.WriteEnum <LogRepairMode>("LogRepairMode", LogRepairMode.Enabled, true); if (logRepairMode == LogRepairMode.Off) { registryStateIO.WriteLong("LogRepairRetryCount", 0L, true); } } else { LogRepair.Tracer.TraceDebug <Guid>(0L, "EnableLogRepair({0}) skipped because already enabled", dbGuid); } } }