Make WordPress Core

Opened 8 years ago

Closed 8 years ago

Last modified 7 years ago

#46066 closed enhancement (invalid)

Only pause plugins/themes for persistent errors

Reported by: schlessera Owned by:
Priority: normal Milestone:
Component: Site Health Version: 5.1
Severity: normal Keywords: has-patch servehappy
Cc: Focuses:

Description

To avoid pausing plugins/themes through the fatal error protection because of random one-off errors, we should do a redirect first and see whether the error persists. If not, there's no need to pause the plugin/theme, it was just a temporary issue.

This ties into #45940, as it will further reduce the amount of pausing that we do.

Attachments (1)

46066.diff​ (6.8 KB ) - added by schlessera 8 years ago.

Download all attachments as: .zip

Change History (10)

@schlessera
8 years ago

#1 @schlessera
8 years ago

This first patch changes the 'error' array that we store into a 'record' array that contains both the 'error' and a 'count'.

There's a define WP_FATAL_ERROR_PROTECTION_REDIRECT_THRESHOLD that defaults to 2.

A plugin/theme is only paused if the consecutive count of the same error happening after redirects reaches said threshold.

To discuss:

  • Do we need such a constant?
  • Do we need to count the number of redirects and make sure we're not doing an infinite loop?

#2 @flixos90
8 years ago

  • Keywords servehappy added

This ticket was mentioned in ​Slack in #core-php by schlessera. ​View the logs.


8 years ago

#4 @flixos90
8 years ago

  • Milestone 5.1 → 5.2

#5 @flixos90
8 years ago

  • Priority high → normal

This ticket was mentioned in ​Slack in #core-php by schlessera. ​View the logs.


8 years ago

#7 @flixos90
8 years ago

  • Milestone 5.2 → 5.3

#8 @flixos90
8 years ago

  • Milestone 5.3
  • Resolution → invalid
  • Status new → closed

This ticket is based on the old fatal error recovery mode implementation and will be covered as part of #46130.

#9 @spacedmonkey
7 years ago

  • Component Bootstrap/Load → Site Health
Note: See TracTickets for help on using tickets.