exchange

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

commit e46fb309654b82b596a2e5613dcc1c74af4366c0
parent 6ee13445cee3909d23b8ff3162f465835e89a2ce
Author: Christian Grothoff <christian@grothoff.org>
Date:   Sat, 27 Nov 2021 14:56:22 +0100

refactor get_ready_deposits query and index to hopefully make query faster

Diffstat:
Msrc/exchangedb/exchange-0001.sql | 5+++--
Msrc/exchangedb/plugin_exchangedb_postgres.c | 4++--
2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/src/exchangedb/exchange-0001.sql b/src/exchangedb/exchange-0001.sql @@ -418,11 +418,12 @@ COMMENT ON INDEX deposits_coin_pub_merchant_contract_index CREATE INDEX IF NOT EXISTS deposits_get_ready_index ON deposits (shard + ,wire_deadline + ,refund_deadline ,tiny ,done + ,kyc_ok ,extension_blocked - ,wire_deadline - ,refund_deadline ); COMMENT ON INDEX deposits_coin_pub_merchant_contract_index IS 'for deposits_get_ready'; diff --git a/src/exchangedb/plugin_exchangedb_postgres.c b/src/exchangedb/plugin_exchangedb_postgres.c @@ -1105,11 +1105,11 @@ prepare_statements (struct PostgresClosure *pg) " WHERE " " shard >= $2" " AND shard <= $3" + " AND wire_deadline<=$1" + " AND refund_deadline<$1" " AND tiny=FALSE" " AND done=FALSE" " AND (kyc_ok OR $4)" - " AND wire_deadline<=$1" - " AND refund_deadline<$1" " ORDER BY " " shard ASC" " ,wire_deadline ASC"