-
Notifications
You must be signed in to change notification settings - Fork 265
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
H5FDhttp.c build errors with v4.9.1 #2611
Comments
We have not tested against HDF5 1.14 at all at this point; I recommend using hdf5 1.12.x. I tried building against hdf5 1.14 several weeks ago and ran into other, similar errors that we will take a look at during the next release cycle, after we get the next Fortran and C++ interface libraries released. |
It seems like the structure changed between 1.12.2 and 1.14.0. I'm not sure why linux isn't seeing these problems.
Untested hint toward a patchdiff --git a/libhdf5/H5FDhttp.c b/libhdf5/H5FDhttp.c
index 81dba1f5..f7d1f853 100644
--- a/libhdf5/H5FDhttp.c
+++ b/libhdf5/H5FDhttp.c
@@ -163,6 +163,7 @@ static herr_t H5FD_http_unlock(H5FD_t *_file);
/* Beware, not same as H5FD_HTTP_g */
static const H5FD_class_t H5FD_http_g = {
+ 0x1, /* version */
"http", /* name */
MAXADDR, /* maxaddr */
H5F_CLOSE_WEAK, /* fc_degree */
@@ -192,6 +193,10 @@ static const H5FD_class_t H5FD_http_g = {
H5FD_http_get_handle, /* get_handle */
H5FD_http_read, /* read */
H5FD_http_write, /* write */
+ NULL, /* read_vector */
+ NULL, /* write_vector */
+ NULL, /* read_selection */
+ NULL, /* write_selection */
H5FD_http_flush, /* flush */
NULL, /* truncate */
H5FD_http_lock, /* lock */ |
@WardF hdf5-1.14.0 has some really necessary and helpful HPC performance improvments and bug fixes. I strongly recommend that you start testing with it immediately, it's going to be a very popular release. We are already using 1.14.0 at NOAA and it not only solves some mysterious and annoying MPI bugs, but it's significantly faster. |
The workaround for this is to build with --disable-byterange. |
I'm not sure that this is true. The data structure looks very different between 1.12 and 1.14. aren't the errors but the structure elements are of different data types? |
When --disable-byterange is used, this section of code is not compiled, and the rest of netcdf-c will compile and pass tests. That's what I meant by workaround. Of course, to get byterange working again will require some changes in the code. ;-) |
From HDF5 web site (https://portal.hdfgroup.org/display/HDF5/Migrating+from+HDF5+1.12+to+HDF5+1.14):
We may have to wait until these documents are released. |
What-all would I be giving up by using the
I'm building HDF5 & NetCDF to be used underneath PIO, however that may matter. |
This build issue is only reproducible with latest v4.9.1, not reproducible with v4.9.1-rc2.
Reproduced on ANL workstations (Ubuntu 20.04, gcc 9.4.0, mpich 3.3.2) with steps below.
[Build and install HDF5 1.14.0]
[Build and install NetCDF-C 4.9.1]
Build errors:
The text was updated successfully, but these errors were encountered: