Merge branch 'develop'

* develop:
  Fixed an error which caused null pointer exceptions in discord framework and interrupted the scanning queue permanently Changed message count to acutally count scanned messages even if they already have scanned before
  Contine on exception during scanning
This commit is contained in:
Serraniel 2018-01-22 20:14:48 +01:00
commit bea7715599
2 changed files with 60 additions and 51 deletions

View file

@ -74,7 +74,8 @@ namespace DML.AppCore.Classes
var channel = FindChannelById(guild, ChannelId); var channel = FindChannelById(guild, ChannelId);
Debug("Checking channel access"); Debug("Checking channel access");
if (!channel.Users.Contains(channel.Guild.CurrentUser)) //channel.GetUser(channel.Guild.CurrentUser.Id);
if (channel.GetUser(channel.Guild.CurrentUser.Id) == null)
{ {
Info("Skipping channel without access"); Info("Skipping channel without access");
return result; return result;
@ -126,6 +127,8 @@ namespace DML.AppCore.Classes
if (!IsValid) if (!IsValid)
return null; return null;
Core.Scheduler.MessagesScanned++;
Debug($"Processing message {m.Id}"); Debug($"Processing message {m.Id}");
if (m.Id < lastId) if (m.Id < lastId)
{ {
@ -148,8 +151,6 @@ namespace DML.AppCore.Classes
Trace($"Added message {m.Id}"); Trace($"Added message {m.Id}");
} }
Debug($"Finished message {m.Id}"); Debug($"Finished message {m.Id}");
Core.Scheduler.MessagesScanned++;
} }
finished = finished || messages.Count < limit; finished = finished || messages.Count < limit;

View file

@ -90,6 +90,8 @@ namespace DML.AppCore.Classes
{ {
Logger.Info("Started JobScheduler..."); Logger.Info("Started JobScheduler...");
while (Run) while (Run)
{
try
{ {
Logger.Debug("Entering job list handler loop..."); Logger.Debug("Entering job list handler loop...");
//foreach (var job in JobList) //foreach (var job in JobList)
@ -144,7 +146,8 @@ namespace DML.AppCore.Classes
Logger.Trace("Locking scheduler..."); Logger.Trace("Locking scheduler...");
lock (this) lock (this)
{ {
Logger.Trace($"Checking thread limit. Running: {RunningThreads}, Max: {Core.Settings.ThreadLimit}"); Logger.Trace(
$"Checking thread limit. Running: {RunningThreads}, Max: {Core.Settings.ThreadLimit}");
if (RunningThreads >= Core.Settings.ThreadLimit) if (RunningThreads >= Core.Settings.ThreadLimit)
continue; continue;
@ -159,6 +162,11 @@ namespace DML.AppCore.Classes
} }
} }
} }
catch (Exception ex)
{
Logger.Error(ex.Message);
}
}
}); });
} }