Commit graph

51 commits

Author SHA1 Message Date
leeeon233
70b3126d79 chore: rebase main 2022-12-13 23:02:32 +08:00
leeeon233
2fb675f145 chore: clean file 2022-12-13 23:02:32 +08:00
leeeon233
48d784bcd1 feat: add map state snapshot 2022-12-13 23:01:17 +08:00
Zixuan Chen
83af4d07eb
Merge pull request #44 from loro-dev/feat-wasm-encode
Feat: wasm encode
2022-12-13 16:34:54 +08:00
Zixuan Chen
68bd7179c4
Perf remove string pool mutex (#41)
This is based on append-only-bytes. It allows us to share str data in a lock-free way. The downside of this method is it tends to use more memory
2022-12-09 17:22:33 +08:00
Zixuan Chen
a24e284fba fix: hierarchy notify 2022-12-09 10:46:55 +08:00
Zixuan Chen
594b60dafb
Perf store cache in parent node (#36)
* refactor: make internal and leaf use same type of cache

* refactor: add cache update

* test : add normalization to arb test

* test: fuzz

* fix: internal insert bug

* fix: missing utf16

* test: fix test sub overflow

* feat: use heapless for binary heap

* refactor: refine warning

* test: reduce test time

* perf: reduce computation when finding pos

* bench: fix ignore parse time in benching

* feat: make it compile in new sig (should be merged)

* fix: type err

* fix: fix type err

* fix: cache when merge & borrow

* refactor: simplify code

* fix: cumulated tree trait bug

* fix: a few fatal bugs (still buggy)

* fix: global tree trait

* refactor: rm an unused fn

* fix: insert at cursor bug

* fix: in cursor insert cache may be invalid

strip the checker there

* chore: remove needless check

* refactor: add inline to methods

* test: remove cfg=mem for mem example

* fix: type err
2022-12-06 16:34:46 +08:00
Zixuan Chen
f757b86f5c
Fix: unsound (violate borrow stack rules) bugs detected by Miri (#32)
* fix: borrow stack bugs exposed by miri

* fix: use context to track notify when integrating

* fix: miri bugs

* fix: borrow stack bugs

* fix: set range miri err
2022-12-06 16:05:58 +08:00
Zixuan Chen
ff187d967e chore: fix lockfile 2022-12-06 15:59:14 +08:00
Zixuan Chen
439e605388 Merge branch 'main' into feat-encode-update 2022-12-06 15:58:28 +08:00
Zixuan Chen
e3b420e41c chore: add tracing dep 2022-12-06 15:37:57 +08:00
Zixuan Chen
9efc6749ef chore: add tracing dep 2022-11-30 23:57:00 +08:00
Zixuan Chen
d3a0d10b12 feat: encode updates 2022-11-30 23:55:58 +08:00
Zixuan Chen
16dd4c7182 fix: apply effects order 2022-11-28 17:24:14 +08:00
leeeon233
cc129ee753 feat: expose ContainerID 2022-11-23 19:49:39 +08:00
leeeon233
e124bbbec1 fix: wasm interface 2022-11-23 19:49:39 +08:00
leeeon233
42ded24721 chore: add panic hook 2022-11-23 19:49:39 +08:00
Zixuan Chen
780f756450 fix: remove unknown type on content 2022-11-21 20:30:20 +08:00
Zixuan Chen
3e2d03fe1e test: add list containers bench 2022-11-18 00:37:07 +08:00
leeeon233
a65d4f06b6 chore: rename columnar 2022-11-17 16:26:53 +08:00
leeeon233
2c004980ee chore: columnar dependency use git path 2022-11-17 11:49:32 +08:00
leeeon233
f468e3b57b fix: encode when only create container but no op 2022-11-16 17:01:03 +08:00
leeeon233
5969f92b87 feat: add encode
Co-authored-by: Zixuan Chen <me@zxch3n.com>
2022-11-14 18:42:16 +08:00
Zixuan Chen
886c1cdd4a fix: fix several issues detected by fuzzer 2022-11-12 21:30:00 +08:00
Zixuan Chen
fc41f0fa1b refactor: move reg inside log store 2022-11-11 16:18:13 +08:00
Zixuan Chen
c50fd45d1d refactor: use dashmap in container manager
Co-authored-by: Leonzhao <leeeon233@gmail.com>
2022-11-11 11:12:55 +08:00
Zixuan Chen
1a8fb458a9 chore: use stable rust as GAT become stable 2022-11-06 23:18:15 +08:00
Zixuan Chen
43c28608c6 fix: reduce heap alloc 2022-10-31 19:27:13 +08:00
Zixuan Chen
261fb329ee test: add mem profiling 2022-10-31 17:21:06 +08:00
Zixuan Chen
22465a5e97 test: add B4 bench 2022-10-31 16:16:44 +08:00
Zixuan Chen
16e3d6f3cb chore: bk 2022-10-28 17:19:58 +08:00
Zixuan Chen
12cc746ff2 chore: setup benchmark 2022-10-28 15:25:11 +08:00
Zixuan Chen
328d0517c0 chore: update crdt-list dep 2022-10-26 23:35:21 +08:00
Zixuan Chen
105ab9b5ef chore: micro optimization 2022-10-26 23:31:34 +08:00
Zixuan Chen
352ddc1c11 fix: common ancestor step 1 2022-10-26 23:31:34 +08:00
Zixuan Chen
037093f6bd fix: partial iter bug 2022-10-26 23:31:34 +08:00
Zixuan Chen
b099b4507c fix: add 2 site tests & fix update cursor bug 2022-10-26 23:31:34 +08:00
Zixuan Chen
cf11e1ff4b test: single client fuzz 2022-10-26 23:31:34 +08:00
Zixuan Chen
796317097d test: start integration testing 2022-10-26 23:31:34 +08:00
Zixuan Chen
1d38440e9f refactor: org loro entry code
add raw string pool
add owning_ref dep
2022-10-26 23:31:34 +08:00
Zixuan Chen
947eb13853 chore: cleanup 2022-10-26 23:31:34 +08:00
Zixuan Chen
aef1947bee chore: add tabled to y_span 2022-10-26 23:31:34 +08:00
Zixuan Chen
f760aad046 test: add bench facilities 2022-10-26 23:31:34 +08:00
Zixuan Chen
a93d9f762d fix: cursor should not use Deref
`crdt-list` expected derefed cursor to be a sliced operation, but it was not.
so I updated crdt-list to use a GetOp trait instead of Deref, where
users may slice the op if they want to.
2022-10-26 23:31:34 +08:00
Zixuan Chen
bc980c5b02 feat: iter update in rle tree 2022-10-26 23:31:34 +08:00
Zixuan Chen
92a2e48ef5 chore: yata init 2022-10-26 23:31:34 +08:00
Zixuan Chen
f5a21799a8 chore: update crdt-list 2022-10-26 23:31:34 +08:00
Zixuan Chen
5ca3a42a0b test: add fuzz and fix a few iter bugs 2022-10-26 23:31:34 +08:00
Zixuan Chen
670d194aeb feat: impl yata 2022-10-26 23:31:34 +08:00
Zixuan Chen
cd95e2276c feat: introduce crdt-list 2022-10-26 23:31:34 +08:00