[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] [taler-exchange] 02/05: try to fix missing rollbacks for wi
From: |
gnunet |
Subject: |
[GNUnet-SVN] [taler-exchange] 02/05: try to fix missing rollbacks for wirewatch |
Date: |
Sat, 11 Aug 2018 02:49:12 +0200 |
This is an automated email from the git hooks/post-receive script.
grothoff pushed a commit to branch master
in repository exchange.
commit ab239f3e548028b13952c31f1063557a7d6c0322
Author: Christian Grothoff <address@hidden>
AuthorDate: Sat Aug 11 02:47:58 2018 +0200
try to fix missing rollbacks for wirewatch
---
src/exchange/taler-exchange-wirewatch.c | 18 +++++++++++++++++-
1 file changed, 17 insertions(+), 1 deletion(-)
diff --git a/src/exchange/taler-exchange-wirewatch.c
b/src/exchange/taler-exchange-wirewatch.c
index a48634e..9de0597 100644
--- a/src/exchange/taler-exchange-wirewatch.c
+++ b/src/exchange/taler-exchange-wirewatch.c
@@ -420,7 +420,7 @@ history_cb (void *cls,
{
struct RejectContext *rtc;
- GNUNET_log (GNUNET_ERROR_TYPE_INFO,
+ GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
"Wire transfer over %s has invalid subject `%s', sending it
back!\n",
TALER_amount2s (&details->amount),
details->wtid_s);
@@ -443,6 +443,15 @@ history_cb (void *cls,
row_off_size,
&reject_cb,
rtc);
+ if (NULL == rt)
+ {
+ GNUNET_break (0);
+ db_plugin->rollback (db_plugin->cls,
+ session);
+ GNUNET_assert (NULL == task);
+ task = GNUNET_SCHEDULER_add_now (&find_transfers,
+ NULL);
+ }
return GNUNET_SYSERR; /* will continue later... */
}
@@ -474,7 +483,10 @@ history_cb (void *cls,
{
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"Got DB soft error for reserve_in_insert\n");
+ db_plugin->rollback (db_plugin->cls,
+ session);
/* try again */
+ GNUNET_assert (NULL == task);
task = GNUNET_SCHEDULER_add_now (&find_transfers,
NULL);
return GNUNET_SYSERR;
@@ -540,6 +552,8 @@ find_transfers (void *cls)
{
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
"Failed to obtain starting point for montoring from
database!\n");
+ db_plugin->rollback (db_plugin->cls,
+ session);
global_ret = GNUNET_SYSERR;
GNUNET_SCHEDULER_shutdown ();
return;
@@ -547,6 +561,8 @@ find_transfers (void *cls)
if (GNUNET_DB_STATUS_SOFT_ERROR == qs)
{
/* try again */
+ db_plugin->rollback (db_plugin->cls,
+ session);
task = GNUNET_SCHEDULER_add_now (&find_transfers,
NULL);
return;
--
To stop receiving notification emails like this one, please contact
address@hidden
- [GNUnet-SVN] [taler-exchange] branch master updated (e0585f2 -> 18736c4), gnunet, 2018/08/10
- [GNUnet-SVN] [taler-exchange] 01/05: improve command search routine in interpeter, report command execution velocity, gnunet, 2018/08/10
- [GNUnet-SVN] [taler-exchange] 02/05: try to fix missing rollbacks for wirewatch,
gnunet <=
- [GNUnet-SVN] [taler-exchange] 05/05: avoid backlog issue by increasing backlog size, gnunet, 2018/08/10
- [GNUnet-SVN] [taler-exchange] 03/05: fix command lookup, gnunet, 2018/08/10
- [GNUnet-SVN] [taler-exchange] 04/05: add multi-reserve support, improve load balancing by not reusing connections in benchmark, gnunet, 2018/08/10