Make WordPress Core

Opened 4 weeks ago

Last modified 11 days ago

#63450 new defect (bug)

Race condition for transient with no expiration and object cache active

Reported by: hugod's profile hugod Owned by:
Milestone: 6.9 Priority: normal
Severity: normal Version:
Component: Cache API Keywords: has-patch
Focuses: Cc:

Description

When object cache is installed and is temporarily unavailable, transient values with no expiration can be obsolete.

Here is a scenario:

If some major feature depends on this transient (e.g. rewrite rules), it can lead to weird behaviors that are hard to debug.
For the record, we encountered such a bug in Polylang ([see]https://github.com/polylang/polylang/pull/1653).

Change History (2)

This ticket was mentioned in PR #8826 on WordPress/wordpress-develop by @hugod.


3 weeks ago
#1

  • Keywords has-patch added

As per the title, force deletion or creation of the transient in wp_options table when object cache is active.
Preventing race condition between object cache and wp_options table for a transient without expiration.

Trac ticket: https://core.trac.wordpress.org/ticket/63450

#2 @audrasjb
2 weeks ago

  • Milestone changed from Awaiting Review to 6.9

Thanks for the report and patch, moving this for 6.9 consideration.

Note: See TracTickets for help on using tickets.