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

32 bit support fails #175

Open
serge-sans-paille opened this issue Aug 9, 2024 · 2 comments
Open

32 bit support fails #175

serge-sans-paille opened this issue Aug 9, 2024 · 2 comments
Assignees
Labels
bug Something isn't working

Comments

@serge-sans-paille
Copy link
Contributor

Sparrow seems to hard-code that the underlying archiotecture is 64bit, see build.log in https://koji.fedoraproject.org/koji/taskinfo?taskID=121660160

@Alex-PLACET Alex-PLACET added the bug Something isn't working label Aug 9, 2024
@Klaim
Copy link
Collaborator

Klaim commented Aug 13, 2024

It's more like the layout code is following the usual C++ container logic of assuming that container/arrays can't be bigger than what the native address space supports, therefore 32bit platforms have 32bit pointers and 32bit elements size value types. However ArrowArray impose 64bit sizes whatever the platform, and the difference is caught at compile-time when we attempt to move an iterator with an offset of 64bit type.
Reproducible on Windows (and probably all platforms) by trying to build for 32bit.

@Klaim
Copy link
Collaborator

Klaim commented Aug 13, 2024

Arrow's doc specifies that the values of size types can be limited to 32bit even if the imposted representation type is 64bit int (and they recommend limitting to 2^31 - 1 signed integer) so that would match with what's supported by the C++ classic container interfaces, but we need some explicit conversions (and maybe a way to check values at runtime if requested).
Working on it.

@Klaim Klaim mentioned this issue Aug 14, 2024
6 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants