Make WordPress Core

Opened 11 years ago

Closed 9 years ago

Last modified 9 years ago

#26676 closed defect (bug) (duplicate)

When upgrading code, object (or DB?) cache holds on to old versions

Reported by: ipstenu's profile Ipstenu Owned by:
Milestone: Priority: normal
Severity: normal Version: 3.5.2
Component: Upgrade/Install Keywords: needs-patch
Focuses: Cc:

Description

This is NOT a 3.8 bug, as I've seen it before, but now it's a little more prevalent. In seaching for enough forum posts, I tracked it all the way back to 3.5...

Scenario: You have object caching (APC, memecached, whatever) and when you upgrade via the UI, all the files get correctly downloaded -however- WP gets 'stuck' on a wrong screen. For example, one user was stuck on 'Your DB upgrade is complete' while another kept being told that 3.8 was ready to be installed, even though he'd already done it. In all cases, the files were verifiably WP 3.8, and it was just the cache being 'greedy' on the UI.

In all cases, flushing the server-side cache resolved the issues.

Caching Plugins: Of course this only happened with a site using a caching plugin, but it was not the same one. Batcache and Memcached Redux were the two I spotted.

Links:

Change History (8)

#1 @SergeyBiryukov
11 years ago

  • Component changed from General to Cache

#2 @dd32
11 years ago

This may be related to #26173. It may even be a total duplicate in the end.

That ticket lead to a big discovery (to me) though, some object caches ignore the flush command and since the DB upgrade step sets WP_INSTALLING which results in NOT updating the option values in the object cache, as it's relying upon the flush command.
The end result was that the DB version option in memory would always be out of date - This was fixed by specifically deleting the options cache rather than relying upon the flush.

The symptoms described and the threads linked, could vary between incomplete upgrades, and the above issue.

#3 @Ipstenu
11 years ago

May as well tack on the weirdness where the admin styles didn't get flushed either thanks to object caching (that is someone with memcached had to flush cache to make Dashicons show up). I have a feeling it's all related.

#4 @Ipstenu
11 years ago

Just had this on trunk:

https://cloudup.com/cYpGVWkG5Re

Flushing the cache (in my case today, Memcached) manually works.

#5 @wonderboymusic
11 years ago

  • Keywords needs-patch needs-unit-tests added
  • Milestone changed from Awaiting Review to 3.9

#6 @nacin
10 years ago

  • Component changed from Cache API to Upgrade/Install
  • Keywords needs-unit-tests removed
  • Milestone changed from 3.9 to Awaiting Review

There's little indication of what what we need to fix here beyond #26173.

#7 @Ipstenu
9 years ago

  • Resolution set to duplicate
  • Status changed from new to closed

Duplicate of #27669.

Technically 27669 is the dupe as it's older, but it's the same issue.

#8 @SergeyBiryukov
9 years ago

  • Milestone Awaiting Review deleted
Note: See TracTickets for help on using tickets.