[wp-trac] [WordPress Trac] #64696: Real time collboration effectively disables persistent post caches while anyone edits a post

WordPress Trac noreply at wordpress.org
Mon Feb 23 03:35:51 UTC 2026


#64696: Real time collboration effectively disables persistent post caches while
anyone edits a post
-------------------------------+--------------------------
 Reporter:  peterwilsoncc      |       Owner:  (none)
     Type:  defect (bug)       |      Status:  new
 Priority:  normal             |   Milestone:  7.0
Component:  Posts, Post Types  |     Version:  trunk
 Severity:  normal             |  Resolution:
 Keywords:                     |     Focuses:  performance
-------------------------------+--------------------------

Comment (by peterwilsoncc):

 Replying to [comment:1 dd32]:
 > For discussion purposes, How much does this differ from the previous
 behaviour?
 >
 > I believe the previous editor / post-locking heartbeat also resulted in
 a post edit, but I recall that being every 30-60 seconds instead of almost
 every second.

 Heartbeat:
 - fires every ten seconds
 - throttles to two minutes once the browser loses focus, via the
 visibility API
 - throttles to two minutes if the browser has focus but there's no
 mouse/keyboard activity for five minutes
 - suspends itself after ten minutes if suspension is enabled; suspends
 itself after sixty minutes if suspension is disabled

 RTC:
 - fires once per second without collaborators active
 - fires four times per second with collaborators active
 - will back off due to network errors, once a network request succeeds it
 will go back up to full speed
 - doesn't slow down if the browser window loses focus
 - I can't find any code indicating a slow down due to a lack of activity,
 I've had a browser window open in the background for around ten minutes
 while typing this and it's still firing each second

 Replying to [comment:2 westonruter]:
 > To work around this, we could temporarily unhook these when the post
 meta is added or updated:

 That will end up breaking the cache for `WP_Queries` using meta queries,
 eg `WP_Query( [ 'meta_key' => 'looney_tunes', 'meta_value' => 'tom and
 jerry' ] );`.

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


More information about the wp-trac mailing list