zeroshade commented on code in PR #924:
URL: https://github.com/apache/arrow-go/pull/924#discussion_r3566723419
##########
parquet/file/column_reader.go:
##########
@@ -251,21 +253,31 @@ func (c *columnChunkReader) Descriptor() *schema.Column
{ return c.descr }
func (c *columnChunkReader) consumeBufferedValues(n int64) { c.numDecoded += n
}
func (c *columnChunkReader) numAvailValues() int64 { return
c.numBuffered - c.numDecoded }
func (c *columnChunkReader) pager() PageReader { return c.rdr }
-func (c *columnChunkReader) setPageReader(rdr PageReader) {
- c.Close()
+
+func (c *columnChunkReader) setPageReader(rdr PageReader) error {
+ if err := c.Close(); err != nil {
+ c.err = err
+ return err
+ }
c.rdr, c.err = rdr, nil
c.decoders = make(map[format.Encoding]encoding.TypedDecoder)
c.dictState = dictNotRead
c.numBuffered, c.numDecoded = 0, 0
+ return nil
}
// Close closes the page raeder and the page if set.
Review Comment:
Typo: `raeder` -> `reader`.
##########
parquet/file/column_reader.go:
##########
@@ -251,21 +253,31 @@ func (c *columnChunkReader) Descriptor() *schema.Column
{ return c.descr }
func (c *columnChunkReader) consumeBufferedValues(n int64) { c.numDecoded += n
}
func (c *columnChunkReader) numAvailValues() int64 { return
c.numBuffered - c.numDecoded }
func (c *columnChunkReader) pager() PageReader { return c.rdr }
-func (c *columnChunkReader) setPageReader(rdr PageReader) {
- c.Close()
+
+func (c *columnChunkReader) setPageReader(rdr PageReader) error {
Review Comment:
Optional: add a pqarrow-level test that a replacement close-error surfaces
via `LoadBatch`/`SeekToRow`; the propagation is currently only covered at the
primitive level.
--
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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]