-
Notifications
You must be signed in to change notification settings - Fork 16
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] Improve 32-bit support (GOARCH=386
)
#32
Comments
Debian supports three 32-bit platforms: i386, armhf, and armel. So we would like to see arrow-go work on 32-bit platforms. On i386, our stripped down build works fine, but there are self-tests failures that only occur on i386 and not amd64: https://salsa.debian.org/jas/golang-github-apache-arrow-go/-/jobs/7074351 Build log with >1000 FAIL's: For example the first failure:
Any ideas? |
I must have made a mistake on some of the build constraints. Let me take a look and do some testing for 32-bit arch and get back to you. |
### Rationale for this change Fixes the broken 32-bit arch tests identified by #32 ### What changes are included in this PR? Defining the `opAligned` pure go fallback methods for bitmap operations. ### Are these changes tested? Yes, it makes the tests succeed properly on `GOARCH=386` ### Are there any user-facing changes? No.
Describe the enhancement requested
There are several parts of the code that currently fail on 32-bit systems like 386.
refCount int64
we currently use for reference-counted resources requires manual alignment on 32-bit systems when used withatomic.AddInt64
. This was raised in [Go] parquet/pqarrow: panic: unaligned 64-bit atomic operation arrow#43186.apache/arrow#43206 starts to address these issues for a narrow subset of the codebase. This issue is intended to track the remaining work needed to add full support across the codebase.
Component(s)
Go
The text was updated successfully, but these errors were encountered: