exchange

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

commit 2ea3ae1008020589b43a51663c45556a08547212
parent 04885a289a332800aad896d96692479a1fbdc470
Author: Florian Dold <florian@dold.me>
Date:   Fri,  2 Jun 2023 11:46:48 +0200

make CREATE TYPE usage idempotent

PostgresSQL doesn't have a CREATE TYPE OR REPLACE, so we have to work
around this with exception handling.

Diffstat:
Msrc/exchangedb/exchange_do_reserves_in_insert.sql | 19++++++++++---------
1 file changed, 10 insertions(+), 9 deletions(-)

diff --git a/src/exchangedb/exchange_do_reserves_in_insert.sql b/src/exchangedb/exchange_do_reserves_in_insert.sql @@ -970,15 +970,16 @@ END $$; - - - - - -CREATE TYPE exchange_do_array_reserve_insert_return_type - AS - (transaction_duplicate BOOLEAN - ,ruuid INT8); +DO $$ +BEGIN + CREATE TYPE exchange_do_array_reserve_insert_return_type + AS + (transaction_duplicate BOOLEAN + ,ruuid INT8); +EXCEPTION + WHEN duplicate_object THEN null; +END +$$; CREATE OR REPLACE FUNCTION exchange_do_array_reserves_insert( IN in_gc_date INT8,