summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDan Goodliffe <dan@randomdan.homeip.net>2026-06-08 23:36:01 +0100
committerDan Goodliffe <dan@randomdan.homeip.net>2026-06-08 23:36:01 +0100
commit856527b65e3c4807cf2bfb9d0e495d9712d56a90 (patch)
treeaa8c5ab8e73a438976534a0f41d2b7d401a703d6 /src
parentee9517e452376bc4963aa3a43ca90ebb9d710b85 (diff)
downloadwebstat-856527b65e3c4807cf2bfb9d0e495d9712d56a90.tar.bz2
webstat-856527b65e3c4807cf2bfb9d0e495d9712d56a90.tar.xz
webstat-856527b65e3c4807cf2bfb9d0e495d9712d56a90.zip
Select uninsertable is for updateHEADmain
This prevents other instances acting on the same rows in parallel, potentially duplicating the rows and effort.
Diffstat (limited to 'src')
-rw-r--r--src/sql.cpp2
-rw-r--r--src/sql/selectUninsertableLines.sql1
2 files changed, 2 insertions, 1 deletions
diff --git a/src/sql.cpp b/src/sql.cpp
index a2dac02..63e946c 100644
--- a/src/sql.cpp
+++ b/src/sql.cpp
@@ -43,7 +43,7 @@ namespace WebStat::SQL {
HASH_OPTS(ENTITY_UPDATE_DETAIL);
HASH_OPTS(HOST_UPSERT);
const DB::CommandOptionsPtr SELECT_UNINSERTABLE_OPTS
- = std::make_shared<PQ::CommandOptions>(std::hash<std::string> {}(SELECT_UNINSERTABLE), 35, true);
+ = std::make_shared<PQ::CommandOptions>(std::hash<std::string> {}(SELECT_UNINSERTABLE), 35, false);
HASH_OPTS(DELETE_ENTITY);
HASH_OPTS(MARK_ENTITY_RETRIED);
HASH_OPTS(SET_ENTITY_TYPE);
diff --git a/src/sql/selectUninsertableLines.sql b/src/sql/selectUninsertableLines.sql
index 5c07791..894ab67 100644
--- a/src/sql/selectUninsertableLines.sql
+++ b/src/sql/selectUninsertableLines.sql
@@ -9,3 +9,4 @@ WHERE
ORDER BY
id
LIMIT ?
+FOR UPDATE