Page MenuHomePhabricator

"debug.time-limit" no longer functions in PHP7
Open, WishlistPublic

Description

See PHI1786. Because declare(ticks=1) is no longer scoped, debug.time-limit can no longer install a global tick handler and no longer works. To reproduce this:

  • Set debug.time-limit to 10.
  • Put a sleep(15) on a page.
  • Run things under PHP 5 and get a useful stack trace.
  • Run things under PHP 7 and get a 15-second request that effectively ignores debug.time-limit.

I don't immediately see a way to support this behavior under PHP7, so it may be easiest to simply remove it.

Event Timeline

epriestley triaged this task as Wishlist priority.Jul 1 2020, 7:32 PM
epriestley created this task.

A sometimes-suitable replacement would be some bin/request mechanism which simulates a web request in process. There are some limits to how authentic this can be, but for some substantial subset of hangs it may still be useful.