From 1148a2b6899a163154a5326184c1e3a64089569b Mon Sep 17 00:00:00 2001 From: Jackz Date: Thu, 20 Jul 2023 12:23:33 -0500 Subject: [PATCH] Only create transaction when we use it --- scripting/activitymonitor.sp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/scripting/activitymonitor.sp b/scripting/activitymonitor.sp index f44f618..01a9771 100644 --- a/scripting/activitymonitor.sp +++ b/scripting/activitymonitor.sp @@ -158,8 +158,9 @@ public Action Timer_PushLogs(Handle h) { static char query[1024]; static Log log; int length = logs.Length; - Transaction transaction = new Transaction(); + if(length > 0) { + Transaction transaction = new Transaction(); for(int i = 0; i < length; i++) { logs.GetArray(i, log, sizeof(log)); g_db.Format(query, sizeof(query), "INSERT INTO `activity_log` (`timestamp`, `server`, `type`, `client`, `target`, `message`) VALUES (%d, NULLIF('%s', ''), '%s', NULLIF('%s', ''), NULLIF('%s', ''), NULLIF('%s', ''))", @@ -173,11 +174,11 @@ public Action Timer_PushLogs(Handle h) { transaction.AddQuery(query); } logs.Resize(logs.Length - length); + g_db.Execute(transaction, _, SQL_TransactionFailed, length, DBPrio_Low); } - g_db.Execute(transaction, _, SQL_TransactionFailed, length, DBPrio_Low); return Plugin_Continue; } -public void SQL_TransactionFailed(Database db, any data, int numQueries, const char[] error, int failIndex, any[] queryData) { +void SQL_TransactionFailed(Database db, any data, int numQueries, const char[] error, int failIndex, any[] queryData) { LogError("Push transaction failed: %s at query %d/%d", error, failIndex, numQueries); } @@ -301,4 +302,4 @@ public any Native_AddLog(Handle plugin, int numParams) { if(GetNativeString(4, message, sizeof(message)) != SP_ERROR_NONE) return false; AddLog(type, clientName, targetName, message); return true; -} \ No newline at end of file +}