gnunet-svn
[Top][All Lists]
Advanced

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

[GNUnet-SVN] r18818 - gnunet/src/arm


From: gnunet
Subject: [GNUnet-SVN] r18818 - gnunet/src/arm
Date: Sun, 25 Dec 2011 21:51:03 +0100

Author: grothoff
Date: 2011-12-25 21:51:03 +0100 (Sun, 25 Dec 2011)
New Revision: 18818

Modified:
   gnunet/src/arm/gnunet-service-arm.c
Log:
-LRN: fix normal child death restart.

It does work in the sense that child process is restarted.
However, i didn't have an opportunity to test it for non-default
processes (default processes are restarted immediately; non-default
processes should be restarted on demand).



Modified: gnunet/src/arm/gnunet-service-arm.c
===================================================================
--- gnunet/src/arm/gnunet-service-arm.c 2011-12-25 20:50:35 UTC (rev 18817)
+++ gnunet/src/arm/gnunet-service-arm.c 2011-12-25 20:51:03 UTC (rev 18818)
@@ -903,19 +903,21 @@
            {
              /* process terminated normally, allow restart at any time */
              pos->restart_at.abs_value = 0;
-             continue;
            }
-         if (0 == (tc->reason & GNUNET_SCHEDULER_REASON_SHUTDOWN))
-           GNUNET_log (GNUNET_ERROR_TYPE_INFO,
-                       _
-                       ("Service `%s' terminated with status %s/%d, will 
restart in %llu ms\n"),
-                       pos->name, statstr, statcode, pos->backoff.rel_value);
-         /* schedule restart */
-         pos->restart_at = GNUNET_TIME_relative_to_absolute (pos->backoff);
-         pos->backoff =
-           GNUNET_TIME_relative_min (EXPONENTIAL_BACKOFF_THRESHOLD,
-                                     GNUNET_TIME_relative_multiply
-                                     (pos->backoff, 2));
+          else
+            {
+             if (0 == (tc->reason & GNUNET_SCHEDULER_REASON_SHUTDOWN))
+               GNUNET_log (GNUNET_ERROR_TYPE_INFO,
+                           _
+                           ("Service `%s' terminated with status %s/%d, will 
restart in %llu ms\n"),
+                           pos->name, statstr, statcode, 
pos->backoff.rel_value);
+             /* schedule restart */
+             pos->restart_at = GNUNET_TIME_relative_to_absolute (pos->backoff);
+             pos->backoff =
+               GNUNET_TIME_relative_min (EXPONENTIAL_BACKOFF_THRESHOLD,
+                                         GNUNET_TIME_relative_multiply
+                                         (pos->backoff, 2));
+            }
          if (GNUNET_SCHEDULER_NO_TASK != child_restart_task)
            GNUNET_SCHEDULER_cancel (child_restart_task);
          child_restart_task =




reply via email to

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