exchange

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

commit 6c66f6f5cffa6b33ecd41cfc0ed92ab76185bf06
parent caf66486e70d896b1dd4eca3785fd42185a540cd
Author: Christian Grothoff <grothoff@gnunet.org>
Date:   Sat,  2 Apr 2022 03:50:30 +0200

rollback transaction to end transaction scope before releasing the shard (fixes #7216)

Diffstat:
Msrc/exchange/taler-exchange-aggregator.c | 4++++
1 file changed, 4 insertions(+), 0 deletions(-)

diff --git a/src/exchange/taler-exchange-aggregator.c b/src/exchange/taler-exchange-aggregator.c @@ -453,6 +453,7 @@ run_aggregation (void *cls) au_active.payto_uri); global_ret = EXIT_FAILURE; GNUNET_SCHEDULER_shutdown (); + db_plugin->rollback (db_plugin->cls); release_shard (s); return; } @@ -477,6 +478,7 @@ run_aggregation (void *cls) GNUNET_TIME_timestamp2s (au_active.execution_time)); global_ret = EXIT_FAILURE; GNUNET_SCHEDULER_shutdown (); + db_plugin->rollback (db_plugin->cls); release_shard (s); return; } @@ -707,6 +709,7 @@ run_aggregation (void *cls) GNUNET_break (0); global_ret = EXIT_FAILURE; GNUNET_SCHEDULER_shutdown (); + db_plugin->rollback (db_plugin->cls); /* just in case */ release_shard (s); return; case GNUNET_DB_STATUS_SUCCESS_NO_RESULTS: @@ -720,6 +723,7 @@ run_aggregation (void *cls) GNUNET_break (0); global_ret = EXIT_FAILURE; GNUNET_SCHEDULER_shutdown (); + db_plugin->rollback (db_plugin->cls); /* just in case */ release_shard (s); return; }