Fixed unnecessary database transactions when consumer is empty (fixes #511)

This commit is contained in:
Intelli 2024-05-11 13:06:29 -06:00
parent 2e2e5a9857
commit 667061a9fe
1 changed files with 9 additions and 0 deletions

View File

@ -83,6 +83,14 @@ public class Process {
int consumerDataSize = consumerData.size();
currentConsumerSize = consumerDataSize;
if (currentConsumerSize == 0) { // No data, skip processing
updateLockTable(statement, (lastRun ? 0 : 1));
statement.close();
Consumer.consumer_id.put(processId, new Integer[] { 0, 0 });
Consumer.isPaused = false;
return;
}
Database.beginTransaction(statement);
// Scan through usernames, ensure everything is loaded in memory.
for (Entry<Integer, String[]> entry : users.entrySet()) {
@ -225,6 +233,7 @@ public class Process {
consumerData.remove(index);
}
currentConsumerSize = 0;
Consumer.consumer_id.put(processId, new Integer[] { 0, 0 });
Consumer.isPaused = false;
return;
}