Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

[stable27] preserve websocket provider queue during reconnects #5151

Merged
merged 6 commits into from Dec 21, 2023

Conversation

max-nextcloud
Copy link
Collaborator

During a network disconnect
Yjs-websocket notices missing awareness messages and closes the connection.
In this case the remaining steps can also not be send out and the request fails.
Preserve the queue so we can use it once the network is back up.

Signed-off-by: Max <max@nextcloud.com>
When yjs does not receive awareness updates
it will close and reopen the websocket.
Keep the content of the queue, i.e. the outgoing steps
so they can be send out once the connection is back.

Signed-off-by: Max <max@nextcloud.com>
Change the content of `queue` with `queue.splice`
rather than setting `queue` to another array.

Signed-off-by: Max <max@nextcloud.com>
Also add a unit test for the websocket polyfill

Signed-off-by: Max <max@nextcloud.com>
avoids the old provider leaking error events.

Signed-off-by: Max <max@nextcloud.com>
@max-nextcloud
Copy link
Collaborator Author

/backport to stable26

@max-nextcloud
Copy link
Collaborator Author

/compile

Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
@max-nextcloud
Copy link
Collaborator Author

We will need to investigate the sync spec failure in cypress. That might be related.

@juliushaertl
Copy link
Member

I know one is also sometimes failing on other branches, but would be good to check, yes :)

@max-nextcloud
Copy link
Collaborator Author

I know one is also sometimes failing on other branches, but would be good to check, yes :)

grafik
Looks like it's been failing quite consistently on stable27 for a while now.

@max-nextcloud
Copy link
Collaborator Author

The failures look exactly the same as before. Opened #5154 to investigate further. Let's move on with this.

@juliushaertl juliushaertl added bug Something isn't working 4. to release labels Dec 21, 2023
@juliushaertl juliushaertl merged commit 367d593 into stable27 Dec 21, 2023
23 of 25 checks passed
@juliushaertl juliushaertl deleted the backport/5126/stable27 branch December 21, 2023 09:22
@backportbot-nextcloud
Copy link

The backport to stable26 failed. Please do this backport manually.

# Switch to the target branch and update it
git checkout stable26
git pull origin stable26

# Create the new backport branch
git checkout -b fix/foo-stable26

# Cherry pick the change from the commit sha1 of the change against the default branch
# This might cause conflicts. Resolve them.
git cherry-pick abc123

# Push the cherry pick commit to the remote repository and open a pull request
git push origin fix/foo-stable26

Error: Unknown error

More info at https://docs.nextcloud.com/server/latest/developer_manual/getting_started/development_process.html#manual-backport

@juliushaertl
Copy link
Member

@max-nextcloud Can you check the backport to 26?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
4. to release bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants