]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
Endless loop nesting on ensureHub failure now fixed
authorMikael Nordfeldth <mmn@hethane.se>
Thu, 22 Jun 2017 12:37:32 +0000 (14:37 +0200)
committerMikael Nordfeldth <mmn@hethane.se>
Thu, 22 Jun 2017 12:37:32 +0000 (14:37 +0200)
Essentially I was missing a negation on a test if we were in rediscovery mode.

plugins/OStatus/classes/FeedSub.php
plugins/OStatus/lib/pushinqueuehandler.php

index c6f6e28cbd8bc0877afcf1f9f32a8c014d2e66ba..c734da80b1c49a8e1c17db0730dad606acd2163b 100644 (file)
@@ -216,6 +216,7 @@ class FeedSub extends Managed_DataObject
      */
     public function ensureHub($rediscovered=false)
     {
+        common_debug('Now inside ensureHub again, $rediscovered=='._ve($rediscovered));
         if ($this->sub_state !== 'inactive') {
             common_log(LOG_INFO, sprintf(__METHOD__ . ': Running hub discovery a possibly active feed in %s state for URI %s', _ve($this->sub_state), _ve($this->uri)));
         }
@@ -244,7 +245,7 @@ class FeedSub extends Managed_DataObject
                 common_debug('Database update failed for FeedSub id=='._ve($this->id).' with new huburi: '._ve($this->huburi));
                 throw new ServerException('Database update failed for FeedSub.');
             }
-            if ($rediscovered) {
+            if (!$rediscovered) {
                 $this->renew();
             }
             return $result;
@@ -447,7 +448,8 @@ class FeedSub extends Managed_DataObject
                 // we avoid running this part over and over and over and over):
 
                 common_debug('Running ensureHub again due to 422 status, $rediscovered=='._ve($rediscovered));
-                $this->ensureHub(true);
+                $discoveryResult = $this->ensureHub(true);
+                common_debug('ensureHub is now done and its result was: '._ve($discoveryResult));
             } else {
                 common_log(LOG_ERR, __METHOD__ . ": sub req failed with HTTP $status: " . $response->getBody());
             }
index c5615daad883002582ae98fe36ae63062c5f80f0..4946186cf4199b6257ace3c105752d5b0d487716 100644 (file)
@@ -45,7 +45,11 @@ class PushInQueueHandler extends QueueHandler
         } catch(NoResultException $e) {
             common_log(LOG_INFO, "Discarding POST to unknown feed subscription id {$feedsub_id}");
         } catch(Exception $e) {
-            common_log(LOG_ERR, "Exception "._ve(get_class($e))." during WebSub push input processing for {$feedsub->getUri()}: " . $e->getMessage());
+            if (is_null($feedsub)) {
+                common_log(LOG_ERR, "Exception "._ve(get_class($e))." during WebSub push input processing where FeedSub->receive returned null!" . _ve($e->getMessage()));
+            } else {
+                common_log(LOG_ERR, "Exception "._ve(get_class($e))." during WebSub push input processing for {$feedsub->getUri()}: " . _ve($e->getMessage()));
+            }
         }
         return true;
     }