exchange

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

commit 476ae5380823f287421885bac15871dc970d53e7
parent 80fc8231ade4e8581dc0447f31bd280bb9c41d3d
Author: Christian Grothoff <christian@grothoff.org>
Date:   Thu,  3 Mar 2022 17:48:00 +0100

simply defer all, only way to do well with partitions

Diffstat:
Msrc/exchangedb/plugin_exchangedb_postgres.c | 17+----------------
1 file changed, 1 insertion(+), 16 deletions(-)

diff --git a/src/exchangedb/plugin_exchangedb_postgres.c b/src/exchangedb/plugin_exchangedb_postgres.c @@ -8055,22 +8055,7 @@ postgres_start_deferred_wire_out (void *cls) struct PostgresClosure *pg = cls; struct GNUNET_PQ_ExecuteStatement es[] = { GNUNET_PQ_make_execute ("START TRANSACTION ISOLATION LEVEL READ COMMITTED"), - GNUNET_PQ_make_execute ("DO $$" - "BEGIN" - " IF EXISTS (" - " SELECT 1" - " FROM information_Schema.constraint_column_usage" - " WHERE table_name='wire_out'" - " AND constraint_name='wire_out_ref')" - " THEN " - " SET CONSTRAINTS wire_out_ref DEFERRED;" - " END IF;" - "END $$"), - // FIXME: above logic is better as it tests that the constraint - // is actually applicable; but maybe we want to drop the constraint - // entirely once do_gc() is fixed to do without it? - // GNUNET_PQ_make_execute ("CALL defer_wire_out()"), - // GNUNET_PQ_make_execute ("SET CONSTRAINTS wire_out_ref DEFERRED;"), + GNUNET_PQ_make_execute ("SET CONSTRAINTS ALL DEFERRED;"), GNUNET_PQ_EXECUTE_STATEMENT_END };