Page MenuHomePhabricator

Broken migration: phabricator:20140521.projectslug.2.mig.php
Closed, ResolvedPublic

Description

Super-old installs that try to upgrade from before May 2014 to after Dec 2015 (D14825) and have projects will get an error about Bad getter call: getPhrictionSlug.

EXCEPTION: (Exception) Bad getter call: getPhrictionSlug at [<phabricator>/src/infrastructure/storage/lisk/LiskDAO.php:1746]
arcanist(head=master, ref.master=fad85844314b), phabricator(head=master, ref.master=e077d2f7a79a), phutil(head=master, ref.master=5ac2ca121489)
  #0 LiskDAO::call(string, array) called at [<phabricator>/src/infrastructure/storage/lisk/LiskDAO.php:1724]
  #1 PhabricatorProject::getPhrictionSlug() called at [<phabricator>/resources/sql/autopatches/20140521.projectslug.2.mig.php:14]
  #2 require_once(string) called at [<phabricator>/src/infrastructure/storage/management/PhabricatorStorageManagementAPI.php:285]
  #3 PhabricatorStorageManagementAPI::applyPatchPHP(string) called at [<phabricator>/src/infrastructure/storage/management/PhabricatorStorageManagementAPI.php:241]
  #4 PhabricatorStorageManagementAPI::applyPatch(PhabricatorStoragePatch) called at [<phabricator>/src/infrastructure/storage/management/workflow/PhabricatorStorageManagementWorkflow.php:1093]
  #5 PhabricatorStorageManagementWorkflow::doUpgradeSchemata(array, NULL, boolean, boolean) called at [<phabricator>/src/infrastructure/storage/management/workflow/PhabricatorStorageManagementWorkflow.php:840]
  #6 PhabricatorStorageManagementWorkflow::upgradeSchemata(array, NULL, boolean, boolean) called at [<phabricator>/src/infrastructure/storage/management/workflow/PhabricatorStorageManagementUpgradeWorkflow.php:78]
  #7 PhabricatorStorageManagementUpgradeWorkflow::didExecute(PhutilArgumentParser) called at [<phabricator>/src/infrastructure/storage/management/workflow/PhabricatorStorageManagementWorkflow.php:107]
  #8 PhabricatorStorageManagementWorkflow::execute(PhutilArgumentParser) called at [<phutil>/src/parser/argument/PhutilArgumentParser.php:438]
  #9 PhutilArgumentParser::parseWorkflowsFull(array) called at [<phutil>/src/parser/argument/PhutilArgumentParser.php:330]
  #10 PhutilArgumentParser::parseWorkflows(array) called at [<phabricator>/scripts/sql/manage_storage.php:249]

Event Timeline

(the revision number is in ` because I got an exception trying to attach the mention, I guess)

Attempting to access attached data on DifferentialRevision (via getReviewerStatus()), but the data is not actually attached. Before accessing attachable data on an object, you must load and attach it.

Data is normally attached by calling the corresponding needX() method on the Query class when the object is loaded. You can also call the corresponding attachX() method explicitly.
Stack trace:
PhabricatorLiskDAO::assertAttached called at [/core/lib/phabricator/src/applications/differential/storage/DifferentialRevision.php:403]
DifferentialRevision::getReviewerStatus called at [/core/lib/phabricator/src/applications/differential/xaction/DifferentialRevisionReviewersTransaction.php:9]
DifferentialRevisionReviewersTransaction::generateOldValue called at [/core/lib/phabricator/src/applications/differential/xaction/DifferentialRevisionReviewersTransaction.php:293]
DifferentialRevisionReviewersTransaction::validateTransactions called at [/core/lib/phabricator/src/applications/transactions/editor/PhabricatorApplicationTransactionEditor.php:2076]
PhabricatorApplicationTransactionEditor::validateTransaction called at [/core/lib/phabricator/src/applications/differential/editor/DifferentialTransactionEditor.php:795]
DifferentialTransactionEditor::validateTransaction called at [/core/lib/phabricator/src/applications/transactions/editor/PhabricatorApplicationTransactionEditor.php:837]
PhabricatorApplicationTransactionEditor::applyTransactions called at [/core/lib/phabricator/src/applications/transactions/editor/PhabricatorApplicationTransactionEditor.php:3334]
PhabricatorApplicationTransactionEditor::applyInverseEdgeTransactions called at [/core/lib/phabricator/src/applications/transactions/editor/PhabricatorApplicationTransactionEditor.php:696]
PhabricatorApplicationTransactionEditor::applyBuiltinExternalTransaction called at [/core/lib/phabricator/src/applications/transactions/editor/PhabricatorApplicationTransactionEditor.php:613]
PhabricatorApplicationTransactionEditor::applyExternalEffects called at [/core/lib/phabricator/src/applications/transactions/editor/PhabricatorApplicationTransactionEditor.php:975]
PhabricatorApplicationTransactionEditor::applyTransactions called at [/core/lib/phabricator/src/applications/transactions/editengine/PhabricatorEditEngine.php:1001]
PhabricatorEditEngine::buildEditResponse called at [/core/lib/phabricator/src/applications/transactions/editengine/PhabricatorEditEngine.php:896]
PhabricatorEditEngine::buildResponse called at [/core/lib/phabricator/src/applications/maniphest/controller/ManiphestTaskEditController.php:13]
ManiphestTaskEditController::handleRequest called at [/core/lib/phabricator/src/aphront/configuration/AphrontApplicationConfiguration.php:269]
phlog called at [/core/lib/phabricator/src/aphront/handler/PhabricatorDefaultRequestExceptionHandler.php:41]
PhabricatorDefaultRequestExceptionHandler::handleRequestException called at [/core/lib/phabricator/src/aphront/configuration/AphrontApplicationConfiguration.php:678]
AphrontApplicationConfiguration::handleException called at [/core/lib/phabricator/src/aphront/configuration/AphrontApplicationConfiguration.php:274]
AphrontApplicationConfiguration::processRequest called at [/core/lib/phabricator/src/aphront/configuration/AphrontApplicationConfiguration.php:181]
AphrontApplicationConfiguration::runHTTPRequest called at [/core/lib/phabricator/webroot/index.php:17]