Skip to content

Commit

Permalink
Update design document
Browse files Browse the repository at this point in the history
  • Loading branch information
krapie committed Aug 26, 2023
1 parent fd8e6f5 commit 9d76baa
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions design/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,17 @@

## Contents

- [Document Editing](document-editing.md): Local and remote document editing mechanism
- [Presence](presence.md): For sharing the presence of peers
- [Data Structure](data-structure.md): CRDT data structures in `crdt` package
- [Document Editing](document-editing.md): Local and remote document editing mechanism
- [Document Removal](document-removal.md): Soft deletion of document
- [Tree](tree.md): Tree CRDT data structure
- [Range Deletion in Splay Tree](range-deletion-in-splay-tree.md): Rotation-free range deletion algorithm for splay tree
- [Presence](presence.md): For sharing the presence of peers
- [PubSub](pub-sub.md): Client-side event sharing with gRPC server-side stream and PubSub pattern
- [Garbage Collection](garbage-collection.md): Deleting unused nodes in CRDT system
- [Garbage Collection for Text Type](gc-for-text-type.md): Garbage collection for text nodes
- [Housekeeping](housekeeping.md): Deactivating outdated clients for efficient garbage collection
- [Retention](retention.md): Clearing unnecessary changes with `--backend-snapshot-with-purging-changes` flag
- [Document Removal](document-removal.md): Soft deletion of document
- [Sharded Cluster Mode](sharded-cluster-mode.md): Shard-based server cluster mode with consistent hashing

## Maintaining the Document
Expand Down

1 comment on commit 9d76baa

@github-actions
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Go Benchmark

Benchmark suite Current: 9d76baa Previous: d43d844 Ratio
BenchmarkDocument/constructor_test - ns/op 1825 ns/op 1901 ns/op 0.96
BenchmarkDocument/constructor_test - B/op 984 B/op 984 B/op 1
BenchmarkDocument/constructor_test - allocs/op 16 allocs/op 16 allocs/op 1
BenchmarkDocument/status_test - ns/op 1079 ns/op 1104 ns/op 0.98
BenchmarkDocument/status_test - B/op 952 B/op 952 B/op 1
BenchmarkDocument/status_test - allocs/op 14 allocs/op 14 allocs/op 1
BenchmarkDocument/equals_test - ns/op 10521 ns/op 11206 ns/op 0.94
BenchmarkDocument/equals_test - B/op 6192 B/op 6192 B/op 1
BenchmarkDocument/equals_test - allocs/op 106 allocs/op 106 allocs/op 1
BenchmarkDocument/nested_update_test - ns/op 28168 ns/op 38428 ns/op 0.73
BenchmarkDocument/nested_update_test - B/op 11689 B/op 11689 B/op 1
BenchmarkDocument/nested_update_test - allocs/op 248 allocs/op 248 allocs/op 1
BenchmarkDocument/delete_test - ns/op 35384 ns/op 37937 ns/op 0.93
BenchmarkDocument/delete_test - B/op 14914 B/op 14914 B/op 1
BenchmarkDocument/delete_test - allocs/op 327 allocs/op 327 allocs/op 1
BenchmarkDocument/object_test - ns/op 12338 ns/op 13368 ns/op 0.92
BenchmarkDocument/object_test - B/op 6448 B/op 6449 B/op 1.00
BenchmarkDocument/object_test - allocs/op 110 allocs/op 110 allocs/op 1
BenchmarkDocument/array_test - ns/op 43073 ns/op 45483 ns/op 0.95
BenchmarkDocument/array_test - B/op 11545 B/op 11545 B/op 1
BenchmarkDocument/array_test - allocs/op 264 allocs/op 264 allocs/op 1
BenchmarkDocument/text_test - ns/op 46788 ns/op 50803 ns/op 0.92
BenchmarkDocument/text_test - B/op 14618 B/op 14618 B/op 1
BenchmarkDocument/text_test - allocs/op 470 allocs/op 470 allocs/op 1
BenchmarkDocument/text_composition_test - ns/op 47095 ns/op 50745 ns/op 0.93
BenchmarkDocument/text_composition_test - B/op 18002 B/op 18002 B/op 1
BenchmarkDocument/text_composition_test - allocs/op 471 allocs/op 471 allocs/op 1
BenchmarkDocument/rich_text_test - ns/op 124718 ns/op 139406 ns/op 0.89
BenchmarkDocument/rich_text_test - B/op 36816 B/op 36808 B/op 1.00
BenchmarkDocument/rich_text_test - allocs/op 1131 allocs/op 1131 allocs/op 1
BenchmarkDocument/counter_test - ns/op 26506 ns/op 31797 ns/op 0.83
BenchmarkDocument/counter_test - B/op 9969 B/op 9971 B/op 1.00
BenchmarkDocument/counter_test - allocs/op 235 allocs/op 235 allocs/op 1
BenchmarkDocument/text_edit_gc_100 - ns/op 4774982 ns/op 5296363 ns/op 0.90
BenchmarkDocument/text_edit_gc_100 - B/op 1553118 B/op 1553040 B/op 1.00
BenchmarkDocument/text_edit_gc_100 - allocs/op 17162 allocs/op 17161 allocs/op 1.00
BenchmarkDocument/text_edit_gc_1000 - ns/op 374045505 ns/op 454837900 ns/op 0.82
BenchmarkDocument/text_edit_gc_1000 - B/op 136625394 B/op 136624013 B/op 1.00
BenchmarkDocument/text_edit_gc_1000 - allocs/op 210660 allocs/op 210650 allocs/op 1.00
BenchmarkDocument/text_split_gc_100 - ns/op 5650377 ns/op 5867104 ns/op 0.96
BenchmarkDocument/text_split_gc_100 - B/op 2217707 B/op 2217506 B/op 1.00
BenchmarkDocument/text_split_gc_100 - allocs/op 16589 allocs/op 16588 allocs/op 1.00
BenchmarkDocument/text_split_gc_1000 - ns/op 439946148 ns/op 512663599 ns/op 0.86
BenchmarkDocument/text_split_gc_1000 - B/op 214889026 B/op 214858016 B/op 1.00
BenchmarkDocument/text_split_gc_1000 - allocs/op 211551 allocs/op 211415 allocs/op 1.00
BenchmarkDocument/text_delete_all_10000 - ns/op 22910106 ns/op 25096491 ns/op 0.91
BenchmarkDocument/text_delete_all_10000 - B/op 5904152 B/op 5903307 B/op 1.00
BenchmarkDocument/text_delete_all_10000 - allocs/op 41126 allocs/op 41122 allocs/op 1.00
BenchmarkDocument/text_delete_all_100000 - ns/op 293338878 ns/op 294377977 ns/op 1.00
BenchmarkDocument/text_delete_all_100000 - B/op 53839364 B/op 53843698 B/op 1.00
BenchmarkDocument/text_delete_all_100000 - allocs/op 415971 allocs/op 415982 allocs/op 1.00
BenchmarkDocument/text_100 - ns/op 389422 ns/op 413044 ns/op 0.94
BenchmarkDocument/text_100 - B/op 118214 B/op 118212 B/op 1.00
BenchmarkDocument/text_100 - allocs/op 5074 allocs/op 5074 allocs/op 1
BenchmarkDocument/text_1000 - ns/op 4188814 ns/op 4299966 ns/op 0.97
BenchmarkDocument/text_1000 - B/op 1152804 B/op 1152838 B/op 1.00
BenchmarkDocument/text_1000 - allocs/op 50078 allocs/op 50078 allocs/op 1
BenchmarkDocument/array_1000 - ns/op 2106368 ns/op 2269891 ns/op 0.93
BenchmarkDocument/array_1000 - B/op 1102815 B/op 1102736 B/op 1.00
BenchmarkDocument/array_1000 - allocs/op 11867 allocs/op 11867 allocs/op 1
BenchmarkDocument/array_10000 - ns/op 23562605 ns/op 25932652 ns/op 0.91
BenchmarkDocument/array_10000 - B/op 9907167 B/op 9906110 B/op 1.00
BenchmarkDocument/array_10000 - allocs/op 120720 allocs/op 120715 allocs/op 1.00
BenchmarkDocument/array_gc_100 - ns/op 216898 ns/op 230467 ns/op 0.94
BenchmarkDocument/array_gc_100 - B/op 98148 B/op 98157 B/op 1.00
BenchmarkDocument/array_gc_100 - allocs/op 1243 allocs/op 1243 allocs/op 1
BenchmarkDocument/array_gc_1000 - ns/op 2401446 ns/op 2544986 ns/op 0.94
BenchmarkDocument/array_gc_1000 - B/op 1170387 B/op 1170355 B/op 1.00
BenchmarkDocument/array_gc_1000 - allocs/op 12906 allocs/op 12906 allocs/op 1
BenchmarkDocument/counter_1000 - ns/op 348313 ns/op 410192 ns/op 0.85
BenchmarkDocument/counter_1000 - B/op 198533 B/op 198531 B/op 1.00
BenchmarkDocument/counter_1000 - allocs/op 6503 allocs/op 6503 allocs/op 1
BenchmarkDocument/counter_10000 - ns/op 4307358 ns/op 4357797 ns/op 0.99
BenchmarkDocument/counter_10000 - B/op 2165465 B/op 2165477 B/op 1.00
BenchmarkDocument/counter_10000 - allocs/op 69510 allocs/op 69510 allocs/op 1
BenchmarkDocument/object_1000 - ns/op 2262103 ns/op 2596718 ns/op 0.87
BenchmarkDocument/object_1000 - B/op 1451178 B/op 1451346 B/op 1.00
BenchmarkDocument/object_1000 - allocs/op 9914 allocs/op 9915 allocs/op 1.00
BenchmarkDocument/object_10000 - ns/op 28368636 ns/op 28984608 ns/op 0.98
BenchmarkDocument/object_10000 - B/op 12371724 B/op 12372384 B/op 1.00
BenchmarkDocument/object_10000 - allocs/op 101227 allocs/op 101228 allocs/op 1.00
BenchmarkRPC/client_to_server - ns/op 509359282 ns/op 649338574 ns/op 0.78
BenchmarkRPC/client_to_server - B/op 12226320 B/op 12484404 B/op 0.98
BenchmarkRPC/client_to_server - allocs/op 177038 allocs/op 177355 allocs/op 1.00
BenchmarkRPC/client_to_client_via_server - ns/op 863124174 ns/op 1090780487 ns/op 0.79
BenchmarkRPC/client_to_client_via_server - B/op 22591992 B/op 22341800 B/op 1.01
BenchmarkRPC/client_to_client_via_server - allocs/op 330757 allocs/op 315305 allocs/op 1.05
BenchmarkRPC/attach_large_document - ns/op 1830820755 ns/op 1809034535 ns/op 1.01
BenchmarkRPC/attach_large_document - B/op 1799685672 B/op 1808922968 B/op 0.99
BenchmarkRPC/attach_large_document - allocs/op 9498 allocs/op 9441 allocs/op 1.01
BenchmarkRPC/adminCli_to_server - ns/op 749807916 ns/op 891035671 ns/op 0.84
BenchmarkRPC/adminCli_to_server - B/op 20397628 B/op 20400200 B/op 1.00
BenchmarkRPC/adminCli_to_server - allocs/op 321678 allocs/op 321632 allocs/op 1.00
BenchmarkLocker - ns/op 154.3 ns/op 155.3 ns/op 0.99
BenchmarkLocker - B/op 16 B/op 16 B/op 1
BenchmarkLocker - allocs/op 1 allocs/op 1 allocs/op 1
BenchmarkLockerParallel - ns/op 170.8 ns/op 156.2 ns/op 1.09
BenchmarkLockerParallel - B/op 0 B/op 0 B/op NaN
BenchmarkLockerParallel - allocs/op 0 allocs/op 0 allocs/op NaN
BenchmarkLockerMoreKeys - ns/op 456.7 ns/op 383.8 ns/op 1.19
BenchmarkLockerMoreKeys - B/op 14 B/op 14 B/op 1
BenchmarkLockerMoreKeys - allocs/op 0 allocs/op 0 allocs/op NaN
BenchmarkSync/memory_sync_10_test - ns/op 9067 ns/op 9452 ns/op 0.96
BenchmarkSync/memory_sync_10_test - B/op 1284 B/op 1285 B/op 1.00
BenchmarkSync/memory_sync_10_test - allocs/op 38 allocs/op 38 allocs/op 1
BenchmarkSync/memory_sync_100_test - ns/op 78546 ns/op 81750 ns/op 0.96
BenchmarkSync/memory_sync_100_test - B/op 8833 B/op 9040 B/op 0.98
BenchmarkSync/memory_sync_100_test - allocs/op 285 allocs/op 298 allocs/op 0.96
BenchmarkSync/memory_sync_1000_test - ns/op 781537 ns/op 807968 ns/op 0.97
BenchmarkSync/memory_sync_1000_test - B/op 82098 B/op 83211 B/op 0.99
BenchmarkSync/memory_sync_1000_test - allocs/op 2602 allocs/op 2665 allocs/op 0.98
BenchmarkSync/memory_sync_10000_test - ns/op 9203090 ns/op 8177144 ns/op 1.13
BenchmarkSync/memory_sync_10000_test - B/op 857510 B/op 861070 B/op 1.00
BenchmarkSync/memory_sync_10000_test - allocs/op 26859 allocs/op 27827 allocs/op 0.97
BenchmarkTextEditing - ns/op 31361343924 ns/op 36310110561 ns/op 0.86
BenchmarkTextEditing - B/op 8457131992 B/op 8457270176 B/op 1.00
BenchmarkTextEditing - allocs/op 20615179 allocs/op 20615764 allocs/op 1.00

This comment was automatically generated by workflow using github-action-benchmark.

Please sign in to comment.