You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@arrow.apache.org by "daniel-adam-tfs (via GitHub)" <gi...@apache.org> on 2025/04/03 12:41:21 UTC
[I] Data race in GetColumnPageReader [arrow-go]
daniel-adam-tfs opened a new issue, #342:
URL: https://github.com/apache/arrow-go/issues/342
### Describe the bug, including details regarding any error messages, version, and platform.
Is the reading of columns by a single `rgReader` from multiple Go routines supported?
We're reading four columns from a single row group concurrently. It worked fine in v18.1, but with v18.2 (and this commit: https://github.com/apache/arrow-go/commit/6dc6926acfe6e70335511f2df67f57006f8bddec) there is now a data race on the assignment/read of `r.rgPageIndexReader`.
Trace from the race detector:
```
WARNING: DATA RACE
Read at 0x00c000af6040 by goroutine 9596:
github.com/apache/arrow-go/v18/parquet/file.(*RowGroupReader).GetColumnPageReader()
/go/pkg/mod/github.com/apache/arrow-go/v18@v18.2.0/parquet/file/row_group_reader.go:131 +0x1c39
github.com/apache/arrow-go/v18/parquet/file.(*RowGroupReader).Column()
/go/pkg/mod/github.com/apache/arrow-go/v18@v18.2.0/parquet/file/row_group_reader.go:70 +0x296
github.com/thermofisher/cmd/research/parqstore/internal/parquetutil.ReadParquetColumnIndexBatch[go.shape.[]int32,go.shape.int32]()
/go/src/parqstore/internal/parquetutil/parquetutil.go:205 +0x73
github.com/thermofisher/cmd/research/parqstore/internal/chromatogram.(*centroidReader).readSimpleCentroidRowGroup.func1()
/go/src/parqstore/internal/chromatogram/centroidreader.go:251 +0x104
Previous write at 0x00c000af6040 by goroutine 9597:
github.com/apache/arrow-go/v18/parquet/file.(*RowGroupReader).GetColumnPageReader()
/go/pkg/mod/github.com/apache/arrow-go/v18@v18.2.0/parquet/file/row_group_reader.go:94 +0x1a4
github.com/apache/arrow-go/v18/parquet/file.(*RowGroupReader).Column()
/go/pkg/mod/github.com/apache/arrow-go/v18@v18.2.0/parquet/file/row_group_reader.go:70 +0x296
github.com/thermofisher/cmd/research/parqstore/internal/parquetutil.ReadParquetColumnIndexBatch[go.shape.[]float64,go.shape.float64]()
/go/src/parqstore/internal/parquetutil/parquetutil.go:205 +0x73
github.com/thermofisher/cmd/research/parqstore/internal/chromatogram.(*centroidReader).readSimpleCentroidRowGroup.func2()
/go/src/parqstore/internal/chromatogram/centroidreader.go:263 +0x106
```
### Component(s)
Parquet
--
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: issues-unsubscribe@arrow.apache.org.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [I] Data race in GetColumnPageReader [arrow-go]
Posted by "zeroshade (via GitHub)" <gi...@apache.org>.
zeroshade closed issue #342: Data race in GetColumnPageReader
URL: https://github.com/apache/arrow-go/issues/342
--
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: issues-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [I] Data race in GetColumnPageReader [arrow-go]
Posted by "zeroshade (via GitHub)" <gi...@apache.org>.
zeroshade commented on issue #342:
URL: https://github.com/apache/arrow-go/issues/342#issuecomment-2779292928
Reading columns from a single row group reader should be safe to do from multiple goroutines (since we actually leverage that if you're using the record reader or the `pqarrow` package to read a table). So this is a good catch, and also pretty easy to fix. Thanks for catching it!
--
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: [I] Data race in GetColumnPageReader [arrow-go]
Posted by "zeroshade (via GitHub)" <gi...@apache.org>.
zeroshade closed issue #342: Data race in GetColumnPageReader
URL: https://github.com/apache/arrow-go/issues/342
--
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: issues-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org