[wp-trac] [WordPress Trac] #37181: Use metadata api in *_network_options

WordPress Trac noreply at wordpress.org
Thu Jan 23 03:36:09 UTC 2025


#37181: Use metadata api in *_network_options
--------------------------------+-------------------------------------
 Reporter:  spacedmonkey        |       Owner:  spacedmonkey
     Type:  enhancement         |      Status:  closed
 Priority:  normal              |   Milestone:
Component:  Networks and Sites  |     Version:  4.4
 Severity:  normal              |  Resolution:  wontfix
 Keywords:  ms-roadmap          |     Focuses:  multisite, performance
--------------------------------+-------------------------------------
Changes (by spacedmonkey):

 * status:  reopened => closed
 * resolution:   => wontfix
 * milestone:  Future Release =>


Comment:

 Marking this ticket as wontfix.

 It was a valiant effort to use the metadata API for network options. It
 had a number of benefits and brings constancy to core code. However, using
 the metadata API has one mega downside: all network options are stored in
 a single cache key. This sadly has some serious downsides, including:

 - All network options are loaded on every page, even if they are not used,
 replicating the alloptions problems. Large network option would always be
 loaded into PHP memory.
 - All network options in one cache key is a problem for object caches that
 have a size limit per key like memcache of 1MB per key.
 - Having all options in one key can also make race conditions, where
 different requests updating different options, one last request can revert
 option values back to original states.


 For these reasons, I think this ticket should not go forward.

 Thanks everyone for working on this.

-- 
Ticket URL: <https://core.trac.wordpress.org/ticket/37181#comment:88>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform


More information about the wp-trac mailing list