`test_delta_from_def_2` fails on aarch64, armv7 and ppc64le
See original GitHub issueDescribe the issue:
test_delta_from_def_2
fails on aarch64, armv7 and ppc64le.
[ 371s] =================================== FAILURES ===================================
[ 371s] ____________________________ test_delta_from_def_2 _____________________________
[ 371s] [gw1] linux -- Python 3.8.15 /usr/bin/python3.8
[ 371s]
[ 371s] def test_delta_from_def_2():
[ 371s] # https://github.com/apache/parquet-format/blob/master/Encodings.md#example-2
[ 371s] expected = [7, 5, 3, 1, 2, 3, 4, 5]
[ 371s] data = np.zeros(1000, dtype="uint8")
[ 371s] o = cencoding.NumpyIO(data)
[ 371s] cencoding.encode_unsigned_varint(8, o) # block size
[ 371s] cencoding.encode_unsigned_varint(1, o) # miniblock count
[ 371s] cencoding.encode_unsigned_varint(8, o) # value count
[ 371s] cencoding.encode_unsigned_varint(zigzag(7), o) # first value (zigzag)
[ 371s]
[ 371s] # one and only miniblock
[ 371s] cencoding.encode_unsigned_varint(zigzag(-2), o) # minimum delta (zigzag)
[ 371s] o.write_byte(2) # bit-width list (only one)
[ 371s] o.write_byte(0b00000011) # [0, 0, 0, 3]
[ 371s] o.write_byte(0b11111100) # [3, 3, 3, pad]
[ 371s]
[ 371s] o.seek(0)
[ 371s]
[ 371s] outdata = np.zeros(1000, dtype="int32")
[ 371s] out = cencoding.NumpyIO(outdata.view("uint8"))
[ 371s] cencoding.delta_binary_unpack(o, out)
[ 371s] > assert outdata[:8].tolist() == expected
[ 371s] E assert [7, 5, 3, 1, -1, -3, -5, -7] == [7, 5, 3, 1, 2, 3, 4, 5]
[ 371s] E At index 4 diff: -1 != 2
[ 371s] E Full diff:
[ 371s] E - [7, 5, 3, 1, 2, 3, 4, 5]
[ 371s] E ? ^ ^ ^
[ 371s] E + [7, 5, 3, 1, -1, -3, -5, -7]
[ 371s] E ? ^^ + ^^ ^^
[ 371s]
[ 371s] ../../BUILDROOT/python-fastparquet-0.8.3-1.1.aarch64/usr/lib64/python3.8/site-packages/fastparquet/test/test_encoding.py:176: AssertionError
Minimal Complete Verifiable Example:
# Put your MCVE code here
Anything else we need to know?:
Environment:
- Dask version:
- Python version: 3.8
- Operating System: openSUSE Tumbleweed
- Install method (conda, pip, source): source
Issue Analytics
- State:
- Created 10 months ago
- Comments:6 (4 by maintainers)
Top Results From Across the Web
4.4.0 test/unit/pages fails on ppc64le, ppc64, armv7hl, aarch64
on my native Fedora 25 machine and could not reproduce your build observations: no warning when compiling test/unit/pack.c; no error when ...
Read more >Failed to build pytorch on ppc64le
I fix some dependency like a guide in ibm website. It figure out that mkl do not need on ppc64le and I also...
Read more >Differences between arm64 and aarch64 - Stack Overflow
My questions are the following : obviously the strings "arm64" and "aarch64" are not the same, but I always thought arm64 and aarch64...
Read more >AArch64 - Wikipedia
AArch64 or ARM64 is the 64-bit extension of the ARM architecture family. Armv8-A platform with Cortex-A57/A53 MPCore big.LITTLE CPU chip.
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
Thanks for the pointer - I tracked it down. It seems that
char
means “signed char” on x86 and “unsigned char” on aarch; so I use the more specificint8_t
.It can be reproduced on AWS A1 for sure and likely on M6g or Raspberry Pi 3/4.