Ticket #5718 (closed defect (bug): fixed)

Opened 4 years ago

Last modified 4 years ago

add_post_meta sets incorrect cache

Reported by: nbachiyski Owned by: anonymous
Priority: normal Milestone: 2.5
Component: General Version:
Severity: normal Keywords: cache has-patch
Cc: rubys

Description

Desired: after calling add_post_meta the post_meta cache should be either non-existant or correct.

Actual: if post_meta cache doesn't exist for this post, add_post_meta will put the added pair and set it as the new cache.

Steps to reproduce: call update_post_meta, which deletes the post_meta cache and then call add_post_meta. The cache won't contain the updated value, only the added one.

Proposed solution: the cleanest way is to make add_post_meta delete the cache, so that the next read operation will rebuild it. Patch attached.

As a side thought: probably we can make all these function just update the cache, so that it is rebuilt only once.

Attachments

add_post_meta-cache-corruption.diff Download (803 bytes) - added by nbachiyski 4 years ago.

Change History

comment:1   ryan4 years ago

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

(In [6654]) Clear post_meta cache upon change. Props nbachiyski. fixes #5718

  • Status changed from closed to reopened
  • Resolution fixed deleted

This change causes APE to fail with "Call to undefined function wp_delete_cache".

 http://intertwingly.net/stories/2007/11/ape/report.html#dia-10

(I hope reopening the defect is the appropriate protocol for this type of thing, if not, please let me know)

  • Cc rubys added

comment:4   ryan4 years ago

  • Status changed from reopened to closed
  • Resolution set to fixed

Fixed by [6657]

Note: See TracTickets for help on using tickets.