Commit Graph

5807 Commits

Author SHA1 Message Date
Wei-keng Liao
ec2b3250a3 Use cmode for nc_create() and omode for nc_open() 2018-09-17 17:18:48 -05:00
Wei-keng Liao
668e3021a8 Check if NC_ENOTBUILT is returend when PnetCDF feature is not
enabled but NC_PNETCDF is used in cmode or omode.
2018-09-17 17:18:48 -05:00
Wei-keng Liao
2e85316dbb Improve parallel create/open mode logic.
1. When model is detected as NC_FORMATX_NC3 and is called from
   nc_create_par, change the model to NC_FORMATX_PNETCDF.
2. When called from nc_create() or nc_open(), using NC_MPIIO or
   NC_MPIPOSIX is considered invalid.
3. Handle the case when NETCDF4 is not enabled but cmode/omode
   contains NC_NETCDF4.
4. Handle the case when PNETCDF is not enabled but cmode/omode
   contains NC_PNETCDF.
5. Correct comments about PnetCDF only handles CDF-5 files.
6. Add a check for MPI_ERR_NO_SUCH_FILE error class.

Make NC_check_file_type() static, as it is used in dfile.c only.
2018-09-17 17:18:48 -05:00
Wei-keng Liao
a537312895 nc_create_par() and nc_open_par() implies parallel I/O, so
using NC_MPIIO or NC_MPIPOSIX explicitly is not necessary.
These 2 subroutines call NC_create() and NC_open() with argument
useparallel set to 1, which should be used to tell which I/O
driver to use underneath.
2018-09-17 17:18:48 -05:00
Wei-keng Liao
329a44f911 fix varm API when stride == NULL and imap != NULL
fix bug when NC_check_id() failed, nc should not be used.
2018-09-17 17:18:48 -05:00
Ward Fisher
5259b4b1e8
Merge branch 'master' into ejh_hdf5_sep_next_2 2018-09-17 14:53:55 -06:00
Ward Fisher
58d382ce45
Merge pull request #1142 from Unidata/issue972.dmh
Fix szip filter handling code and corresponding tests
2018-09-17 14:53:37 -06:00
Dennis Heimbigner
108dc0f01d Fix szip filter handling code and correspondingtests
re: https://github.com/Unidata/netcdf-c/issues/972

The current szip plugin code in the HDF5 library has some
unexpected behaviors that require some changes to how
nc_inq_var_szip is implemented and to the corresponding tests:
nc_test4/{test_szip,tst_vars3}.

Specifically, the following can happen:

1. The number of parameters provided by the user will be two,
   but the number of parameters returned by nc_inq_var_filter
   will be four because the HDF5 code (H5Zszip) will add two
   extra parameters for internal use. It turns out that the two
   parameters provided when calling nc_def_var_filter correspond
   to the first two parameters of the four parameters returned
   by nc_inq_var_filter.

2. The nc_inq_var_szip values corresponding to the ones provided
   by the caller may be different than those provided by
   nc_def_var_filter.  The value of the options_mask argument is
   known to add additional flag bits, and the pixels_per_block
   parameter may be modified.
2018-09-15 15:21:51 -06:00
Ward Fisher
26b02ae362 Corrected a few things for old experimental bootstrap fortran option. Still not working tho. 2018-09-14 16:08:11 -06:00
Ward Fisher
a1dd3d2a2a Bumped experimental fortran autoinstall script to 4.4.4 2018-09-14 15:56:28 -06:00
Ward Fisher
e3cc0185cc Merge branch 'master' into housekeeping 2018-09-14 15:55:29 -06:00
Ed Hartnett
d9ef143d1e separated cache code from hdf5file.c 2018-09-14 13:33:22 -06:00
Ed Hartnett
b501748f58 fixed merge error 2018-09-14 11:56:10 -06:00
Ed Hartnett
a009dab557 fixed inadvertant move of function 2018-09-14 11:39:57 -06:00
Ed Hartnett
8367992725 undid changes to dap4_test/findtestserver4.c 2018-09-14 11:36:44 -06:00
Ed Hartnett
e2839c120f
Merge branch 'master' into ejh_hdf5_sep_next_2 2018-09-14 11:33:59 -06:00
Ward Fisher
cf1f737116
Merge pull request #1128 from NetCDF-World-Domination-Council/ejh_hdf5_sep_next
Clean up unneeded object lookups...
2018-09-14 11:12:34 -06:00
Ed Hartnett
eabb690949 fixing merge issue 2018-09-12 09:36:36 -06:00
Ed Hartnett
abf247de92 made dumpopenobjects static in attempt to get appvayor build working 2018-09-12 07:53:31 -06:00
Ed Hartnett
90d5783eea removed commented-out code 2018-09-12 06:08:02 -06:00
Ed Hartnett
9de849d492 restored dap4_test/findtestserver4.c to what it is on master 2018-09-12 06:05:09 -06:00
Ed Hartnett
bb53ad80a0 merged master 2018-09-12 06:01:37 -06:00
Ed Hartnett
72a2214bef
Merge branch 'master' into ejh_hdf5_sep_next 2018-09-11 15:42:47 -06:00
Ward Fisher
756030d79f
Merge pull request #1139 from Unidata/issue1138.dmh
Remove the set_fmode
2018-09-11 14:44:41 -06:00
Dennis Heimbigner
57e2e9cbf3
Remove the set_fmode
resolve issue: https://github.com/Unidata/netcdf-c/issues/1138
2018-09-10 12:38:18 -06:00
Ward Fisher
2e6889c1f1 modified version for upcoming maintenance release. 2018-09-10 09:16:23 -06:00
Ed Hartnett
12b74a2622
Merge branch 'master' into ejh_hdf5_sep_next 2018-09-07 18:03:34 -06:00
Ward Fisher
7514d7feaa
Merge pull request #1126 from Unidata/dapcurlopt.dmh
Add the ability to set some additional curlopt values
2018-09-07 16:56:49 -06:00
Ward Fisher
b884e17596 Merge branch 'master' into dapcurlopt.dmh 2018-09-07 15:37:46 -06:00
Ed Hartnett
08a2dce904 merged master 2018-09-07 12:40:44 -06:00
Ed Hartnett
8390d572ad
Merge branch 'master' into ejh_hdf5_sep_next 2018-09-06 17:30:37 -06:00
Ward Fisher
3f2557e868
Merge pull request #1124 from Unidata/provenance.dmh
Improve provenance information
2018-09-06 17:19:39 -06:00
Ward Fisher
6efa25e7e4 Updated and removed a check for _NCProperties during file comparison, as this test fails if the environment is different from the environment the reference file was built on. 2018-09-06 15:53:25 -06:00
Ward Fisher
784d777bff Merge branch 'master' into provenance.dmh 2018-09-06 15:13:09 -06:00
Ed Hartnett
86e002d794 merged master 2018-09-06 14:01:59 -06:00
Ed Hartnett
4213f10ed6 moved function 2018-09-06 13:57:39 -06:00
Ed Hartnett
e4b7c97b75 removed commented out code 2018-09-06 12:34:16 -06:00
Ed Hartnett
20cdb78590 restored findtestserver4.c 2018-09-06 12:26:01 -06:00
Ed Hartnett
80dc5bc0f7 merged master 2018-09-06 12:24:29 -06:00
Ed Hartnett
6c86ad8229 moved functions back 2018-09-06 12:19:17 -06:00
Ward Fisher
17f8eb11dd
Merge pull request #1119 from NetCDF-World-Domination-Council/ejh_loop_cleanup_2
Fix checking for HDF5 max dims, no longer re-create atts if not needed, confirm behavior for HDF5 cyclical files, allow user to set mpiexec
2018-09-06 11:47:36 -06:00
Ed Hartnett
efe8e3e8e6
Merge branch 'master' into ejh_loop_cleanup_2 2018-09-06 07:49:18 -06:00
Ward Fisher
746cece75d For some reason, the check for H5free() was never added to CMakeLists.txt. This becomes an issue with newer compilers, as observed in Ubuntu 18.04 and HDF5 1.10.2. The issue isn't seen in HDF 1.8.20. 2018-09-05 14:42:51 -06:00
Ward Fisher
fbe0a18b1c
Merge branch 'master' into ejh_loop_cleanup_2 2018-09-05 11:22:55 -06:00
Ward Fisher
57fea18aeb
Merge pull request #1135 from Unidata/combined-pr.wif
Combined Pull Requests
2018-09-05 11:21:43 -06:00
Ward Fisher
d0bb5ddde8 Merge remote-tracking branch 'origin/inmemory10.dmh' into combined-pr.wif 2018-09-04 13:39:34 -06:00
Ward Fisher
3c3119bed2 Merge remote-tracking branch 'origin/dapcurlopt.dmh' into combined-pr.wif 2018-09-04 12:50:55 -06:00
Ward Fisher
ad3912c55c Merge branch 'NC_ENOTINDEFINE' of https://github.com/wkliao/netcdf-c into combined-pr.wif 2018-09-04 12:47:39 -06:00
Ed Hartnett
a23318929f
Merge branch 'master' into ejh_loop_cleanup_2 2018-09-04 12:44:46 -06:00
Dennis Heimbigner
d62a9e623c Fix the NC_INMEMORY code to work in all cases with HDF5 1.10.
re: github issue https://github.com/Unidata/netcdf-c/issues/1111

One of the less common use cases for the in-memory feature is
apparently failing with HDF5-1.10.x.  The fix is complicated and
requires significant changes to libhdf5/nc4memcb.c. The current
setup is detailed in the file docs/inmeminternal.dox.

Additionally, it was discovered that the program
nc_test/tst_inmemory.c, which is invoked by
nc_test/run_inmemory.sh, actually was failing because of the
above problem. But the failure is not detected since the script
does not return non-zero value.

Other Changes:
1. Fix nc_test_tst_inmemory to return errors correctly.
2. Make ncdap_tests/findtestserver.c and dap4_tests/findtestserver4.c
   be generated from ncdap_test/findtestserver.c.in.
3. Make LOG() print output to stderr instead of stdout to
   avoid contaminating e.g. ncdump output.
4. Modify the handling of NC_INMEMORY and NC_DISKLESS flags
   to properly handle that NC_DISKLESS => NC_INMEMORY. This
   affects a number of code pieces, especially memio.c.
2018-09-04 11:27:47 -06:00