AuthManager: added retry mechanism for delayed save.

This commit is contained in:
Shreyas Zare
2024-06-01 17:51:25 +05:30
parent 1522eabf9a
commit 4aaee382d8

View File

@@ -66,17 +66,20 @@ namespace DnsServerCore.Auth
{
lock (_saveLock)
{
try
if (_pendingSave)
{
SaveConfigFileInternal();
}
catch (Exception ex)
{
_log.Write(ex);
}
finally
{
_pendingSave = false;
try
{
SaveConfigFileInternal();
_pendingSave = false;
}
catch (Exception ex)
{
_log.Write(ex);
//set timer to retry again
_saveTimer.Change(SAVE_TIMER_INITIAL_INTERVAL, Timeout.Infinite);
}
}
}
});
@@ -93,10 +96,11 @@ namespace DnsServerCore.Auth
if (_disposed)
return;
_saveTimer?.Dispose();
lock (_saveLock)
{
_saveTimer?.Dispose();
//always save config here
try
{
SaveConfigFileInternal();