Commit Graph

9365 Commits

Author SHA1 Message Date
Ward Fisher
ce97a67bae
Merge pull request #2709 from DennisHeimbigner/urs.dmh
Fix some problems with Earthdata authorization.
2023-06-12 10:44:07 -06:00
Dennis Heimbigner
82ca8ca038 Merge branch 'urs.dmh' of https://github.com/DennisHeimbigner/netcdf-c into urs.dmh 2023-06-10 22:30:40 -06:00
Dennis Heimbigner
5fdc8d49bd Remove debugging 2023-06-10 22:29:37 -06:00
Dennis Heimbigner
9aa8ca6d28 Remove extra file 2023-06-10 22:28:59 -06:00
Dennis Heimbigner
9d9a40d2eb Fix missing file 2023-06-10 22:08:40 -06:00
Dennis Heimbigner
a88da4165f add testcase 2023-06-10 22:03:04 -06:00
Dennis Heimbigner
9341904b0b Add earthdata test case 2023-06-10 20:11:26 -06:00
Dennis Heimbigner
1f12c09b07 Update Release Notes 2023-06-10 19:28:43 -06:00
Dennis Heimbigner
12ec5711d7 Fix some problems with Earthdata authorization.
re: Issue https://github.com/Unidata/netcdf-c/issues/2704

The issue reported problems accessing e.g. opendap.earthdata.nasa.gov,
which uses the authentication mechanisms of urs.earthdata.nasa.gov.
The file *docs/auth.md* describes how to setup the proper authorization
mechanisms for earthdata, but there turned out to be some bugs
in the code that prevented this from working.

## Primary Changes
* Add some clarification text to *auth.md*.
* Fix the process for loading and merging *.ncrc* and *.dodsrc* file to conform to documentation.
* Fix *NC_s3urlrebuild* so that non-S3 urls are passed through unchanged.
* Fix a bug in the .rc test *test_rcmerge.sh*.
2023-06-10 18:51:13 -06:00
Ward Fisher
7cb42a6739
Merge pull request #2689 from mathstuf/awsinclude-noexec
awsincludes: remove executable permissions
2023-06-09 15:17:06 -06:00
Ward Fisher
c44508b749
Merge pull request #2682 from DennisHeimbigner/ncdumptests.dmh
Fix some dependency conditions between some ncdump tests.
2023-06-07 14:55:21 -06:00
Ward Fisher
3695cc0668
Merge branch 'main' into ncdumptests.dmh 2023-06-07 14:55:11 -06:00
Ward Fisher
a082acc9dc
Merge pull request #2663 from poelmanc/patch-1
CMakeLists.txt use ON vs yes, indent
2023-06-07 13:21:09 -06:00
Ward Fisher
032ab7c416
Merge pull request #2699 from DennisHeimbigner/vlenperf.dmh
Improve performance of the nc_reclaim_data and nc_copy_data functions.
2023-06-07 10:49:56 -06:00
Ward Fisher
258ad3fabe
Merge branch 'main' into vlenperf.dmh 2023-06-06 15:59:04 -06:00
Ward Fisher
a3a62f4536 Trigger Github Actions 2023-06-06 15:27:42 -06:00
Ward Fisher
078020e450
Merge pull request #2680 from DennisHeimbigner/sepdata.dmh
Remove obsolete code
2023-06-05 15:41:58 -06:00
Dennis Heimbigner
402123d6f5 Remove conflicts 2023-06-03 14:46:53 -06:00
Ward Fisher
3e1280b24b
Merge pull request #2703 from WardF/fix_cmake_shell_rwx.wif
Adding a workaround for older versions of cmake
2023-05-30 10:26:42 -06:00
Ward Fisher
43b03a4da7
Merge pull request #2690 from DennisHeimbigner/verifyhost.dmh
Fix handling of CURLOPT_CAINFO and CURLOPT_CAPATH
2023-05-30 10:26:02 -06:00
Ward Fisher
d3c2cf236f Adding a workaround for older versions of cmake that are still common in the wild, rather than force manual upgrades. 2023-05-25 13:23:21 -05:00
Ward Fisher
a14bfde418
Merge branch 'main' into verifyhost.dmh 2023-05-25 11:54:49 -06:00
Ward Fisher
feaa6cd676
Merge pull request #2659 from DWesl/patch-2
CI: Test --without-plugin-dir on Cygwin
2023-05-23 12:05:14 -06:00
Ward Fisher
dd75fa343c
Merge branch 'main' into patch-2 2023-05-23 11:15:04 -06:00
Dennis Heimbigner
29740be9da update release notes 2023-05-20 17:36:47 -06:00
Dennis Heimbigner
fb40a72b45 Improve performance of the nc_reclaim_data and nc_copy_data functions.
re: Issue https://github.com/Unidata/netcdf-c/issues/2685
re: PR https://github.com/Unidata/netcdf-c/pull/2179

As noted in PR https://github.com/Unidata/netcdf-c/pull/2179,
the old code did not allow for reclaiming instances of types,
nor for properly copying them. That PR provided new functions
capable of reclaiming/copying instances of arbitrary types.

However, as noted by Issue https://github.com/Unidata/netcdf-c/issues/2685, using these
most general functions resulted in a significant performance
degradation, even for common cases.

This PR attempts to mitigate the cost of using the general
reclaim/copy functions in two ways.

First, the previous functions operating at the top level by
using ncid and typeid arguments. These functions were augmented
with equivalent versions that used the netcdf-c library internal
data structures to allow direct access to needed information.
These new functions are used internally to the library.

The second mitigation involves optimizing the internal functions
by providing early tests for common cases. This avoids
unnecessary recursive function calls.

The overall result is a significant improvement in speed by a
factor of roughly twenty -- your mileage may vary. These
optimized functions are still not as fast as the original (more
limited) functions, but they are getting close. Additional optimizations are
possible. But the cost is a significant "uglification" of the
code that I deemed a step too far, at least for now.

## Misc. Changes
1. Added a test case to check the proper reclamation/copy of complex types.
2. Found and fixed some places where nc_reclaim/copy should have been used.
3. Replaced, in the netcdf-c library, (almost all) occurrences of nc_reclaim_copy with calls to NC_reclaim/copy. This plus the optimizations is the primary speed-up mechanism.
4. In DAP4, the metadata is held in a substrate in-memory file; this required some changes so that the reclaim/copy code accessed that substrate dispatcher rather than the DAP4 dispatcher.
5. Re-factored and isolated the code that computes if a type is (transitively) variable-sized or not.
6. Clean up the reclamation code in ncgen; adding the use of nc_reclaim exposed some memory problems.
2023-05-20 17:11:25 -06:00
Ward Fisher
5dedd76de9
Merge branch 'main' into ncdumptests.dmh 2023-05-16 11:22:15 -06:00
Ward Fisher
bfb8a31aed
Merge pull request #2644 from ZhipengXue97/main
Fix potential dead store
2023-05-15 10:38:59 -06:00
Ward Fisher
4b2851d79e
Merge pull request #2686 from DennisHeimbigner/s3update.dmh
Improve S3 documentation, testing and support
2023-05-11 15:31:43 -06:00
Dennis Heimbigner
6c7e668a04 Remove debugging 2023-05-09 21:18:51 -06:00
Dennis Heimbigner
98477b9f25 ## Addendum [5/9/23]
It turns out that attempting to test S3 using a github action secret is a very complex process. So, this was disabled for github actions. However, a new *run_tests_s3.yml* action file was added that will eventually encapsulate S3 testing.
2023-05-09 21:13:49 -06:00
Dennis Heimbigner
d79f08176a Merge branch 'master' into s3update.dmh 2023-05-09 19:31:18 -06:00
Dennis Heimbigner
5e9a3f66d3 Merge remote-tracking branch 'Unidata/main' 2023-05-09 19:30:47 -06:00
Ward Fisher
c82f0236a9
Merge pull request #2695 from mathstuf/hdf5-api-checks
hdf5open: check for the H5L info structure version directly
2023-05-08 14:47:43 -06:00
Ben Boeckel
51cfad2dbf hdf5open: check for the H5L info structure version directly 2023-05-05 12:25:40 -04:00
Dennis Heimbigner
f928428680 remove push trigger 2023-05-03 16:31:39 -06:00
Dennis Heimbigner
912e76e552 Suppress S3 testing in github actions 2023-05-03 16:27:14 -06:00
Dennis Heimbigner
3ac9958ffc creds1 2023-05-02 19:38:30 -06:00
Dennis Heimbigner
c315873af6 Disable s3 tests 2023-05-02 14:51:34 -06:00
Ward Fisher
863fb64d52
Merge pull request #2693 from WardF/fix_cmake_shelltests.wif
Fix a syntax issue in CMakeLists.txt
2023-05-02 14:23:15 -06:00
Dennis Heimbigner
ef55c327b6 secret1 2023-05-02 14:10:02 -06:00
Dennis Heimbigner
eb6c9fa40f chmod 2023-05-02 13:35:22 -06:00
Dennis Heimbigner
b5ea9616e9 profile1 2023-05-02 13:20:09 -06:00
Dennis Heimbigner
38615da3e7 enable s3 testing 2023-05-02 12:55:25 -06:00
Ward Fisher
7f325464df Fix a syntax issue that may have been fouling other things, in cmake shell-script macro. 2023-05-02 09:10:14 -06:00
Dennis Heimbigner
b1b1a3e9c0 Added comment about curl code 2023-05-01 16:34:57 -06:00
Dennis Heimbigner
681abc3fb1 s3-off 2023-04-30 18:41:31 -06:00
Dennis Heimbigner
77ac0e052b debug 2023-04-29 21:33:45 -06:00
Dennis Heimbigner
dcc99e8d8b debug 2023-04-29 21:23:07 -06:00
Dennis Heimbigner
2e7befd209 debug15 2023-04-29 21:22:18 -06:00