You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The explainer says "Each frame must, however, run all pending joins and leaves for a single owner in the order in which they were made. Same-origin operations should be applied immediately." Each attempts to make sure that the last 20 cross-origin operations at least make it to the browser process (though there are potential races with closing the frame, since the pipe to send those messages is frame-scoped, but a different pipe from navigations).
Currently, there are separate cross-origin join and leave queues (with a new clear queue for #829), with no interaction between them.
We merge the queues into one and make the spec more explicit about there being single a queue for all operations, or have the explainer allow multiple queues. We could also try to modify the queuing mechanism to have separate queues but not allow joins/leaves from the same origin across queues to jump in front of each other, but I think that just gets too complicated.
We should also add mention of clearOriginJoinedInterestGroups in the queuing description. I'm not adding that to #829, because I think we want to resolve this issue before/while adding in mention of the new method.
Note that changing queuing behavior could theoretically be a breaking change for some consumers, though I hope nothing has ossified so much as to strongly depend on current behavior yet.
The text was updated successfully, but these errors were encountered:
MattMenke2
changed the title
Join/Leave request ordering is inaccurate.
Join/Leave request ordering details in explainer are inaccurate.
Sep 29, 2023
The explainer says "Each frame must, however, run all pending joins and leaves for a single owner in the order in which they were made. Same-origin operations should be applied immediately." Each attempts to make sure that the last 20 cross-origin operations at least make it to the browser process (though there are potential races with closing the frame, since the pipe to send those messages is frame-scoped, but a different pipe from navigations).
Currently, there are separate cross-origin join and leave queues (with a new clear queue for #829), with no interaction between them.
We merge the queues into one and make the spec more explicit about there being single a queue for all operations, or have the explainer allow multiple queues. We could also try to modify the queuing mechanism to have separate queues but not allow joins/leaves from the same origin across queues to jump in front of each other, but I think that just gets too complicated.
We should also add mention of clearOriginJoinedInterestGroups in the queuing description. I'm not adding that to #829, because I think we want to resolve this issue before/while adding in mention of the new method.
Note that changing queuing behavior could theoretically be a breaking change for some consumers, though I hope nothing has ossified so much as to strongly depend on current behavior yet.
The text was updated successfully, but these errors were encountered: