• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

tarantool / tarantool / 5420418706
86%
master: 88%

Build:
Build:
LAST BUILD BRANCH: changelog-3.6.2
DEFAULT BRANCH: master
Ran 30 Jun 2023 07:47AM UTC
Jobs 1
Files 476
Run time 12s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

30 Jun 2023 07:18AM UTC coverage: 85.789% (+0.02%) from 85.773%
5420418706

push

github

locker
lua/xlog: don't ignore unknown header fields

The xlog reader Lua module uses the xlog_cursor_next_row, which decodes
the row header with xrow_header_decode. The latter silently ignores any
unknown fields, which complicates catching bugs when garbage is written
to a row header by mistake, for example, see #8783.

Let's parse a row header without using xrow_header_decode in the xlog
reader module, like we parse a row body, and output all unknown/invalid
keys as is.

To do that, we have to extend the xlog cursor API with the new method
xlog_cursor_next_row_raw that returns a pointer to the position in the
tx buffer where the next xrow is stored without advancing it. To avoid
a memory leak in case the caller fails to parse an xrow returned by this
function, we also have to move the call to xlog_tx_cursor_destroy from
xlog_tx_cursor_next_row to xlog_cursor_next_tx.

While we are at it,
 - Don't raise an error if a key type encountered in a row body is
   invalid (not an integer). Instead, silently ignore such keys.
 - Remove the useless body MsgPack validness check because we already
   check it after decoding the header.
 - Add error injection based tests to check all the corner cases.

NO_DOC=bug fix

(cherry picked from commit 8a25d170e)

62160 of 114034 branches covered (54.51%)

93151 of 108582 relevant lines covered (85.79%)

3009967.17 hits per line

Jobs
ID Job ID Ran Files Coverage
1 5420418706.1 30 Jun 2023 07:47AM UTC 0
85.79
GitHub Action Run
Source Files on build 5420418706
Detailed source file information is not available for this build.
  • Back to Repo
  • e874c471 on github
  • Prev Build on release/2.11 (#5413359124)
  • Next Build on release/2.11 (#5421968728)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc