Page MenuHomePhabricator

Update-after-commit possibly got mangled in diff-to-file change?
Closed, ResolvedPublic

Description

See D16464 to pick up the thread.

Event Timeline

This might actually something more narrowly scoped since, e.g., D16468, D16469, and D16470 worked fine.

bin/differential extract rPHU491ebc74d816dbe2fc8bbbbc992e8a14f8c613be also extracts the change correctly:

https://secure.phabricator.com/differential/diff/39628/

There's no changeset in the database, so this isn't just a weird permissions issue -- legitimately, no changeset was extracted.

Oh, this looks like a smoking gun:

Daemon 197443 STDE [Tue, 30 Aug 2016 14:06:40 +0000] [2016-08-30 14:06:40] ERROR 2: Illegal string offset 'filePHID' at [/core/lib/phabricator/src/applications/differential/engine/DifferentialDiffExtractionEngine.php:47]
Daemon 197443 STDE [Tue, 30 Aug 2016 14:06:40 +0000] arcanist(head=master, ref.master=9e82ef979e81), libcore(), phabricator(head=master, ref.master=c55de86f0ef0), phutil(head=master, ref.master=5fd1af8b4f2b), services(head=master, ref.master=7c8c3706a61b)
Daemon 197443 STDE [Tue, 30 Aug 2016 14:06:40 +0000]   #0 DifferentialDiffExtractionEngine::newDiffFromCommit(PhabricatorRepositoryCommit) called at [<phabricator>/src/applications/differential/engine/DifferentialDiffExtractionEngine.php:227]
Daemon 197443 STDE [Tue, 30 Aug 2016 14:06:40 +0000]   #1 DifferentialDiffExtractionEngine::updateRevisionWithCommit(DifferentialRevision, PhabricatorRepositoryCommit, array, PhabricatorDaemonContentSource) called at [<phabricator>/src/applications/repository/worker/commitmessageparser/PhabricatorRepositoryCommitMessageParserWorker.php:243]
Daemon 197443 STDE [Tue, 30 Aug 2016 14:06:40 +0000]   #2 PhabricatorRepositoryCommitMessageParserWorker::updateCommitData(DiffusionCommitRef) called at [<phabricator>/src/applications/repository/worker/commitmessageparser/PhabricatorRepositoryCommitMessageParserWorker.php:42]
Daemon 197443 STDE [Tue, 30 Aug 2016 14:06:40 +0000]   #3 PhabricatorRepositoryCommitMessageParserWorker::parseCommit(PhabricatorRepository, PhabricatorRepositoryCommit) called at [<phabricator>/src/applications/repository/worker/PhabricatorRepositoryCommitParserWorker.php:51]
Daemon 197443 STDE [Tue, 30 Aug 2016 14:06:40 +0000]   #4 PhabricatorRepositoryCommitParserWorker::doWork() called at [<phabricator>/src/infrastructure/daemon/workers/PhabricatorWorker.php:122]
Daemon 197443 STDE [Tue, 30 Aug 2016 14:06:40 +0000]   #5 PhabricatorWorker::executeTask() called at [<phabricator>/src/infrastructure/daemon/workers/storage/PhabricatorWorkerActiveTask.php:171]
Daemon 197443 STDE [Tue, 30 Aug 2016 14:06:40 +0000]   #6 PhabricatorWorkerActiveTask::executeTask() called at [<phabricator>/src/infrastructure/daemon/workers/PhabricatorTaskmasterDaemon.php:22]
Daemon 197443 STDE [Tue, 30 Aug 2016 14:06:40 +0000]   #7 PhabricatorTaskmasterDaemon::run() called at [<phutil>/src/daemon/PhutilDaemon.php:184]
Daemon 197443 STDE [Tue, 30 Aug 2016 14:06:40 +0000]   #8 PhutilDaemon::execute() called at [<phutil>/scripts/daemon/exec/exec_daemon.php:127]
Daemon 197443 STDE [Tue, 30 Aug 2016 14:06:40 +0000] [2016-08-30 14:06:40] EXCEPTION: (PhutilProxyException) Error while executing Task ID 1932072. {>} (Exception) Failed to load file ("d") returned by "diffusion.rawdiffquery". at [<phabricator>/src/applications/differential/engine/DifferentialDiffExtractionEngine.php:53]
Daemon 197443 STDE [Tue, 30 Aug 2016 14:06:40 +0000] arcanist(head=master, ref.master=9e82ef979e81), libcore(), phabricator(head=master, ref.master=c55de86f0ef0), phutil(head=master, ref.master=5fd1af8b4f2b), services(head=master, ref.master=7c8c3706a61b)
Daemon 197443 STDE [Tue, 30 Aug 2016 14:06:40 +0000]   #0 <#2> DifferentialDiffExtractionEngine::newDiffFromCommit(PhabricatorRepositoryCommit) called at [<phabricator>/src/applications/differential/engine/DifferentialDiffExtractionEngine.php:227]
Daemon 197443 STDE [Tue, 30 Aug 2016 14:06:40 +0000]   #1 <#2> DifferentialDiffExtractionEngine::updateRevisionWithCommit(DifferentialRevision, PhabricatorRepositoryCommit, array, PhabricatorDaemonContentSource) called at [<phabricator>/src/applications/repository/worker/commitmessageparser/PhabricatorRepositoryCommitMessageParserWorker.php:243]
Daemon 197443 STDE [Tue, 30 Aug 2016 14:06:40 +0000]   #2 <#2> PhabricatorRepositoryCommitMessageParserWorker::updateCommitData(DiffusionCommitRef) called at [<phabricator>/src/applications/repository/worker/commitmessageparser/PhabricatorRepositoryCommitMessageParserWorker.php:42]
Daemon 197443 STDE [Tue, 30 Aug 2016 14:06:40 +0000]   #3 <#2> PhabricatorRepositoryCommitMessageParserWorker::parseCommit(PhabricatorRepository, PhabricatorRepositoryCommit) called at [<phabricator>/src/applications/repository/worker/PhabricatorRepositoryCommitParserWorker.php:51]
Daemon 197443 STDE [Tue, 30 Aug 2016 14:06:40 +0000]   #4 <#2> PhabricatorRepositoryCommitParserWorker::doWork() called at [<phabricator>/src/infrastructure/daemon/workers/PhabricatorWorker.php:122]
Daemon 197443 STDE [Tue, 30 Aug 2016 14:06:40 +0000]   #5 <#2> PhabricatorWorker::executeTask() called at [<phabricator>/src/infrastructure/daemon/workers/storage/PhabricatorWorkerActiveTask.php:171]
Daemon 197443 STDE [Tue, 30 Aug 2016 14:06:40 +0000]   #6 <#2> PhabricatorWorkerActiveTask::executeTask() called at [<phabricator>/src/infrastructure/daemon/workers/PhabricatorTaskmasterDaemon.php:22]
Daemon 197443 STDE [Tue, 30 Aug 2016 14:06:40 +0000]   #7 PhabricatorTaskmasterDaemon::run() called at [<phutil>/src/daemon/PhutilDaemon.php:184]
Daemon 197443 STDE [Tue, 30 Aug 2016 14:06:40 +0000]   #8 PhutilDaemon::execute() called at [<phutil>/scripts/daemon/exec/exec_daemon.php:127]
Daemon 197443 FAIL [Tue, 30 Aug 2016 14:06:40 +0000] Process exited with error 255.

Yeah, I just neglected to push secure002 when I pushed secure001. I'll fix this shortly.

I've updated both hosts and manually fixed D16464 to display the correct changes.