toeverything / OctoBase

🐙 OctoBase is the open-source database behind AFFiNE, local-first, yet collaborative. A light-weight, scalable, data engine written in Rust.
https://octobase.dev
GNU Affero General Public License v3.0
1.38k stars 91 forks source link

feat: block based struct verify #511

Closed darkskygit closed 1 year ago

vercel[bot] commented 1 year ago

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
octobase ✅ Ready (Inspect) Visit Preview 💬 Add feedback Aug 16, 2023 7:43am
github-actions[bot] commented 1 year ago

Benchmark Results

Linux

group                                     master                                 pr
-----                                     ------                                 --
codec/jwst decode var_int (32 bit)        1.01    431.0±4.03µs        ? ?/sec    1.00    427.7±4.97µs        ? ?/sec
codec/jwst decode var_int (64 bit)        1.01    391.6±2.66µs        ? ?/sec    1.00    387.8±4.44µs        ? ?/sec
codec/jwst decode var_uint (32 bit)       1.00    333.5±3.51µs        ? ?/sec    1.00    334.3±2.84µs        ? ?/sec
codec/jwst decode var_uint (64 bit)       1.00    341.4±3.21µs        ? ?/sec    1.01    343.6±3.99µs        ? ?/sec
codec/jwst encode var_int (32 bit)        1.02   634.6±10.67µs        ? ?/sec    1.00    624.7±9.95µs        ? ?/sec
codec/jwst encode var_int (64 bit)        1.01    688.9±9.67µs        ? ?/sec    1.00   684.8±10.15µs        ? ?/sec
codec/jwst encode var_uint (32 bit)       1.01    444.6±5.11µs        ? ?/sec    1.00    440.7±5.59µs        ? ?/sec
codec/jwst encode var_uint (64 bit)       1.00    443.5±5.41µs        ? ?/sec    1.01    447.0±3.17µs        ? ?/sec
codec/lib0 decode var_int (64 bit)        1.01    356.7±2.41µs        ? ?/sec    1.00    354.1±3.67µs        ? ?/sec
codec/lib0 decode var_uint (32 bit)       1.01    500.1±2.70µs        ? ?/sec    1.00    494.7±5.14µs        ? ?/sec
codec/lib0 decode var_uint (64 bit)       1.01    285.8±2.68µs        ? ?/sec    1.00    283.0±3.99µs        ? ?/sec
codec/lib0 encode var_int (64 bit)        1.02    565.7±8.52µs        ? ?/sec    1.00    553.4±6.24µs        ? ?/sec
codec/lib0 encode var_uint (32 bit)       1.04    445.3±6.88µs        ? ?/sec    1.00    429.5±6.90µs        ? ?/sec
codec/lib0 encode var_uint (64 bit)       1.01    448.3±3.16µs        ? ?/sec    1.00    445.4±4.21µs        ? ?/sec
ops/array/jwst/insert                     1.00    447.4±3.78µs        ? ?/sec    1.00    447.3±4.47µs        ? ?/sec
ops/array/jwst/insert range               1.00    608.0±4.63µs        ? ?/sec    1.00    605.3±6.27µs        ? ?/sec
ops/array/jwst/remove                     1.01    309.3±1.77µs        ? ?/sec    1.00    305.6±2.83µs        ? ?/sec
ops/array/yrs/insert                      1.04    108.8±0.49µs        ? ?/sec    1.00    105.0±1.06µs        ? ?/sec
ops/array/yrs/insert range                1.02    138.0±1.02µs        ? ?/sec    1.00    135.0±1.43µs        ? ?/sec
ops/array/yrs/remove                      1.00    121.3±0.75µs        ? ?/sec    1.00    121.4±1.21µs        ? ?/sec
ops/text/jwst/insert                      1.02    184.2±0.48µs        ? ?/sec    1.00    181.4±2.28µs        ? ?/sec
ops/text/jwst/remove                      1.01      3.5±0.01µs        ? ?/sec    1.00      3.5±0.03µs        ? ?/sec
ops/text/yrs/insert                       1.01     52.6±0.12µs        ? ?/sec    1.00     51.9±0.55µs        ? ?/sec
ops/text/yrs/remove                       1.02      3.0±0.01µs        ? ?/sec    1.00      2.9±0.03µs        ? ?/sec
update/parse with jwst/basic.bin          1.06     82.1±0.57µs    66.5 MB/sec    1.00     77.5±0.88µs    70.5 MB/sec
update/parse with jwst/database.bin       1.03     65.8±0.59µs    50.4 MB/sec    1.00     64.1±0.59µs    51.7 MB/sec
update/parse with jwst/large.bin          1.02      4.3±0.02ms    52.6 MB/sec    1.00      4.2±0.04ms    53.8 MB/sec
update/parse with jwst/with-subdoc.bin    1.03      7.7±0.05µs    90.6 MB/sec    1.00      7.5±0.08µs    92.9 MB/sec
update/parse with yrs/basic.bin           1.00     53.0±0.70µs   103.0 MB/sec    1.00     52.9±0.55µs   103.2 MB/sec
update/parse with yrs/database.bin        1.00     42.1±0.34µs    78.6 MB/sec    1.01     42.6±0.26µs    77.8 MB/sec
update/parse with yrs/large.bin           1.00      2.6±0.01ms    86.6 MB/sec    1.00      2.6±0.03ms    86.6 MB/sec
update/parse with yrs/with-subdoc.bin     1.03      7.8±0.11µs    89.8 MB/sec    1.00      7.5±0.09µs    92.8 MB/sec

Windows

group                                     master                                 pr
-----                                     ------                                 --
codec/jwst decode var_int (32 bit)        1.00    327.2±4.87µs        ? ?/sec    1.00    326.8±4.51µs        ? ?/sec
codec/jwst decode var_int (64 bit)        1.00    341.4±7.68µs        ? ?/sec    1.00    342.1±7.95µs        ? ?/sec
codec/jwst decode var_uint (32 bit)       1.00    292.3±3.26µs        ? ?/sec    1.00    291.7±3.19µs        ? ?/sec
codec/jwst decode var_uint (64 bit)       1.00    334.4±6.12µs        ? ?/sec    1.00    335.9±5.13µs        ? ?/sec
codec/jwst encode var_int (32 bit)        1.00    492.3±7.62µs        ? ?/sec    1.00    492.5±7.66µs        ? ?/sec
codec/jwst encode var_int (64 bit)        1.00   485.8±20.87µs        ? ?/sec    1.00   484.1±14.45µs        ? ?/sec
codec/jwst encode var_uint (32 bit)       1.00    290.5±8.28µs        ? ?/sec    1.01    292.6±7.81µs        ? ?/sec
codec/jwst encode var_uint (64 bit)       1.00    288.0±6.60µs        ? ?/sec    1.01    289.6±6.08µs        ? ?/sec
codec/lib0 decode var_int (64 bit)        1.05   288.9±29.75µs        ? ?/sec    1.00    276.5±0.61µs        ? ?/sec
codec/lib0 decode var_uint (32 bit)       1.02   266.5±14.42µs        ? ?/sec    1.00    261.0±8.12µs        ? ?/sec
codec/lib0 decode var_uint (64 bit)       1.03   274.0±18.53µs        ? ?/sec    1.00    266.5±4.42µs        ? ?/sec
codec/lib0 encode var_int (64 bit)        1.03   399.8±49.36µs        ? ?/sec    1.00    387.9±0.88µs        ? ?/sec
codec/lib0 encode var_uint (32 bit)       1.01   294.9±12.82µs        ? ?/sec    1.00    291.2±7.00µs        ? ?/sec
codec/lib0 encode var_uint (64 bit)       1.11   442.1±89.94µs        ? ?/sec    1.00   397.3±13.68µs        ? ?/sec
ops/array/jwst/insert                     1.00    422.5±1.91µs        ? ?/sec    1.01    427.8±1.40µs        ? ?/sec
ops/array/jwst/insert range               1.00    544.4±1.78µs        ? ?/sec    1.01    551.3±2.19µs        ? ?/sec
ops/array/jwst/remove                     1.00    287.6±0.77µs        ? ?/sec    1.00    286.4±1.08µs        ? ?/sec
ops/array/yrs/insert                      1.00     98.0±0.75µs        ? ?/sec    1.01     99.0±0.35µs        ? ?/sec
ops/array/yrs/insert range                1.00    139.5±0.85µs        ? ?/sec    1.00    138.8±0.73µs        ? ?/sec
ops/array/yrs/remove                      1.00    142.7±0.50µs        ? ?/sec    1.02    145.4±0.62µs        ? ?/sec
ops/text/jwst/insert                      1.00    168.7±0.93µs        ? ?/sec    1.01    169.8±0.92µs        ? ?/sec
ops/text/jwst/remove                      1.00      4.4±0.02µs        ? ?/sec    1.02      4.5±0.01µs        ? ?/sec
ops/text/yrs/insert                       1.02     43.2±0.14µs        ? ?/sec    1.00     42.4±0.19µs        ? ?/sec
ops/text/yrs/remove                       1.16      4.4±0.02µs        ? ?/sec    1.00      3.8±0.02µs        ? ?/sec
update/parse with jwst/basic.bin          1.00     86.7±0.51µs    63.0 MB/sec    1.02     88.2±0.40µs    61.9 MB/sec
update/parse with jwst/database.bin       1.00     69.1±0.22µs    47.9 MB/sec    1.02     70.3±0.36µs    47.1 MB/sec
update/parse with jwst/large.bin          1.00      4.2±0.08ms    54.7 MB/sec    1.02      4.3±0.10ms    53.4 MB/sec
update/parse with jwst/with-subdoc.bin    1.04     13.4±0.04µs    52.1 MB/sec    1.00     13.0±0.04µs    54.0 MB/sec
update/parse with yrs/basic.bin           1.00     58.4±0.34µs    93.5 MB/sec    1.00     58.3±0.14µs    93.6 MB/sec
update/parse with yrs/database.bin        1.01     46.1±0.16µs    71.8 MB/sec    1.00     45.6±0.12µs    72.6 MB/sec
update/parse with yrs/large.bin           1.00      2.9±0.06ms    79.7 MB/sec    1.03      2.9±0.06ms    77.7 MB/sec
update/parse with yrs/with-subdoc.bin     1.00     10.2±0.03µs    68.9 MB/sec    1.01     10.3±0.03µs    68.1 MB/sec