← Back to context

Comment by revengeduck

3 hours ago

This looks cool! Curious, how does this compare to https://github.com/superfly/corrosion?

Yes explored that path too with CRDTs.

- DDL gets really tricky in these cases, that's why you see Corrosion has this weird file based system. - cr-sqlite ain't maintained anymore but I did some benchmarks and if I remember correctly it was as slow as 4x-8x depending upon type of your data & load. Storage bloats by 2x-3x, tombstones accumulate pretty fast as well.

I mean each mutation on every column looks something like:

table, pk, cid, val, col_version, db_version, site_id, cl, seq

Overall I dropped the idea after spending month or two on it.

  • Very helpful hearing about your own similar experiments with CRDTs. As a followup I'd be interested in more direct comparison between Marmot and Corrosion in terms of features/performance, since they both serve a similar use case and Corrosion seems to have worked through some of the CRDT issues you mentioned.