[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Test failures with latest rhdf5



Hi Andreas,

I think I've narrowed this down to an unsafe use of sprintf() in that function.

There's a modified version of the package at https://github.com/grimbough/rhdf5/tree/h5ls_printing

I haven't been able to reproduce the bug on my own system, but if you'd like to test that version and report back, that would be great.

I'm not sure what format you need for testing, so if you'd like me to provide the source tarball or anything let me know.

Cheers,

Mike

On 12/6/19 10:01 AM, Andreas Tille wrote:
Hi Mike,

thanks a lot for the speedy response!

On Fri, Dec 06, 2019 at 08:06:44AM +0000, Mike Smith wrote:
Hi Andreas,
Thanks for the heads up.  That's a weird error because really it's just comparing too strings that represent the shape of the datasets, so it's the string creation rather than anything else that's failing.
This was reported once before (https://support.bioconductor.org/p/101038/ (https://support.bioconductor.org/p/101038/)) but I put it down to using old versions of R/rhdf5 that predated my time as maintainer, and the user never got back to me with more details.
I presume you have built many previous versions of rhdf5 on your system, and I haven't changed the h5ls() function in years, so it's odd that it's manifesting now.
I need to admit that also the previous version 2.30.0 showed the exact
same issue.  However, non of the maintainers team payed sufficient
attention to that issue.

I'll take a look at the code and see if there's anything wrong in h5ls(), I guess this must be a pretty weird edge case if it doesn't show up anywhere else.
I'll let you know if I find something.
Thanks a lot again for your quick response.  Feel free to ask here if
you need some further information.

Kind regards

        Andreas.

Cheers,
Mike

On Fri, Dec 6, 2019 at 08:35, Andreas Tille  wrote:
Hi Mike,

I intent to upgrade the Debian package of rhdf5 to version 2.30.1
but I stumbled about the following issues in the test suite:

library(testthat)
library(rhdf5)
.
test_check("rhdf5")
── 1. Failure: h5ls supports native (@test_native.R#21)  ───────────────────────
`object` not equal to "3 x 4".
1/1 mismatches
x[1]: " x 4"
y[1]: "3 x 4"

── 2. Failure: h5ls supports native (@test_native.R#23)  ───────────────────────
`object` not equal to "4 x 3".
1/1 mismatches
x[1]: " x 3"
y[1]: "4 x 3"

── 3. Failure: h5ls supports native (@test_native.R#27)  ───────────────────────
`object` not equal to "4 x 3".
1/1 mismatches
x[1]: " x 3"
y[1]: "4 x 3"

── 4. Failure: h5ls supports native (@test_native.R#29)  ───────────────────────
`object` not equal to "3 x 4".
1/1 mismatches
x[1]: " x 4"
y[1]: "3 x 4"

── 5. Failure: h5ls supports native (@test_native.R#38)  ───────────────────────
`object` not equal to "2 x 3 x 4".
1/1 mismatches
x[1]: " x 4"
y[1]: "2 x 3 x 4"

── 6. Failure: h5ls supports native (@test_native.R#41)  ───────────────────────
`object` not equal to "4 x 3 x 2".
1/1 mismatches
x[1]: " x 2"
y[1]: "4 x 3 x 2"

── 7. Failure: h5ls supports native (@test_native.R#46)  ───────────────────────
`object` not equal to "4 x 3 x 2".
1/1 mismatches
x[1]: " x 2"
y[1]: "4 x 3 x 2"

── 8. Failure: h5ls supports native (@test_native.R#49)  ───────────────────────
`object` not equal to "2 x 3 x 4".
1/1 mismatches
x[1]: " x 4"
y[1]: "2 x 3 x 4"

══ testthat results  ═══════════════════════════════════════════════════════════
[ OK: 694 | SKIPPED: 0 | WARNINGS: 0 | FAILED: 8 ]
1. Failure: h5ls supports native (@test_native.R#21).
2. Failure: h5ls supports native (@test_native.R#23).
3. Failure: h5ls supports native (@test_native.R#27).
4. Failure: h5ls supports native (@test_native.R#29).
5. Failure: h5ls supports native (@test_native.R#38).
6. Failure: h5ls supports native (@test_native.R#41).
7. Failure: h5ls supports native (@test_native.R#46).
8. Failure: h5ls supports native (@test_native.R#49).

Error: testthat unit tests failed
Execution halted

Do you have any idea what might be wrong here?

Kind regards

Andreas.

--
http://fam-tille.de (http://fam-tille.de)


Reply to: