Page MenuHomePhabricator

Return empty data if fact dimension is missing, not yet available

Authored by artms on Oct 21 2019, 1:36 PM.



On fresh installation which doesn't have yet any task closed you will not be able to open charts because of error below:

[Mon Oct 21 15:42:41 2019] [2019-10-21 15:42:41] EXCEPTION: (TypeError) Argument 1 passed to head_key() must be of the type array, null given, called in ..phabricator/src/applications/fact/chart/PhabricatorFactChartFunction.php on line 86 at [<phutil>/src/utils/utils.php:832]
[Mon Oct 21 15:42:41 2019]   #0 phlog(TypeError) called at [<phabricator>/src/aphront/handler/PhabricatorAjaxRequestExceptionHandler.php:27]
[Mon Oct 21 15:42:41 2019]   #1 PhabricatorAjaxRequestExceptionHandler::handleRequestThrowable(AphrontRequest, TypeError) called at [<phabricator>/src/aphront/configuration/AphrontApplicationConfiguration.php:797]
[Mon Oct 21 15:42:41 2019]   #2 AphrontApplicationConfiguration::handleThrowable(TypeError) called at [<phabricator>/src/aphront/configuration/AphrontApplicationConfiguration.php:345]
[Mon Oct 21 15:42:41 2019]   #3 AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phabricator>/src/aphront/configuration/AphrontApplicationConfiguration.php:214]
[Mon Oct 21 15:42:41 2019]   #4 AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phabricator>/webroot/index.php:35

To fix issue - lets return empty data set instead

Test Plan
  1. Create fresh phabricator installation
  2. Create fresh project
  3. Try viewing charts

Diff Detail

rP Phabricator
Automatic diff as part of commit; lint not applicable.
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

artms created this revision.Oct 21 2019, 1:36 PM
artms added a comment.Oct 21 2019, 1:37 PM

This can also happen if not tasks were ever open... Anyway - I think we should set empty dimension if we can find nothing...

artms requested review of this revision.Oct 21 2019, 1:38 PM
epriestley accepted this revision.Oct 29 2019, 5:16 PM


This revision is now accepted and ready to land.Oct 29 2019, 5:16 PM