vaexio / vaex

Out-of-Core hybrid Apache Arrow/NumPy DataFrame for Python, ML, visualization and exploration of big tabular data at a billion rows per second 🚀
https://vaex.io
MIT License
8.28k stars 590 forks source link

[BUG-REPORT] df.limits breaks in unittests with RuntimeError: stride is not equal to 1 #2207

Open abf7d opened 2 years ago

abf7d commented 2 years ago

Description I am building an app using vaex v4.9.1 and python 3.9. I use limits function to get the min and max combos for two axes like so:

    limits = df.limits(list(axes_val.values()), delay=False, selection=True)

Just recently randomly all of my unit tests broke, and they all brake on the line above. The error that is produced is RuntimeError: stride is not equal to 1. I tried to track down where this error is originating from but haven't been able to find it. If I run the application normally it works.

How do I fix these unit tests? Where does this stride error come from?

Software information

JovanVeljanoski commented 2 years ago

Can you post a reproducible example? I can't recreate your problem like this.

abf7d commented 2 years ago

So I traced the problem down to differences between my global enviornment and the virtual environment used to run the tests. The working version was using numpy==1.19.4 the version that didn't work was numpy==1.23.3. Pinning to numpy=1.19.4 fixed unit tests for vaex==4.9.1 and vaex==4.12.0. What version of numpy is appropriate for vaex==4.12.0?