gnunet-svn
[Top][All Lists]
Advanced

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

[gnunet] branch master updated: -unblock both iterators when queue is ge


From: gnunet
Subject: [gnunet] branch master updated: -unblock both iterators when queue is getting emptied
Date: Tue, 25 Oct 2022 16:59:01 +0200

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

martin-schanzenbach pushed a commit to branch master
in repository gnunet.

The following commit(s) were added to refs/heads/master by this push:
     new 5d116312a -unblock both iterators when queue is getting emptied
5d116312a is described below

commit 5d116312a08aa5b76fc0075fb9a244487dd1fb68
Author: Martin Schanzenbach <schanzen@gnunet.org>
AuthorDate: Tue Oct 25 23:58:54 2022 +0900

    -unblock both iterators when queue is getting emptied
---
 src/zonemaster/gnunet-service-zonemaster.c | 15 +++++----------
 1 file changed, 5 insertions(+), 10 deletions(-)

diff --git a/src/zonemaster/gnunet-service-zonemaster.c 
b/src/zonemaster/gnunet-service-zonemaster.c
index b0e8dc29c..09053a676 100644
--- a/src/zonemaster/gnunet-service-zonemaster.c
+++ b/src/zonemaster/gnunet-service-zonemaster.c
@@ -202,10 +202,6 @@ struct DhtPutActivity
    */
   struct GNUNET_TIME_Absolute start_date;
 
-  /**
-   * Zone monitor
-   */
-  struct GNUNET_NAMESTORE_ZoneMonitor *zm;
 };
 
 /**
@@ -772,13 +768,13 @@ dht_put_continuation (void *cls)
 
   GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
               "PUT complete\n");
-  /* When we just fall under the limit, trigger monitor or iterator again */
+  /* When we just fall under the limit, trigger monitor/iterator again
+   * creating a race condition, but we may actually have finished more
+   * PUTs by the time they come back and both can carry on */
   if (dht_queue_length == DHT_QUEUE_LIMIT)
   {
-    if (NULL != ma->zm)
-      GNUNET_NAMESTORE_zone_monitor_next (ma->zm, 1);
-    else
-      GNUNET_NAMESTORE_zone_iterator_next (namestore_iter, 1);
+    GNUNET_NAMESTORE_zone_monitor_next (zmon, 1);
+    GNUNET_NAMESTORE_zone_iterator_next (namestore_iter, 1);
   }
   dht_queue_length--;
   GNUNET_CONTAINER_DLL_remove (it_head,
@@ -1244,7 +1240,6 @@ handle_monitor_event (void *cls,
     return;
   }
   ma = GNUNET_new (struct DhtPutActivity);
-  ma->zm = zmon;
   perform_dht_put_monitor (zone,
                            label,
                            rd,

-- 
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]