gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-merchant] branch master updated: -fix child management


From: gnunet
Subject: [taler-merchant] branch master updated: -fix child management
Date: Sat, 06 Jan 2024 22:17:17 +0100

This is an automated email from the git hooks/post-receive script.

grothoff pushed a commit to branch master
in repository merchant.

The following commit(s) were added to refs/heads/master by this push:
     new 6e8e4378 -fix child management
6e8e4378 is described below

commit 6e8e437885422a42537761f8b7ca58844af71094
Author: Christian Grothoff <christian@grothoff.org>
AuthorDate: Sat Jan 6 22:17:14 2024 +0100

    -fix child management
---
 src/backend/taler-merchant-depositcheck.c  | 29 ++++++++++++++++++++++++-----
 src/backenddb/pg_lookup_pending_deposits.c |  4 ++--
 src/backenddb/pg_lookup_pending_deposits.h |  2 +-
 src/include/taler_merchantdb_plugin.h      |  2 +-
 4 files changed, 28 insertions(+), 9 deletions(-)

diff --git a/src/backend/taler-merchant-depositcheck.c 
b/src/backend/taler-merchant-depositcheck.c
index 6981ebe0..7bf8a61c 100644
--- a/src/backend/taler-merchant-depositcheck.c
+++ b/src/backend/taler-merchant-depositcheck.c
@@ -199,7 +199,7 @@ static const struct GNUNET_CONFIGURATION_Handle *cfg;
 /**
  * Name of the configuration file we use.
  */
-static const char *cfg_filename;
+static char *cfg_filename;
 
 /**
  * Our database plugin.
@@ -613,11 +613,17 @@ static void
 select_work (void *cls)
 {
   bool retry = false;
-  uint32_t limit = CONCURRENCY_LIMIT - w_count;
+  uint64_t limit = CONCURRENCY_LIMIT - w_count;
 
   (void) cls;
   task = NULL;
+  GNUNET_assert (w_count <= CONCURRENCY_LIMIT);
   GNUNET_assert (NULL != keys);
+  if (0 == limit)
+  {
+    GNUNET_break (0);
+    return;
+  }
   if (GNUNET_TIME_absolute_is_past (keys->key_data_expiration.abs_time))
   {
     /* Parent should re-start us, then we will re-fetch /keys */
@@ -706,15 +712,19 @@ static struct GNUNET_OS_Process *
 start_worker (const char *base_url)
 {
   GNUNET_log (GNUNET_ERROR_TYPE_INFO,
-              "Launching worker for exchange `%s'\n",
-              base_url);
+              "Launching worker for exchange `%s' using `%s`\n",
+              base_url,
+              cfg_filename);
   return GNUNET_OS_start_process (GNUNET_OS_INHERIT_STD_ALL,
                                   NULL,
                                   NULL,
                                   NULL,
                                   "taler-merchant-depositcheck",
+                                  "taler-merchant-depositcheck",
                                   "-c", cfg_filename,
                                   "-e", base_url,
+                                  "-L", "INFO",
+                                  test_mode ? "-t" : NULL,
                                   NULL);
 }
 
@@ -756,6 +766,12 @@ child_done_cb (void *cls,
     return;
   }
   GNUNET_OS_process_destroy (c->process);
+  c->process = NULL;
+  if (test_mode &&
+      (! GNUNET_TIME_relative_is_zero (c->rd)) )
+  {
+    return;
+  }
   if (GNUNET_TIME_absolute_is_future (c->next_start))
     c->rd = GNUNET_TIME_STD_BACKOFF (c->rd);
   else
@@ -850,7 +866,10 @@ run (void *cls,
   (void) args;
 
   cfg = c;
-  cfg_filename = cfgfile;
+  cfg_filename = GNUNET_strdup (cfgfile);
+  GNUNET_log (GNUNET_ERROR_TYPE_INFO,
+              "Running with configuration %s\n",
+              cfgfile);
   GNUNET_SCHEDULER_add_shutdown (&shutdown_task,
                                  NULL);
   if (NULL == exchange_url)
diff --git a/src/backenddb/pg_lookup_pending_deposits.c 
b/src/backenddb/pg_lookup_pending_deposits.c
index a5103604..27509f36 100644
--- a/src/backenddb/pg_lookup_pending_deposits.c
+++ b/src/backenddb/pg_lookup_pending_deposits.c
@@ -128,7 +128,7 @@ enum GNUNET_DB_QueryStatus
 TMH_PG_lookup_pending_deposits (
   void *cls,
   const char *exchange_url,
-  uint32_t limit,
+  uint64_t limit,
   bool allow_future,
   TALER_MERCHANTDB_PendingDepositsCallback cb,
   void *cb_cls)
@@ -144,7 +144,7 @@ TMH_PG_lookup_pending_deposits (
   struct GNUNET_PQ_QueryParam params[] = {
     GNUNET_PQ_query_param_string (exchange_url),
     GNUNET_PQ_query_param_absolute_time (&now),
-    GNUNET_PQ_query_param_uint32 (&limit),
+    GNUNET_PQ_query_param_uint64 (&limit),
     GNUNET_PQ_query_param_bool (allow_future),
     GNUNET_PQ_query_param_end
   };
diff --git a/src/backenddb/pg_lookup_pending_deposits.h 
b/src/backenddb/pg_lookup_pending_deposits.h
index 47cadfac..65bcbb9e 100644
--- a/src/backenddb/pg_lookup_pending_deposits.h
+++ b/src/backenddb/pg_lookup_pending_deposits.h
@@ -41,7 +41,7 @@ enum GNUNET_DB_QueryStatus
 TMH_PG_lookup_pending_deposits (
   void *cls,
   const char *exchange_url,
-  uint32_t limit,
+  uint64_t limit,
   bool allow_future,
   TALER_MERCHANTDB_PendingDepositsCallback cb,
   void *cb_cls);
diff --git a/src/include/taler_merchantdb_plugin.h 
b/src/include/taler_merchantdb_plugin.h
index ae25feb5..953c7666 100644
--- a/src/include/taler_merchantdb_plugin.h
+++ b/src/include/taler_merchantdb_plugin.h
@@ -3694,7 +3694,7 @@ struct TALER_MERCHANTDB_Plugin
   (*lookup_pending_deposits)(
     void *cls,
     const char *exchange_url,
-    uint32_t limit,
+    uint64_t limit,
     bool allow_future,
     TALER_MERCHANTDB_PendingDepositsCallback cb,
     void *cb_cls);

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]