Page MenuHomePhabricator

D20588.diff
No OneTemporary

D20588.diff

diff --git a/src/applications/repository/management/PhabricatorRepositoryManagementReparseWorkflow.php b/src/applications/repository/management/PhabricatorRepositoryManagementReparseWorkflow.php
--- a/src/applications/repository/management/PhabricatorRepositoryManagementReparseWorkflow.php
+++ b/src/applications/repository/management/PhabricatorRepositoryManagementReparseWorkflow.php
@@ -252,12 +252,24 @@
);
foreach ($classes as $class) {
- PhabricatorWorker::scheduleTask(
- $class,
- $spec,
- array(
- 'priority' => PhabricatorWorker::PRIORITY_IMPORT,
- ));
+ try {
+ PhabricatorWorker::scheduleTask(
+ $class,
+ $spec,
+ array(
+ 'priority' => PhabricatorWorker::PRIORITY_IMPORT,
+ ));
+ } catch (PhabricatorWorkerPermanentFailureException $ex) {
+ // See T13315. We expect some reparse steps to occasionally raise
+ // permanent failures: for example, because they are no longer
+ // reachable. This is a routine condition, not a catastrophic
+ // failure, so let the user know something happened but continue
+ // reparsing any remaining commits.
+ echo tsprintf(
+ "<bg:yellow>** %s **</bg> %s\n",
+ pht('WARN'),
+ $ex->getMessage());
+ }
}
$progress->update(1);

File Metadata

Mime Type
text/plain
Expires
Wed, Dec 25, 1:51 PM (10 h, 55 m)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
6926542
Default Alt Text
D20588.diff (1 KB)

Event Timeline