-
Notifications
You must be signed in to change notification settings - Fork 41
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
Test failures on Debian i386 #111
Comments
Hmm, very weird. It seems likely that you're right and the FPU doing something weird is the culprit here. Specifically, that first test attempts to put a high count in the first bucket, and then checks that iterating over the quantiles yields exactly the expected steps. But the panic you're seeing suggests that the quantiles iterator yields HdrHistogram_rust/tests/iterators.rs Lines 709 to 751 in 5854b2e
I think the way I'd go about debugging this is to print out the items yielded by the quantile iterator to try and see what exactly goes wrong. For example, it could be that it gets "stuck" on a particular quantile, or it underflows/underflows somewhere and so basically ends up counting to HdrHistogram_rust/tests/iterators.rs Line 727 in 5854b2e
|
Also cc @marshallpierce who may find this interesting. |
I think we should be able to rule out under/overflow at least because in tests an overflow would panic, right? |
Does that hold for casts too? I thought it would only panic for arithmetic over/underflow, but could be wrong. Though having said that I guess there should be very few casts of relevance involved here. |
It does get stuck, on |
I recently updated the hdrhistogram package in Debian, and as part of that I resolved the issues that were blocking the tests from running on Debian's test infrastructure.
Unfortunately when running the CI tests on i386 two tests failed, I can also reproduce this locally.
Debian i386 uses the x87 FPU and I strongly suspect it's quirky floating point is involved in these failures, but I have no idea how to debug this further.
The text was updated successfully, but these errors were encountered: