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

tarantool / tarantool / 15390404879
88%

Build:
DEFAULT BRANCH: master
Ran 02 Jun 2025 11:04AM UTC
Jobs 1
Files 0
Run time –
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

pending completion
15390404879

push

github

locker
box: handle stale multikey tuple fields

After a multikey index is altered or dropped, tuples that were inserted
while it existed still reference the format with multikey parts. Actually,
that multikey format field shouldn't be used anymore because multikey
index is gone, but that's not true. It happens because format is arranged
to a JSON tree, and this tree has an interesting property. Imagine having
a field with path '[1][*]' in the tree. Then, when looking for a field
'[1][1]' (or '[1]["abc"]', the second key can be anything), the field with
path '[1][*]' will be returned since '*' is actually wildcard. Hence,
even if the format is stale and there are no multikey fields in actual
format, we can obtain a multikey field even if we didn't search for it
and `multikey_idx` will be MULTIKEY_NONE in this case. Let's handle this
scenario - simply ignore offset slot when `multikey_idx` is MULTIKEY_NONE
for a multikey field.

This bug could lead to assertion failure in Debug build and UB or even
crash in Release build because when one builds an index over the field
that was covered by multikey index, field map of tuples referencing the
old format would be incorrect - it would store offset of multikey array
instead of actual field.

Closes #11291

NO_DOC=bugfix
Jobs
ID Job ID Ran Files Coverage
1 15390404879.1 02 Jun 2025 11:04AM UTC 519
87.51
GitHub Action Run
Source Files on build 15390404879
Detailed source file information is not available for this build.
  • Back to Repo
  • 58c7b790 on github
  • Prev Build on master (#15347114677)
  • Next Build on master (#15438396766)
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