summaryrefslogtreecommitdiff
path: root/src/exchange/taler-exchange-aggregator.c
diff options
context:
space:
mode:
authorChristian Grothoff <grothoff@gnunet.org>2022-04-02 03:50:30 +0200
committerChristian Grothoff <grothoff@gnunet.org>2022-04-02 03:50:30 +0200
commit6c66f6f5cffa6b33ecd41cfc0ed92ab76185bf06 (patch)
tree93fc47716f8f9ce1eea457cabe682e9b6d93ef99 /src/exchange/taler-exchange-aggregator.c
parentcaf66486e70d896b1dd4eca3785fd42185a540cd (diff)
downloadexchange-6c66f6f5cffa6b33ecd41cfc0ed92ab76185bf06.tar.gz
exchange-6c66f6f5cffa6b33ecd41cfc0ed92ab76185bf06.tar.bz2
exchange-6c66f6f5cffa6b33ecd41cfc0ed92ab76185bf06.zip
rollback transaction to end transaction scope before releasing the shard (fixes #7216)
Diffstat (limited to 'src/exchange/taler-exchange-aggregator.c')
-rw-r--r--src/exchange/taler-exchange-aggregator.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/exchange/taler-exchange-aggregator.c b/src/exchange/taler-exchange-aggregator.c
index 04cf426de..5f185e247 100644
--- 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;
}