Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Go] ReadRowGroups panics with canceled context #43359

Closed
sebdotv opened this issue Jul 22, 2024 · 1 comment
Closed

[Go] ReadRowGroups panics with canceled context #43359

sebdotv opened this issue Jul 22, 2024 · 1 comment
Assignees
Milestone

Comments

@sebdotv
Copy link
Contributor

sebdotv commented Jul 22, 2024

Describe the bug, including details regarding any error messages, version, and platform.

  • Create a canceled Context
  • Call ReadTable: ReadRowGroups might panic when trying to read first column length because it was not initialized
  • Furthermore, releaseColumns might also panic for the same reason

Component(s)

Go

@raulcd raulcd changed the title ReadRowGroups panics with canceled context [Go] ReadRowGroups panics with canceled context Jul 22, 2024
joellubi pushed a commit that referenced this issue Jul 23, 2024
…43360)

### Rationale for this change

`ReadRowGroups` needs to support externally canceled contexts, e.g. for request-scoped contexts in servers like gRPC.

### What changes are included in this PR?

Additionnaly, `releaseColumns` needs to ignore columns with uninitialized data as it used in a `defer` statement.

### Are these changes tested?

Yes: a new test `TestArrowReaderCanceledContext` is included.

### Are there any user-facing changes?

None
* GitHub Issue: #43359

Authored-by: sebdotv <[email protected]>
Signed-off-by: Joel Lubinitsky <[email protected]>
@joellubi joellubi added this to the 18.0.0 milestone Jul 23, 2024
@joellubi
Copy link
Member

Issue resolved by pull request 43360
#43360

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

No branches or pull requests

2 participants