|
Ran
|
Files
305
|
Run time
15s
|
Badge
README BADGES
|
push
travis-ci
<a href="https://github.com/tarantool/tarantool/commit/<a class=hub.com/tarantool/tarantool/commit/2e3332b3c5722a7599d4b9b3f65344fa58f391c8">2e3332b3c<a href="https://github.com/tarantool/tarantool/commit/2e3332b3c5722a7599d4b9b3f65344fa58f391c8">">core: make tt_static buffers a singleton array tt_static_buf() is a function rotating 4 thread local buffers declared inside this function as &#39;static&#39; variables. They are used very often for a plenty of purposes from string formatting to small MessagePack encoding/decoding. This array of 4 buffers was supposed to be a singleton object, but function tt_static_buf() did not belong to a one certain linking item - it was &#39;static inline&#39; function in a header &#39;trivia/util.h&#39;. It means that *each* linking item (each .c file using these buffers) included its own version of this function with its own *copy* of these 4 buffers. Totally there were nearly 50 copies of 4Kb buffer in various files and threads, according to the difference seen in &#39;vmmap&#39; program on Mac (like /proc/pid/maps on Linux). This patch frees 200Kb of BSS section. (cherry picked from commit </a><a class="double-link" href="https://github.com/tarantool/tarantool/commit/<a class="double-link" href="https://github.com/tarantool/tarantool/commit/b11b7cb7b2c6a6c3226ecefb7aa570c0bfd69d13">b11b7cb7b</a>">b11b7cb7b</a><a href="https://github.com/tarantool/tarantool/commit/2e3332b3c5722a7599d4b9b3f65344fa58f391c8">)
41541 of 50372 relevant lines covered (82.47%)
861343.78 hits per line
| Coverage | ∆ | File | Lines | Relevant | Covered | Missed | Hits/Line |
|---|