Page MenuHomePhorge

Exception trying to export empty task list to CSV
Closed, ResolvedPublic

Description

  1. Log into Phorge, go to http://phorge.localhost/maniphest/query/assigned/ and see that you have ZERO assigned tasks.
  2. Click "Use Results" and select "Export Data".
  3. In the "Export Results" dialog, keep default Format = csv and click "Download Data".
[2024-04-04 01:18:26] EXCEPTION: (Exception) Edge list passed to "withSourcePHIDs(...)" is empty, but it must be nonempty. at [<phorge>/src/infrastructure/edges/query/PhabricatorEdgeQuery.php:50]
  #0 <#2> PhabricatorEdgeQuery::withSourcePHIDs(array) called at [<phorge>/src/infrastructure/export/engine/PhabricatorProjectsExportEngineExtension.php:29]
  #1 <#2> PhabricatorProjectsExportEngineExtension::newExportData(array) called at [<phorge>/src/applications/search/engine/PhabricatorApplicationSearchEngine.php:1580]
  #2 <#2> PhabricatorApplicationSearchEngine::newExport(array) called at [<phorge>/src/infrastructure/export/engine/PhabricatorExportEngine.php:144]
  #3 <#2> PhabricatorExportEngine::exportFile() called at [<phorge>/src/applications/search/controller/PhabricatorApplicationSearchController.php:520]
  #4 <#2> PhabricatorApplicationSearchController::processExportRequest() called at [<phorge>/src/applications/search/controller/PhabricatorApplicationSearchController.php:80]
  #5 <#2> PhabricatorApplicationSearchController::processRequest() called at [<phorge>/src/aphront/AphrontController.php:29]
  #6 <#2> AphrontController::handleRequest(AphrontRequest) called at [<phorge>/src/aphront/AphrontController.php:71]
  #7 <#2> AphrontController::delegateToController(PhabricatorApplicationSearchController) called at [<phorge>/src/applications/maniphest/controller/ManiphestTaskListController.php:20]
  #8 <#2> ManiphestTaskListController::handleRequest(AphrontRequest) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:284]
  #9 phlog(Exception) called at [<phorge>/src/aphront/handler/PhabricatorDefaultRequestExceptionHandler.php:41]
  #10 PhabricatorDefaultRequestExceptionHandler::handleRequestThrowable(AphrontRequest, Exception) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:751]
  #11 AphrontApplicationConfiguration::handleThrowable(Exception) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:296]
  #12 AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:204]
  #13 AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]

(I don't know why people are doing this but they do. This is directly from our downstream error logs, after I checked the access logs how they got into this.)