[wp-trac] [WordPress Trac] #22191: In update_metadata(), compare old/new values before deciding whether to call add_metadata()
WordPress Trac
wp-trac at lists.automattic.com
Mon Oct 15 03:14:38 UTC 2012
#22191: In update_metadata(), compare old/new values before deciding whether to
call add_metadata()
--------------------------+------------------
Reporter: nacin | Owner:
Type: defect (bug) | Status: new
Priority: normal | Milestone: 3.5
Component: Performance | Version:
Severity: normal | Resolution:
Keywords: has-patch |
--------------------------+------------------
Description changed by nacin:
Old description:
> In update_metadata(), we query for a meta_id of an existing key. If it
> exists, we continue. If we get nothing back, we call add_metadata().
>
> We also compare the old value with the new value, and if they are the
> same, we bail.
>
> Since that old value is from cache, it is possible for update_metadata()
> to not run a single query on its own if there is nothing to update. Only,
> we do, because we do the meta_id query first.
>
> We should do the meta_id query second. This is the same pattern used by
> update_option().
>
> Related: #22191, the strict type comparison causes false negatives.
New description:
In update_metadata(), we query for a meta_id of an existing key. If it
exists, we continue. If we get nothing back, we call add_metadata().
We also compare the old value with the new value, and if they are the
same, we bail.
Since that old value is from cache, it is possible for update_metadata()
to not run a single query on its own if there is nothing to update. Only,
we do, because we do the meta_id query first.
We should do the meta_id query second. This is the same pattern used by
update_option().
Related: #22192, the strict type comparison causes false negatives.
--
--
Ticket URL: <http://core.trac.wordpress.org/ticket/22191#comment:1>
WordPress Trac <http://core.trac.wordpress.org/>
WordPress blogging software
More information about the wp-trac
mailing list