Page MenuHomePhabricator

When a command is killed by a timeout, make the human-readable error more clear
ClosedPublic

Authored by epriestley on Nov 16 2018, 5:11 PM.
Tags
None
Referenced Files
F19152073: D19815.id47323.diff
Thu, Dec 11, 12:28 AM
F19151787: D19815.id47323.diff
Wed, Dec 10, 10:45 PM
F19082867: D19815.id47326.diff
Tue, Dec 2, 12:26 PM
F18984974: D19815.id47323.diff
Nov 17 2025, 12:49 PM
F18877598: D19815.id.diff
Nov 6 2025, 10:56 AM
F18873274: D19815.diff
Nov 5 2025, 8:52 AM
F18830985: D19815.id47326.diff
Oct 25 2025, 10:01 AM
F18789253: D19815.id47323.diff
Oct 15 2025, 8:46 AM
Subscribers
None

Details

Summary

Ref T13216. When we kill commands ourself because they exceed their time limit, it isn't always clear what happened. The error code (137 = kill, 143 = term) is usually a good hint if you know exactly what you're looking for, but this is totally non-obvious to anyone who isn't very familiar with the internals.

Instead, check if we killed the subprocess and make it clear what happened in the error message.

Test Plan
2018-11-16 9:07:53 AM [STDE] [2018-11-16 09:07:52] EXCEPTION: (PhutilProxyException) Task "138492" encountered a permanent failure and was cancelled. {>} (PhabricatorWorkerPermanentFailureException) Permanent failure while activating resource ("PHID-DRYR-bv5p57tk5y7vcqonrgj3"): Command killed by timeout after running for more than 0.001 seconds.

Diff Detail

Repository
rPHU libphutil
Lint
Lint Not Applicable
Unit
Tests Not Applicable