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

tarantool / tarantool / 14306123816

07 Apr 2025 09:49AM UTC coverage: 87.493% (-0.006%) from 87.499%
14306123816

push

github

locker
box: release array and schema in box_insert_arrow

According to the documentation to the Apache Arrow C data interface:

> Consumers MUST call a base structure’s release callback when they
> won’t be using it anymore[^1]

`box_insert_arrow()` is clearly a consumer so it must move or release
the input Arrow array and schema to conform to the specification while
currently it does not. This patch fixes this issue.

Note that for performance reasons (to avoid extra copying), the engine
callback that implements batch insertion should be allowed to move the
input Arrow array and schema to a private location. To allow for that,
we have to move the code that encodes the input Arrow in the IPC format
for xlog from `txn_add_redo()` to `space_execute_insert_arrow()`.

Closes #11338

[^1]: https://arrow.apache.org/docs/format/CDataInterface.html#release-callback-semantics-for-consumers

NO_DOC=bug fix
NO_CHANGELOG=batch insertion isn't implemented in CE

70180 of 123761 branches covered (56.71%)

17 of 20 new or added lines in 3 files covered. (85.0%)

243 existing lines in 21 files now uncovered.

103284 of 118048 relevant lines covered (87.49%)

2968505.29 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

93.54
/src/box/lua/space.cc


Source Not Available

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