fixing aggregator hanging after bank's error
This commit is contained in:
parent
e72a7188ac
commit
f00a49e40c
@ -599,6 +599,7 @@ run_aggregation (void *cls)
|
|||||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||||
"Failed to obtain database session!\n");
|
"Failed to obtain database session!\n");
|
||||||
global_ret = GNUNET_SYSERR;
|
global_ret = GNUNET_SYSERR;
|
||||||
|
GNUNET_SCHEDULER_shutdown ();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (GNUNET_OK !=
|
if (GNUNET_OK !=
|
||||||
@ -608,6 +609,7 @@ run_aggregation (void *cls)
|
|||||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||||
"Failed to start database transaction!\n");
|
"Failed to start database transaction!\n");
|
||||||
global_ret = GNUNET_SYSERR;
|
global_ret = GNUNET_SYSERR;
|
||||||
|
GNUNET_SCHEDULER_shutdown ();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
au = GNUNET_new (struct AggregationUnit);
|
au = GNUNET_new (struct AggregationUnit);
|
||||||
@ -629,6 +631,7 @@ run_aggregation (void *cls)
|
|||||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||||
"Failed to execute deposit iteration!\n");
|
"Failed to execute deposit iteration!\n");
|
||||||
global_ret = GNUNET_SYSERR;
|
global_ret = GNUNET_SYSERR;
|
||||||
|
GNUNET_SCHEDULER_shutdown ();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
|
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
|
||||||
@ -683,6 +686,7 @@ run_aggregation (void *cls)
|
|||||||
db_plugin->rollback (db_plugin->cls,
|
db_plugin->rollback (db_plugin->cls,
|
||||||
session);
|
session);
|
||||||
global_ret = GNUNET_SYSERR;
|
global_ret = GNUNET_SYSERR;
|
||||||
|
GNUNET_SCHEDULER_shutdown ();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -709,6 +713,7 @@ run_aggregation (void *cls)
|
|||||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||||
"Failed to start database transaction!\n");
|
"Failed to start database transaction!\n");
|
||||||
global_ret = GNUNET_SYSERR;
|
global_ret = GNUNET_SYSERR;
|
||||||
|
GNUNET_SCHEDULER_shutdown ();
|
||||||
GNUNET_free_non_null (au->additional_rows);
|
GNUNET_free_non_null (au->additional_rows);
|
||||||
if (NULL != au->wire)
|
if (NULL != au->wire)
|
||||||
json_decref (au->wire);
|
json_decref (au->wire);
|
||||||
@ -892,6 +897,7 @@ wire_confirm_cb (void *cls,
|
|||||||
db_plugin->rollback (db_plugin->cls,
|
db_plugin->rollback (db_plugin->cls,
|
||||||
session);
|
session);
|
||||||
global_ret = GNUNET_SYSERR;
|
global_ret = GNUNET_SYSERR;
|
||||||
|
GNUNET_SCHEDULER_shutdown ();
|
||||||
GNUNET_free (wpd);
|
GNUNET_free (wpd);
|
||||||
wpd = NULL;
|
wpd = NULL;
|
||||||
return;
|
return;
|
||||||
@ -905,6 +911,7 @@ wire_confirm_cb (void *cls,
|
|||||||
db_plugin->rollback (db_plugin->cls,
|
db_plugin->rollback (db_plugin->cls,
|
||||||
session);
|
session);
|
||||||
global_ret = GNUNET_SYSERR;
|
global_ret = GNUNET_SYSERR;
|
||||||
|
GNUNET_SCHEDULER_shutdown ();
|
||||||
GNUNET_free (wpd);
|
GNUNET_free (wpd);
|
||||||
wpd = NULL;
|
wpd = NULL;
|
||||||
return;
|
return;
|
||||||
@ -964,6 +971,7 @@ wire_prepare_cb (void *cls,
|
|||||||
db_plugin->rollback (db_plugin->cls,
|
db_plugin->rollback (db_plugin->cls,
|
||||||
wpd->session);
|
wpd->session);
|
||||||
global_ret = GNUNET_SYSERR;
|
global_ret = GNUNET_SYSERR;
|
||||||
|
GNUNET_SCHEDULER_shutdown ();
|
||||||
GNUNET_free (wpd);
|
GNUNET_free (wpd);
|
||||||
wpd = NULL;
|
wpd = NULL;
|
||||||
return;
|
return;
|
||||||
@ -1006,6 +1014,7 @@ run_transfers (void *cls)
|
|||||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||||
"Failed to start database transaction!\n");
|
"Failed to start database transaction!\n");
|
||||||
global_ret = GNUNET_SYSERR;
|
global_ret = GNUNET_SYSERR;
|
||||||
|
GNUNET_SCHEDULER_shutdown ();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
wpd = GNUNET_new (struct WirePrepareData);
|
wpd = GNUNET_new (struct WirePrepareData);
|
||||||
@ -1020,6 +1029,7 @@ run_transfers (void *cls)
|
|||||||
db_plugin->rollback (db_plugin->cls,
|
db_plugin->rollback (db_plugin->cls,
|
||||||
session);
|
session);
|
||||||
global_ret = GNUNET_SYSERR;
|
global_ret = GNUNET_SYSERR;
|
||||||
|
GNUNET_SCHEDULER_shutdown ();
|
||||||
GNUNET_free (wpd);
|
GNUNET_free (wpd);
|
||||||
wpd = NULL;
|
wpd = NULL;
|
||||||
return;
|
return;
|
||||||
|
Loading…
Reference in New Issue
Block a user