|
Ran
|
Jobs
1
|
Files
520
|
Run time
1min
|
Badge
README BADGES
|
push
github
msgpack: do not validate MP_ARROW payload in mp_check During replication the MP_ARROW payload is decoded twice by the applier: 1. applier_read_tx_row() -> xrow_decode() -> mp_check() 2. applier_thread_reader_f() -> applier_thread_decode_arrow_ipc() It is too costly and doesn't make any sense. According to flamegraphs a single arrow_ipc_decode() takes as much time as execute_batch_insert(). This patch removes the first decoding from mp_check(). The only visible side effect is that require('msgpack').decode() will no longer validate the Arrow payload. But currently we do not support Arrow in Lua anyway. Needed for tarantool/tarantool-ee#1710 NO_DOC=ee NO_TEST=ee NO_CHANGELOG=ee (cherry picked from commit 142ceb5af)
70213 of 118127 branches covered (59.44%)
105549 of 120494 relevant lines covered (87.6%)
1405942.21 hits per line
| Lines | Coverage | ∆ | File |
|---|---|---|---|
| 119 |
89.62 |
-0.89% | src/box/applier.cc |
| 20 |
90.71 |
-0.61% | src/box/box.cc |
| 16 |
91.48 |
0.0% | src/box/space.c |
| 12 |
85.37 |
0.0% | src/box/xrow.h |
| 9 |
88.14 |
-7.63% | src/box/vy_regulator.c |
| 4 |
89.61 |
-0.2% | src/box/xrow.c |
| 4 |
93.31 |
-1.27% | src/lib/swim/swim_io.c |
| 4 |
81.82 |
-12.12% | src/lua/minifio.c |
| 3 |
91.38 |
-0.21% | src/box/vy_scheduler.c |
| 2 |
93.79 |
0.36% | src/box/xrow_update_field.c |
| 1 |
81.19 |
2.34% | src/box/msgpack.c |
| 1 |
96.32 |
-0.18% | src/box/relay.cc |
| 1 |
92.56 |
0.09% | src/box/vinyl.c |
| 1 |
94.15 |
0.0% | src/box/vy_range.c |
| 1 |
85.89 |
0.03% | src/box/xlog.c |
| 1 |
60.42 |
-0.42% | src/lib/core/fio.c |
| 1 |
96.55 |
-1.15% | src/lib/core/histogram.c |
| 1 |
97.15 |
0.1% | src/lib/msgpuck/msgpuck.h |
| 1 |
22.64 |
-0.02% | src/lib/uri/uri_parser.c |
| ID | Job ID | Ran | Files | Coverage | |
|---|---|---|---|---|---|
| 1 | 24660882515.1 | 520 |
87.6 |
GitHub Action Run |
| Coverage | ∆ | File | Lines | Relevant | Covered | Missed | Hits/Line | Branch Hits | Branch Misses |
|---|