exchange

Base system with REST service to issue digital coins, run by the payment service provider
Log | Files | Refs | Submodules | README | LICENSE

commit 4db45061ea4cb227adcb96a193ffef3a3011f949
parent cdd6dacd6d1efb6cd6ceb0d51fbca0969ddd68ca
Author: Christian Grothoff <christian@grothoff.org>
Date:   Thu, 13 Aug 2026 21:36:06 +0200

allow for idempotency

Diffstat:
Msrc/auditordb/insert_deposit_confirmation.c | 5++++-
Msrc/auditordb/insert_exchange_signkey.c | 3++-
2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/auditordb/insert_deposit_confirmation.c b/src/auditordb/insert_deposit_confirmation.c @@ -70,7 +70,10 @@ TALER_AUDITORDB_insert_deposit_confirmation (struct ",exchange_sig" ",exchange_pub" ",master_sig" /* master_sig could be normalized... */ - ") VALUES ($1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13);"); + ") VALUES ($1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13)" + " ON CONFLICT (h_contract_terms,h_wire,merchant_pub" + " ,exchange_sig,exchange_pub,master_sig)" + " DO NOTHING;"); qs = GNUNET_PQ_eval_prepared_non_select (pg->conn, "insert_deposit_confirmation", params); diff --git a/src/auditordb/insert_exchange_signkey.c b/src/auditordb/insert_exchange_signkey.c @@ -46,7 +46,8 @@ TALER_AUDITORDB_insert_exchange_signkey (struct ",ep_expire_legal" ",exchange_pub" ",master_sig" - ") VALUES ($1,$2,$3,$4,$5);" + ") VALUES ($1,$2,$3,$4,$5)" + " ON CONFLICT (exchange_pub) DO NOTHING;" ); return GNUNET_PQ_eval_prepared_non_select (pg->conn, "insert_exchange_signkey",