Open NerdyBoyCool opened 10 months ago
@eliias I would be glad to get your opinion on this issue.
Hm… can't tell from the video. It would be good to log incoming messages on the server? There are two possible places where this could get lost, before transmitting from the client to server, and before storing to e.g., Redis on the server. I have definitely worked with bigger chunks of text than this before.
LocalStorage
or other persistence mechanisms, and the client would retry the broadcast up until its successful.Has any more investigation into this been done? I am experiencing the same issues.
Has any more investigation into this been done? I am experiencing the same issues.
@PragmaFlow I don't have any plans to actively work on yrb-actioncable
for the time being. I am willing to guide anyone through the process of fixing things though.
@eliias I think this would be a great addition to the rails community. Can you help me run the project? I would like to where can I being.
@eliias I think this would be a great addition to the rails community. Can you help me run the project? I would like to where can I being.
@jeygeethan We (y-crdt) happily welcome contributors, and I am willing to support, review, and merge PRs. If you have a specific project in mind, just let me know, and we can discuss that (https://calendly.com/iv-call/30min), or feel free to pick up any of the issues from here.
The current state of the gem is more a proof of concept and I personally did never use in a production environment, so there is lots of work to just make it production read. It would be great if you are actually using it in one of our projects.
That said, the most interesting piece of work is getting “Reliable sync” done, which is pretty much a rewrite of everything. There is a WIP PR for this https://github.com/y-crdt/yrb-actioncable/blob/42b0c5f8dc229aef0918ca32d0b801dee8039354/docs/reliable.md, and a related issue for the client https://github.com/y-crdt/yrb-actioncable/issues/25.
Thanks for developing a great gem. And thanks for answering some of my previous questions.
We have been using this gem for the past few months as a beta version and have found cases where messages are lost under certain conditions.
First, some information about our environment: Ruby on Rails: 7.0.4 Ruby: 3.2.1 Backend Data Source: Redis Frontend Frame Work: Next.js (We use y-actioncable npm package in app.)
Our scripts. For debug, I put some loggers.
https://github.com/y-crdt/yrb-actioncable/assets/18161095/50d51a1c-b978-482f-a9e5-391e3aa07cf3
In the video above, the message is saved correctly for normal input, but after a large amount of input, it is lost after the page is reloaded. (Lines of text beginning with "e" are missing.)
Could https://github.com/y-crdt/yrb-actioncable/issues/25 be related to this issue?
If you want any information to understand the issue, please let us know. Thank for reading.