Skip to content

Replace substring BufferBuilders with Vec - #10634

Open
cakeni wants to merge 1 commit into
apache:mainfrom
cakeni:perf/arrow-string-substring-vecs
Open

Replace substring BufferBuilders with Vec#10634
cakeni wants to merge 1 commit into
apache:mainfrom
cakeni:perf/arrow-string-substring-vecs

Conversation

@cakeni

@cakeni cakeni commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

Which issue does this PR close?

Part of #10245.

Rationale for this change

Vec provides the same capacity preallocation and append behavior needed by substring_by_char_impl without the additional BufferBuilder abstraction.

What changes are included in this PR?

  • Replace the byte-value BufferBuilder with Vec<u8>.
  • Replace the offset BufferBuilder with Vec<OffsetSize>.
  • Preserve the existing capacity estimates, null handling, and offset construction.

Are there any user-facing changes?

No.

How was this change tested?

  • cargo +stable-x86_64-pc-windows-gnu fmt --all -- --check
  • cargo +stable-x86_64-pc-windows-gnu clippy -p arrow-string --all-targets --all-features --no-deps -- -D warnings
  • cargo +stable-x86_64-pc-windows-gnu test -p arrow-string --all-features (182 unit tests and 10 doc tests passed)

@github-actions github-actions Bot added arrow Changes to the arrow crate arrow-string labels Aug 11, 2026
@Jefffrey

Copy link
Copy Markdown
Contributor

@cakeni i noticed you raised quite a lot of PRs in a short span of time; especially these PRs have the same timestamps:

could you explain this? are they truly PRs raised by you or was there an AI agent involved with this?

@cakeni

cakeni commented Aug 12, 2026

Copy link
Copy Markdown
Contributor Author

Yes, AI assistance was involved in preparing some of these PRs. I reviewed the changes, diffs, and test results before submitting them.

The similar timestamps are because I was working on several independent issues in parallel and submitted the PRs around the same time.

I understand that opening several PRs at once can make review harder for maintainers, so I’ll slow down and wait for feedback on the existing PRs before opening more.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

arrow Changes to the arrow crate arrow-string

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants