merchant

Merchant backend to process payments, run by merchants
Log | Files | Refs | Submodules | README | LICENSE

commit bb37278c557b6d3a6b4b0eee1937cbf1a8813e91
parent bebf18afa23d109fdde22ed73b376aa33cea1531
Author: Martin Schanzenbach <schanzen@gnunet.org>
Date:   Tue, 15 Jul 2025 16:01:19 +0200

Actually return timestamps and not relative time ranges in interval statisitics API to fit with API spec

Diffstat:
Msrc/backenddb/pg_lookup_statistics_amount_by_interval.c | 15++++++++-------
Msrc/backenddb/pg_lookup_statistics_counter_by_interval.c | 7++++---
2 files changed, 12 insertions(+), 10 deletions(-)

diff --git a/src/backenddb/pg_lookup_statistics_amount_by_interval.c b/src/backenddb/pg_lookup_statistics_amount_by_interval.c @@ -110,16 +110,16 @@ lookup_statistics_amount_by_interval_cb (void *cls, struct LookupAmountStatisticsContext *tflc = cls; struct TALER_Amount *amounts = NULL; char *resp_desc = NULL; - uint64_t cur_interval_start_epoch; + uint64_t cur_interval_start_ago; unsigned int amounts_len = 0; for (unsigned int i = 0; i < num_results; i++) { struct TALER_Amount cumulative_amount; - uint64_t interval_start_epoch; + uint64_t interval_start_ago; struct GNUNET_PQ_ResultSpec rs[] = { GNUNET_PQ_result_spec_uint64 ("range", - &interval_start_epoch), + &interval_start_ago), TALER_PQ_result_spec_amount_with_currency ("rvalue", &cumulative_amount), GNUNET_PQ_result_spec_end @@ -136,11 +136,12 @@ lookup_statistics_amount_by_interval_cb (void *cls, } /* Call callback if the bucket changed */ - if (interval_start_epoch != cur_interval_start_epoch) + if (interval_start_ago != cur_interval_start_ago) { struct GNUNET_TIME_Timestamp interval_start; - interval_start = GNUNET_TIME_timestamp_from_s (cur_interval_start_epoch); + interval_start = GNUNET_TIME_timestamp_get (); + interval_start.abs_time.abs_value_us -= interval_start_ago * 1000 * 1000; tflc->cb (tflc->cb_cls, resp_desc, interval_start, @@ -151,7 +152,7 @@ lookup_statistics_amount_by_interval_cb (void *cls, 0); GNUNET_free (resp_desc); } - cur_interval_start_epoch = interval_start_epoch; + cur_interval_start_ago = interval_start_ago; GNUNET_array_append (amounts, amounts_len, cumulative_amount); @@ -161,7 +162,7 @@ lookup_statistics_amount_by_interval_cb (void *cls, { struct GNUNET_TIME_Timestamp interval_start; - interval_start = GNUNET_TIME_timestamp_from_s (cur_interval_start_epoch); + interval_start = GNUNET_TIME_timestamp_from_s (cur_interval_start_ago); tflc->cb (tflc->cb_cls, resp_desc, interval_start, diff --git a/src/backenddb/pg_lookup_statistics_counter_by_interval.c b/src/backenddb/pg_lookup_statistics_counter_by_interval.c @@ -112,10 +112,10 @@ lookup_statistics_counter_by_interval_cb (void *cls, for (unsigned int i = 0; i < num_results; i++) { uint64_t cumulative_number; - uint64_t interval_start_epoch; + uint64_t interval_start_ago; struct GNUNET_PQ_ResultSpec rs[] = { GNUNET_PQ_result_spec_uint64 ("range", - &interval_start_epoch), + &interval_start_ago), GNUNET_PQ_result_spec_uint64 ("rvalue", &cumulative_number), GNUNET_PQ_result_spec_end @@ -132,7 +132,8 @@ lookup_statistics_counter_by_interval_cb (void *cls, return; } - interval_start = GNUNET_TIME_timestamp_from_s (interval_start_epoch); + interval_start = GNUNET_TIME_timestamp_get (); + interval_start.abs_time.abs_value_us -= interval_start_ago * 1000 * 1000; tflc->cb (tflc->cb_cls, tflc->description, interval_start,