From faf3f57ce3582a5b9f1070d689827bccd0183cd4 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Mon, 16 Jan 2023 17:45:05 +0100 Subject: do not 500 on empty reserve history by not ignoring undecided purses that may have caused reserve to be created in the first place --- src/exchangedb/exchange_do_reserve_purse.sql | 4 ---- src/exchangedb/pg_get_reserve_history.c | 9 +++++++-- 2 files changed, 7 insertions(+), 6 deletions(-) (limited to 'src/exchangedb') diff --git a/src/exchangedb/exchange_do_reserve_purse.sql b/src/exchangedb/exchange_do_reserve_purse.sql index 4f65c6606..0476e60d1 100644 --- a/src/exchangedb/exchange_do_reserve_purse.sql +++ b/src/exchangedb/exchange_do_reserve_purse.sql @@ -161,7 +161,3 @@ END $$; COMMENT ON FUNCTION exchange_do_reserve_purse(BYTEA, BYTEA, INT8, INT8, INT8, BYTEA, BOOLEAN, INT8, INT4, BYTEA, BYTEA) IS 'Create a purse for a reserve.'; - - - - diff --git a/src/exchangedb/pg_get_reserve_history.c b/src/exchangedb/pg_get_reserve_history.c index 89701ae71..6c12abc61 100644 --- a/src/exchangedb/pg_get_reserve_history.c +++ b/src/exchangedb/pg_get_reserve_history.c @@ -797,14 +797,14 @@ TEH_PG_get_reserve_history (void *cls, " FROM purse_merges pm" " JOIN purse_requests pr" " USING (purse_pub)" - " JOIN purse_decision pdes" + " LEFT JOIN purse_decision pdes" " USING (purse_pub)" " JOIN account_merges am" " ON (am.purse_pub = pm.purse_pub AND" " am.reserve_pub = pm.reserve_pub)" " WHERE pm.reserve_pub=$1" " AND COALESCE(pm.partner_serial_id,0)=0" /* must be local! */ - " AND NOT pdes.refunded;"); + " AND NOT COALESCE (pdes.refunded, FALSE);"); PREPARE (pg, "history_by_reserve", "SELECT" @@ -855,7 +855,12 @@ TEH_PG_get_reserve_history (void *cls, &rhc); if ( (0 > qs) || (GNUNET_OK != rhc.status) ) + { + GNUNET_log (GNUNET_ERROR_TYPE_WARNING, + "Failed to compile reserve history at `%s'\n", + work[i].statement); break; + } } if ( (qs < 0) || (rhc.status != GNUNET_OK) ) -- cgit v1.2.3