Home
DevCentral
Search
Configure Global Search
Log In
Transactions
T962
Change Details
Change Details
Old
New
Diff
D564 has a view policy restricting it temporarily to @Sandlayth and me. The notification fired when I changed this view policy triggers the following bug when Phabricator tries to get the repository of the diff (to further get the repositories' projects and sort the notification into the right group). The fact Phabricator fires this notifications at first is disputable and should be reported upstream as a security issue. [Update: upstream considers this as acceptable in the current state of feed.http_hooks.] But independently of the Phabricator issue, when we don't have access to an object, we should fail gracefully and perhaps use the default group as fallback. **Payload** ```lang=json {"storyID":"8485","storyType":"PhabricatorApplicationTransactionFeedStory","storyData":{"objectPHID":"PHID-DREV-iqc4ipnohzrpzfoav7vt","transactionPHIDs":{"PHID-XACT-DREV-yc3h2xufxxu3pmq":"PHID-XACT-DREV-yc3h2xufxxu3pmq"}},"storyAuthorPHID":"PHID-USER-fnetlprx7zdotfm2hdrz","storyText":"dereckson changed the visibility for D564: WIP: start documentation.","epoch":"1469410725"} ``` **Error log** ```lang=plain [2016-07-31 23:01:48] production.INFO: [Gate] New payload. {"service":"Phabricator","door":"Nasqueron"} [2016-07-31 23:01:49] production.ERROR: exception 'ErrorException' with message 'Trying to get property of non-object' in /var/wwwroot/default/app/Phabricator/ PhabricatorStory.php:176 Stack trace: #0 /var/wwwroot/default/app/Phabricator/PhabricatorStory.php(176): Illuminate\Foundation\Bootstrap\HandleExceptions->handleError(8, 'Trying to get p...', '/var /wwwroot/de...', 176, Array) #1 /var/wwwroot/default/app/Phabricator/PhabricatorStory.php(135): Nasqueron\Notifications\Phabricator\PhabricatorStory->getRepositoryPHID('differential.qu...' ) #2 /var/wwwroot/default/app/Phabricator/PhabricatorStory.php(247): Nasqueron\Notifications\Phabricator\PhabricatorStory->getProjectsPHIDs() #3 /var/wwwroot/default/app/Phabricator/PhabricatorStory.php(235): Nasqueron\Notifications\Phabricator\PhabricatorStory->attachProjects() #4 /var/wwwroot/default/app/Analyzers/Phabricator/PhabricatorPayloadAnalyzer.php(118): Nasqueron\Notifications\Phabricator\PhabricatorStory->getProjects() #5 /var/wwwroot/default/app/Notifications/PhabricatorNotification.php(61): Nasqueron\Notifications\Analyzers\Phabricator\PhabricatorPayloadAnalyzer->getGroup() #6 /var/wwwroot/default/app/Notifications/PhabricatorNotification.php(38): Nasqueron\Notifications\Notifications\PhabricatorNotification->getGroup() #7 /var/wwwroot/default/app/Jobs/FirePhabricatorNotification.php(52): Nasqueron\Notifications\Notifications\PhabricatorNotification->__construct('Nasqueron', O bject(Nasqueron\Notifications\Phabricator\PhabricatorStory)) #8 /var/wwwroot/default/app/Jobs/FirePhabricatorNotification.php(38): Nasqueron\Notifications\Jobs\FirePhabricatorNotification->createNotification() #9 /var/wwwroot/default/app/Listeners/NotificationListener.php(48): Nasqueron\Notifications\Jobs\FirePhabricatorNotification->handle() #10 [internal function]: Nasqueron\Notifications\Listeners\NotificationListener->onPhabricatorPayload(Object(Nasqueron\Notifications\Events\PhabricatorPayloadE vent)) […] ```
D564 has a view policy restricting it temporarily. The notification fired when I changed this view policy triggers the following bug when Phabricator tries to get the repository of the diff (to further get the repositories' projects and sort the notification into the right group). The fact Phabricator fires this notifications at first is disputable and should be reported upstream as a security issue. [Update: upstream considers this as acceptable in the current state of feed.http_hooks.] But independently of the Phabricator issue, when we don't have access to an object, we should fail gracefully and perhaps use the default group as fallback. **Payload** ```lang=json {"storyID":"8485","storyType":"PhabricatorApplicationTransactionFeedStory","storyData":{"objectPHID":"PHID-DREV-iqc4ipnohzrpzfoav7vt","transactionPHIDs":{"PHID-XACT-DREV-yc3h2xufxxu3pmq":"PHID-XACT-DREV-yc3h2xufxxu3pmq"}},"storyAuthorPHID":"PHID-USER-fnetlprx7zdotfm2hdrz","storyText":"dereckson changed the visibility for D564: WIP: start documentation.","epoch":"1469410725"} ``` **Error log** ```lang=plain [2016-07-31 23:01:48] production.INFO: [Gate] New payload. {"service":"Phabricator","door":"Nasqueron"} [2016-07-31 23:01:49] production.ERROR: exception 'ErrorException' with message 'Trying to get property of non-object' in /var/wwwroot/default/app/Phabricator/ PhabricatorStory.php:176 Stack trace: #0 /var/wwwroot/default/app/Phabricator/PhabricatorStory.php(176): Illuminate\Foundation\Bootstrap\HandleExceptions->handleError(8, 'Trying to get p...', '/var /wwwroot/de...', 176, Array) #1 /var/wwwroot/default/app/Phabricator/PhabricatorStory.php(135): Nasqueron\Notifications\Phabricator\PhabricatorStory->getRepositoryPHID('differential.qu...' ) #2 /var/wwwroot/default/app/Phabricator/PhabricatorStory.php(247): Nasqueron\Notifications\Phabricator\PhabricatorStory->getProjectsPHIDs() #3 /var/wwwroot/default/app/Phabricator/PhabricatorStory.php(235): Nasqueron\Notifications\Phabricator\PhabricatorStory->attachProjects() #4 /var/wwwroot/default/app/Analyzers/Phabricator/PhabricatorPayloadAnalyzer.php(118): Nasqueron\Notifications\Phabricator\PhabricatorStory->getProjects() #5 /var/wwwroot/default/app/Notifications/PhabricatorNotification.php(61): Nasqueron\Notifications\Analyzers\Phabricator\PhabricatorPayloadAnalyzer->getGroup() #6 /var/wwwroot/default/app/Notifications/PhabricatorNotification.php(38): Nasqueron\Notifications\Notifications\PhabricatorNotification->getGroup() #7 /var/wwwroot/default/app/Jobs/FirePhabricatorNotification.php(52): Nasqueron\Notifications\Notifications\PhabricatorNotification->__construct('Nasqueron', O bject(Nasqueron\Notifications\Phabricator\PhabricatorStory)) #8 /var/wwwroot/default/app/Jobs/FirePhabricatorNotification.php(38): Nasqueron\Notifications\Jobs\FirePhabricatorNotification->createNotification() #9 /var/wwwroot/default/app/Listeners/NotificationListener.php(48): Nasqueron\Notifications\Jobs\FirePhabricatorNotification->handle() #10 [internal function]: Nasqueron\Notifications\Listeners\NotificationListener->onPhabricatorPayload(Object(Nasqueron\Notifications\Events\PhabricatorPayloadE vent)) […] ```
D564 has a view policy restricting it temporarily
to @Sandlayth and me
. The notification fired when I changed this view policy triggers the following bug when Phabricator tries to get the repository of the diff (to further get the repositories' projects and sort the notification into the right group). The fact Phabricator fires this notifications at first is disputable and should be reported upstream as a security issue. [Update: upstream considers this as acceptable in the current state of feed.http_hooks.] But independently of the Phabricator issue, when we don't have access to an object, we should fail gracefully and perhaps use the default group as fallback. **Payload** ```lang=json {"storyID":"8485","storyType":"PhabricatorApplicationTransactionFeedStory","storyData":{"objectPHID":"PHID-DREV-iqc4ipnohzrpzfoav7vt","transactionPHIDs":{"PHID-XACT-DREV-yc3h2xufxxu3pmq":"PHID-XACT-DREV-yc3h2xufxxu3pmq"}},"storyAuthorPHID":"PHID-USER-fnetlprx7zdotfm2hdrz","storyText":"dereckson changed the visibility for D564: WIP: start documentation.","epoch":"1469410725"} ``` **Error log** ```lang=plain [2016-07-31 23:01:48] production.INFO: [Gate] New payload. {"service":"Phabricator","door":"Nasqueron"} [2016-07-31 23:01:49] production.ERROR: exception 'ErrorException' with message 'Trying to get property of non-object' in /var/wwwroot/default/app/Phabricator/ PhabricatorStory.php:176 Stack trace: #0 /var/wwwroot/default/app/Phabricator/PhabricatorStory.php(176): Illuminate\Foundation\Bootstrap\HandleExceptions->handleError(8, 'Trying to get p...', '/var /wwwroot/de...', 176, Array) #1 /var/wwwroot/default/app/Phabricator/PhabricatorStory.php(135): Nasqueron\Notifications\Phabricator\PhabricatorStory->getRepositoryPHID('differential.qu...' ) #2 /var/wwwroot/default/app/Phabricator/PhabricatorStory.php(247): Nasqueron\Notifications\Phabricator\PhabricatorStory->getProjectsPHIDs() #3 /var/wwwroot/default/app/Phabricator/PhabricatorStory.php(235): Nasqueron\Notifications\Phabricator\PhabricatorStory->attachProjects() #4 /var/wwwroot/default/app/Analyzers/Phabricator/PhabricatorPayloadAnalyzer.php(118): Nasqueron\Notifications\Phabricator\PhabricatorStory->getProjects() #5 /var/wwwroot/default/app/Notifications/PhabricatorNotification.php(61): Nasqueron\Notifications\Analyzers\Phabricator\PhabricatorPayloadAnalyzer->getGroup() #6 /var/wwwroot/default/app/Notifications/PhabricatorNotification.php(38): Nasqueron\Notifications\Notifications\PhabricatorNotification->getGroup() #7 /var/wwwroot/default/app/Jobs/FirePhabricatorNotification.php(52): Nasqueron\Notifications\Notifications\PhabricatorNotification->__construct('Nasqueron', O bject(Nasqueron\Notifications\Phabricator\PhabricatorStory)) #8 /var/wwwroot/default/app/Jobs/FirePhabricatorNotification.php(38): Nasqueron\Notifications\Jobs\FirePhabricatorNotification->createNotification() #9 /var/wwwroot/default/app/Listeners/NotificationListener.php(48): Nasqueron\Notifications\Jobs\FirePhabricatorNotification->handle() #10 [internal function]: Nasqueron\Notifications\Listeners\NotificationListener->onPhabricatorPayload(Object(Nasqueron\Notifications\Events\PhabricatorPayloadE vent)) […] ```
Continue