[c++] Fail earlier if n_buffers
is not as expected
#3107
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
While working on #3100 for #3057 / [sc-55679] (parent #2406) I ran into a cryptic error from Arrow. It turns out that when the number of buffers doesn't match -- 2 for non-variable-length validity/data vs. 3 for variable-length validity/offsets/data -- we can get message like
Now, the dev situation in which I was setting up data to generate such a situation is perhaps incorrect -- but -- we should fail sooner, and more transparently.
The status quo is that I turned on libtiledbsoma trace-logging & saw lines like
where the
2 3
was the smoking gun.