question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

`test_delta_from_def_2` fails on aarch64, armv7 and ppc64le

See original GitHub issue

Describe 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:open
  • Created 10 months ago
  • Comments:6 (4 by maintainers)

github_iconTop GitHub Comments

1reaction
martindurantcommented, Dec 22, 2022

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 specific int8_t.

0reactions
ggardetcommented, Dec 22, 2022

Do you happen to know which machine type on EC2 or GCE is best for running this kind of test? Or can I set up docker on a mac or linux to emulate it on M1/x86?

It can be reproduced on AWS A1 for sure and likely on M6g or Raspberry Pi 3/4.

Read more comments on GitHub >

github_iconTop 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 >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found