hyperion-rt / hyperion

Hyperion Radiative Transfer Code
http://www.hyperion-rt.org
BSD 2-Clause "Simplified" License
52 stars 26 forks source link

Fix compatibility with HDF5 1.10 #208

Closed astrofrog closed 5 years ago

astrofrog commented 5 years ago

Work in progress...

astrofrog commented 5 years ago

This has brought up an error that happens only on Python 3 + HDF5 1.10 for some reason:

Error termination. Backtrace:
#0  0x7fe2525e92da in ???
#1  0x7fe2525e9ec5 in ???
#2  0x7fe2525ea297 in ???
#3  0x5624620e6cb8 in adjust_wall
    at src/grid/grid_geometry_cartesian_3d.f90:186
#4  0x5624620e6cb8 in __grid_geometry_specific_MOD_place_in_cell
    at src/grid/grid_geometry_cartesian_3d.f90:255
#5  0x5624620f750c in __sources_MOD_emit
    at src/sources/source.f90:176
#6  0x56246210c430 in __iteration_lucy_MOD_do_lucy
    at src/main/iter_lucy.f90:130
#7  0x56246210ed42 in MAIN__
    at src/main/main.f90:183
#8  0x56246208b64e in main
    at src/main/main.f90:3

This is in test_point_source_outside_grid. Otherwise the other failures are segfaults with not much debug information:

Program received signal SIGSEGV: Segmentation fault - invalid memory reference.

Backtrace for this error:
#0  0x7f3f87bdf2da in ???
#1  0x7f3f87bde503 in ???
#2  0x7f3f87473f1f in ???
#3  0x55567d7b06e0 in ???
#4  0x55567d6d6630 in ???
#5  0x55567d6db2b4 in ???
#6  0x55567d70cf18 in ???
#7  0x55567d7b47ca in ???
#8  0x55567d70de0c in ???
#9  0x55567d6d68f9 in ???
#10  0x55567d64e0ea in ???
#11  0x7f3f87478040 in ???
#12  0x7f3f87478139 in ???
#13  0x7f3f87456b9d in ???
#14  0x55567d5a4689 in ???
#15  0xffffffffffffffff in ???
Segmentation fault
astrofrog commented 5 years ago

It looks like (at least one of) the segfault is due to a bug in the compression in HDF5 that was fixed in 1.10.2 (https://gist.github.com/astrofrog/50d3252143d0b822db121860a8639d39). I'm rebuilding the Docker image with 1.10.4 installed to see if that helps.