Skip to content

Question: how to create an RGA CRDT on server #1

@dansteingart

Description

@dansteingart

Many thanks for sharing this clean and lightweight RGA example, I've learned much about CRDT by playing with it. I've implemented it in the beta branch of http://github.com/dansteingart/pithy, and it's working quite well. What i'm about to describe below is likely obvious to those practiced in CRDT, so thank you in advance for your patience.

There's a set of edges case (I guess a surface?) where history request conflicts with an initial load of data from the sever, I think it's because the clients are using RGA but the server is not. Thus, the standard GET/POST I'm using to read and write data is sometimes in a race condition with the client CRDT. Is there a simple way to implement an RGA point on server from which the data store is served/written so I can avoid this other pathway?

I've checked out y.js and other libraries that seem to do this, but it's buried under the hood and I'd like to avoid the code bloat and bundling overhead these other libraries introduce.

Thanks for your time.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions