You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@arrow.apache.org by "fallintoplace (via GitHub)" <gi...@apache.org> on 2026/08/28 08:47:58 UTC
[PR] perf(parquet): reuse dictionary RLE decoder across pages [arrow-go]
fallintoplace opened a new pull request, #1247:
URL: https://github.com/apache/arrow-go/pull/1247
## Summary
- **Reuse the dictionary RLE decoder between data pages.**
- Reset the existing `TypedRleDecoder` and its `bytes.Reader` in `SetData`.
- Keep the current bit-width validation and empty-page behavior.
- Add a page-transition regression test covering partial runs, literal runs, and empty data.
- Add small-page and `SetData` allocation benchmarks.
## Benchmark
Local Apple M1 Pro run with `GOMAXPROCS=1`: repeated `SetData` improved from about **0.6-1.0 us / 4.9 KiB / 3 allocs** to **6.3 ns / 0 B / 0 allocs**.
## Tests
- `go test ./parquet/internal/encoding ./parquet/internal/utils`
- `go test -race ./parquet/internal/encoding ./parquet/internal/utils`
- `go vet -composites=false ./parquet/internal/encoding ./parquet/internal/utils`
- `GOOS=linux GOARCH=386 go test -c -o /dev/null ./parquet/internal/encoding`
## User-facing changes
No.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] perf(parquet): reuse dictionary RLE decoder across pages [arrow-go]
Posted by "zeroshade (via GitHub)" <gi...@apache.org>.
zeroshade merged PR #1247:
URL: https://github.com/apache/arrow-go/pull/1247
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org