Skip to content
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

Fix virtual dataset tests #1019

Merged
merged 4 commits into from
Oct 18, 2022
Merged

Conversation

mkitti
Copy link
Member

@mkitti mkitti commented Oct 18, 2022

See #1018 for explanation.

Create a testset.
Restrict testing to greater than Julia 1.3 due to JLL issues.

test/runtests.jl Outdated Show resolved Hide resolved
@mkitti
Copy link
Member Author

mkitti commented Oct 18, 2022

@simonbyrne , how does this look to you?

@@ -62,6 +62,10 @@ end
include("filters/FilterTestUtils.jl")
@debug "objects"
include("objects.jl")
if VERSION ≥ v"1.6"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is this required?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It segfaults otherwise with Julia 1.3. My guess is that Julia 1.3 loads an old JLL which is buggy.

virtual dataset: Error During Test at /home/runner/work/HDF5.jl/HDF5.jl/test/virtual_dataset.jl:32
  Test threw exception
  Expression: size(d) == (3, 2)
  HDF5.API.H5Error: Error getting dataspace
  libhdf5 Stacktrace:
    [1] H5FO_dest: Object cache/Unable to release object
        objects still in open object info set
     
  Stacktrace:
   [1] macro expansion at /home/runner/work/HDF5.jl/HDF5.jl/src/api/error.jl:18 [inlined]
   [2] h5d_get_space(::HDF5.Dataset) at /home/runner/work/HDF5.jl/HDF5.jl/src/api/functions.jl:476
   [3] dataspace at /home/runner/work/HDF5.jl/HDF5.jl/src/datasets.jl:4 [inlined]
   [4] size(::HDF5.Dataset) at /home/runner/work/HDF5.jl/HDF5.jl/src/dataspaces.jl:266
   [5] top-level scope at /home/runner/work/HDF5.jl/HDF5.jl/test/virtual_dataset.jl:32
   [6] top-level scope at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.3/Test/src/Test.jl:1107
   [7] top-level scope at /home/runner/work/HDF5.jl/HDF5.jl/test/virtual_dataset.jl:4
  
virtual dataset: Error During Test at /home/runner/work/HDF5.jl/HDF5.jl/test/virtual_dataset.jl:33
  Test threw exception
  Expression: read(d) == hcat(fill(1.0, 3), fill(2.0, 3))
  HDF5.API.H5Error: Error getting dataspace
  libhdf5 Stacktrace:
    [1] H5FO_dest: Object cache/Unable to release object
        objects still in open object info set
     
  Stacktrace:
   [1] macro expansion at /home/runner/work/HDF5.jl/HDF5.jl/src/api/error.jl:18 [inlined]
   [2] h5d_get_space(::HDF5.Dataset) at /home/runner/work/HDF5.jl/HDF5.jl/src/api/functions.jl:476
   [3] dataspace at /home/runner/work/HDF5.jl/HDF5.jl/src/datasets.jl:4 [inlined]
   [4] _size_of_buffer at /home/runner/work/HDF5.jl/HDF5.jl/src/readwrite.jl:324 [inlined]
   [5] _generic_read(::HDF5.Dataset, ::HDF5.Datatype, ::Type{Float64}, ::Nothing) at /home/runner/work/HDF5.jl/HDF5.jl/src/readwrite.jl:143
   [6] generic_read(::HDF5.Dataset, ::HDF5.Datatype, ::Type{Float64}) at /home/runner/work/HDF5.jl/HDF5.jl/src/readwrite.jl:134
   [7] read(::HDF5.Dataset) at /home/runner/work/HDF5.jl/HDF5.jl/src/readwrite.jl:39
   [8] top-level scope at /home/runner/work/HDF5.jl/HDF5.jl/test/virtual_dataset.jl:33
   [9] top-level scope at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.3/Test/src/Test.jl:1107
   [10] top-level scope at /home/runner/work/HDF5.jl/HDF5.jl/test/virtual_dataset.jl:4
  

signal (11): Segmentation fault
in expression starting at /home/runner/work/HDF5.jl/HDF5.jl/test/runtests.jl:18
H5AC_cork at /home/runner/.julia/artifacts/997813d46a8a06e6e9871a2a01483f91ce954eca/lib/libhdf5.so (unknown line)
H5D_close at /home/runner/.julia/artifacts/997813d46a8a06e6e9871a2a01483f91ce954eca/lib/libhdf5.so (unknown line)
H5D__virtual_reset_source_dset at /home/runner/.julia/artifacts/997813d46a8a06e6e9871a2a01483f91ce954eca/lib/libhdf5.so (unknown line)
H5D__virtual_reset_layout at /home/runner/.julia/artifacts/997813d46a8a06e6e9871a2a01483f91ce954eca/lib/libhdf5.so (unknown line)
H5O__layout_reset at /home/runner/.julia/artifacts/997813d46a8a06e6e9871a2a01483f91ce954eca/lib/libhdf5.so (unknown line)
H5O_msg_reset at /home/runner/.julia/artifacts/997813d46a8a06e6e9871a2a01483f91ce954eca/lib/libhdf5.so (unknown line)
H5D_close at /home/runner/.julia/artifacts/997813d46a8a06e6e9871a2a01483f91ce954eca/lib/libhdf5.so (unknown line)
H5VL__native_dataset_close at /home/runner/.julia/artifacts/997813d46a8a06e6e9871a2a01483f91ce954eca/lib/libhdf5.so (unknown line)
H5VL_dataset_close at /home/runner/.julia/artifacts/997813d46a8a06e6e9871a2a01483f91ce954eca/lib/libhdf5.so (unknown line)
H5D__close_cb at /home/runner/.julia/artifacts/997813d46a8a06e6e9871a2a01483f91ce954eca/lib/libhdf5.so (unknown line)
H5I__clear_type_cb at /home/runner/.julia/artifacts/997813d46a8a06e6e9871a2a01483f91ce954eca/lib/libhdf5.so (unknown line)
H5SL_try_free_safe at /home/runner/.julia/artifacts/997813d46a8a06e6e9871a2a01483f91ce954eca/lib/libhdf5.so (unknown line)
H5I_clear_type at /home/runner/.julia/artifacts/997813d46a8a06e6e9871a2a01483f91ce954eca/lib/libhdf5.so (unknown line)
H5D_top_term_package at /home/runner/.julia/artifacts/997813d46a8a06e6e9871a2a01483f91ce954eca/lib/libhdf5.so (unknown line)
H5_term_library.part.0 at /home/runner/.julia/artifacts/997813d46a8a06e6e9871a2a01483f91ce954eca/lib/libhdf5.so (unknown line)
H5close at /home/runner/.julia/artifacts/997813d46a8a06e6e9871a2a01483f91ce954eca/lib/libhdf5.so (unknown line)
h5_close at /home/runner/work/HDF5.jl/HDF5.jl/src/api/functions.jl:20
unknown function (ip: 0x7f2e33f1333c)
_jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2141 [inlined]
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2305
jl_apply at /buildworker/worker/package_linux64/build/src/julia.h:1631 [inlined]
do_call at /buildworker/worker/package_linux64/build/src/interpreter.c:328
eval_value at /buildworker/worker/package_linux64/build/src/interpreter.c:417
eval_stmt_value at /buildworker/worker/package_linux64/build/src/interpreter.c:368 [inlined]
eval_body at /buildworker/worker/package_linux64/build/src/interpreter.c:778
eval_body at /buildworker/worker/package_linux64/build/src/interpreter.c:705
eval_body at /buildworker/worker/package_linux64/build/src/interpreter.c:705
jl_interpret_toplevel_thunk_callback at /buildworker/worker/package_linux64/build/src/interpreter.c:888
unknown function (ip: 0xfffffffffffffffe)
unknown function (ip: 0x7f2e38fbdc0f)
unknown function (ip: 0x390)
jl_interpret_toplevel_thunk at /buildworker/worker/package_linux64/build/src/interpreter.c:897
jl_toplevel_eval_flex at /buildworker/worker/package_linux64/build/src/toplevel.c:814
jl_parse_eval_all at /buildworker/worker/package_linux64/build/src/ast.c:873
jl_load at /buildworker/worker/package_linux64/build/src/toplevel.c:878
include at ./boot.jl:328 [inlined]
include_relative at ./loading.jl:1105
include at ./Base.jl:31
_jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2135 [inlined]
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2305
include at ./client.jl:424
_jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2135 [inlined]
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2305
jl_apply at /buildworker/worker/package_linux64/build/src/julia.h:1631 [inlined]
do_call at /buildworker/worker/package_linux64/build/src/interpreter.c:328
eval_value at /buildworker/worker/package_linux64/build/src/interpreter.c:417
eval_stmt_value at /buildworker/worker/package_linux64/build/src/interpreter.c:368 [inlined]
eval_body at /buildworker/worker/package_linux64/build/src/interpreter.c:778
jl_interpret_toplevel_thunk_callback at /buildworker/worker/package_linux64/build/src/interpreter.c:888
unknown function (ip: 0xfffffffffffffffe)
unknown function (ip: 0x7f2e48297a8f)
unknown function (ip: 0xffffffffffffffff)
jl_interpret_toplevel_thunk at /buildworker/worker/package_linux64/build/src/interpreter.c:897
jl_toplevel_eval_flex at /buildworker/worker/package_linux64/build/src/toplevel.c:814
jl_toplevel_eval_flex at /buildworker/worker/package_linux64/build/src/toplevel.c:764
jl_toplevel_eval_in at /buildworker/worker/package_linux64/build/src/toplevel.c:843
eval at ./boot.jl:330
_jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2135 [inlined]
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2305
exec_options at ./client.jl:263
_start at ./client.jl:460
jfptr__start_2084.clone_1 at /opt/hostedtoolcache/julia/1.3.1/x64/lib/julia/sys.so (unknown line)
_jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2135 [inlined]
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2305
jl_apply at /buildworker/worker/package_linux64/build/ui/../src/julia.h:1631 [inlined]
true_main at /buildworker/worker/package_linux64/build/ui/repl.c:96
main at /buildworker/worker/package_linux64/build/ui/repl.c:217
__libc_start_main at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
_start at /opt/hostedtoolcache/julia/1.3.1/x64/bin/julia (unknown line)
Allocations: 130050426 (Pool: 130024572; Big: 25854); GC: 166
ERROR: LoadError: Package HDF5 errored during testing
Stacktrace:
 [1] pkgerror(::String, ::Vararg{String,N} where N) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.3/Pkg/src/Types.jl:[113](https://github.com/JuliaIO/HDF5.jl/actions/runs/3269882844/jobs/5377897344#step:5:116)
 [2] #test#[131](https://github.com/JuliaIO/HDF5.jl/actions/runs/3269882844/jobs/5377897344#step:5:134)(::Bool, ::Nothing, ::Cmd, ::Cmd, ::typeof(Pkg.Operations.test), ::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.3/Pkg/src/Operations.jl:[137](https://github.com/JuliaIO/HDF5.jl/actions/runs/3269882844/jobs/5377897344#step:5:140)2
 [3] #test at ./none:0 [inlined]
 [4] #test#62(::Bool, ::Nothing, ::Cmd, ::Cmd, ::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}, ::typeof(Pkg.API.test), ::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.3/Pkg/src/API.jl:253
 [5] (::Pkg.API.var"#kw##test")(::NamedTuple{(:coverage,),Tuple{Bool}}, ::typeof(Pkg.API.test), ::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}) at ./none:0
 [6] #test#58 at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.3/Pkg/src/API.jl:233 [inlined]
 [7] (::Pkg.API.var"#kw##test")(::NamedTuple{(:coverage,),Tuple{Bool}}, ::typeof(Pkg.API.test)) at ./none:0
 [8] top-level scope at /home/runner/work/_actions/julia-actions/julia-runtest/latest/test_harness.jl:15
 [9] include at ./boot.jl:328 [inlined]
 [10] include_relative(::Module, ::String) at ./loading.jl:1105
 [11] include(::Module, ::String) at ./Base.jl:31
 [12] include(::String) at ./client.jl:424
 [13] top-level scope at none:1
in expression starting at /home/runner/work/_actions/julia-actions/julia-runtest/latest/test_harness.jl:7

@mkitti
Copy link
Member Author

mkitti commented Oct 18, 2022

@musm want to merge this one and do another release?

@simonbyrne simonbyrne merged commit 6022be0 into JuliaIO:master Oct 18, 2022
@simonbyrne
Copy link
Collaborator

It only modifies the tests, so I don't think a release is required.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants