aboutsummaryrefslogtreecommitdiff
path: root/src/exchangedb/plugin_exchangedb_postgres.c
diff options
context:
space:
mode:
authorFlorian Dold <florian.dold@gmail.com>2018-02-05 21:49:35 +0100
committerFlorian Dold <florian.dold@gmail.com>2018-02-05 21:49:35 +0100
commit48fd50f922a7385dfd46c81dc6ecef65ef94812b (patch)
treec2b76fc983800c00ba8ae5dc3a23ac8bdb50e1f9 /src/exchangedb/plugin_exchangedb_postgres.c
parentf8d7c1ef39df615c56417c3a98303cc46e7fd919 (diff)
exchangedb/postgres: handle duplicate wire transfers correctly
Diffstat (limited to 'src/exchangedb/plugin_exchangedb_postgres.c')
-rw-r--r--src/exchangedb/plugin_exchangedb_postgres.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/exchangedb/plugin_exchangedb_postgres.c b/src/exchangedb/plugin_exchangedb_postgres.c
index a9d5db767..a4f32cdc4 100644
--- a/src/exchangedb/plugin_exchangedb_postgres.c
+++ b/src/exchangedb/plugin_exchangedb_postgres.c
@@ -583,7 +583,8 @@ postgres_prepare (PGconn *db_conn)
",sender_account_details"
",execution_date"
") VALUES "
- "($1, $2, $3, $4, $5, $6, $7);",
+ "($1, $2, $3, $4, $5, $6, $7) "
+ "ON CONFLICT DO NOTHING;",
7),
/* Used in postgres_select_reserves_in_above_serial_id() to obtain inbound
transactions for reserves with serial id '\geq' the given parameter */
@@ -1870,9 +1871,8 @@ postgres_reserves_in_insert (void *cls,
return GNUNET_DB_STATUS_SOFT_ERROR;
}
}
- /* Create new incoming transaction, SQL "primary key" logic
- is used to guard against duplicates. If a duplicate is
- detected, we just "succeed" with no changes. */
+ /* Create new incoming transaction, "ON CONFLICT DO NOTHING"
+ is used to guard against duplicates. */
{
struct GNUNET_PQ_QueryParam params[] = {
GNUNET_PQ_query_param_auto_from_type (&reserve.pub),