Commit Graph

114 Commits

Author SHA1 Message Date
Ward Fisher
e5640d9565 Updated copyright date. 2018-12-04 17:03:56 -07:00
Ward Fisher
a3eb21c068 Continuing to replace references. 2018-12-04 16:51:40 -07:00
Dennis Heimbigner
751300ec59 Fix more memory leaks in netcdf-c library
This is a follow up to PR https://github.com/Unidata/netcdf-c/pull/1173

Sorry that it is so big, but leak suppression can be complex.

This PR fixes all remaining memory leaks -- as determined by
-fsanitize=address, and with the exceptions noted below.

Unfortunately. there remains a significant leak that I cannot
solve. It involves vlens, and it is unclear if the leak is
occurring in the netcdf-c library or the HDF5 library.

I have added a check_PROGRAM to the ncdump directory to show the
problem.  The program is called tst_vlen_demo.c To exercise it,
build the netcdf library with -fsanitize=address enabled. Then
go into ncdump and do a "make clean check".  This should build
tst_vlen_demo without actually executing it.  Then do the
command "./tst_vlen_demo" to see the output of the memory
checker.  Note the the lost malloc is deep in the HDF5 library
(in H5Tvlen.c).

I am temporarily working around this error in the following way.
1. I modified several test scripts to not execute known vlen tests
   that fail as described above.
2. Added an environment variable called NC_VLEN_NOTEST.
   If set, then those specific tests are suppressed.

This should mean that the --disable-utilities option to
./configure should not need to be set to get a memory leak clean
build.  This should allow for detection of any new leaks.

Note: I used an environment variable rather than a ./configure
option to control the vlen tests. This is because it is
temporary (I hope) and because it is a bit tricky for shell
scripts to access ./configure options.

Finally, as before, this only been tested with netcdf-4 and hdf5 support.
2018-11-15 10:00:38 -07:00
luz.paz
74fbacdb82 Misc. source comment typos
Some are user-facing. Found via `codespell` and through the downstream FreeCAD.
2018-04-26 23:04:01 -04:00
Ed Hartnett
45329862a8 removed valgrind stuff 2018-02-27 08:36:12 -07:00
Ed Hartnett
46d3bca8f4 removed non-working BUILD_DLL target 2017-11-30 05:40:17 -07:00
Ed Hartnett
922734b88f removed mention of deleted tst_h_rd_cmp.c from h5_test CMake build 2017-11-26 09:01:54 -07:00
Ed Hartnett
6ebe58998f clean up 2017-11-26 07:13:10 -07:00
Ed Hartnett
bebe7e1e9d merged master 2017-11-26 07:06:02 -07:00
Ed Hartnett
8011fab382 now run tst_large2, also cleaned up some more warnings 2017-11-24 10:50:07 -07:00
Ed Hartnett
1456e227ff more changes to attempt to get cmake working 2017-11-23 06:21:08 -07:00
Ed Hartnett
fab6ed8346 combined two tests to eliminate dependency 2017-11-23 05:02:13 -07:00
Ward Fisher
1ccdf0219f Work towards parallel testing via cmake. 2017-11-22 12:10:58 -07:00
Ed Hartnett
812c2fd4d1 got make -j check working in ncdump and examples directories 2017-11-17 10:16:17 -07:00
Ward Fisher
d185602abf Merge branch 'ejh_make_j' of https://github.com/NetCDF-World-Domination-Council/netcdf-c into more_ejh_pulls 2017-11-09 12:52:55 -07:00
Ed Hartnett
b9911d6e6f took out most uses of EXTRA_TESTS, returned it to disabled by default 2017-11-08 13:25:23 -07:00
Ed Hartnett
bd22bde4c8 final cleanup 2017-11-08 04:29:53 -07:00
Ed Hartnett
d1946e4b69 cleanup whitespace issues 2017-11-08 04:28:44 -07:00
Ed Hartnett
9d187c099a fixed file name in test 2017-11-08 04:20:13 -07:00
Ed Hartnett
1b93bc9427 fixed warning 2017-10-24 11:35:03 -06:00
Ed Hartnett
6a71bf81b1 fixed memory problem in tst_h_dimscales 2017-10-23 09:49:38 -06:00
Ward Fisher
ed4dfb4402 Testing something with the pure h5 tests. 2017-06-28 16:51:29 -06:00
Ward Fisher
08c51e6064 Corrected a couple issues uncovered when revisiting https://github.com/Unidata/netcdf-c/issues/244 2017-06-14 14:01:09 -06:00
Ward Fisher
b039216c42 Made memory free method conditional, based on if H5free_memory is available in libhdf5 or not. In support of code contributed by Greg Sjaardema . See https://github.com/Unidata/netcdf-c/pull/411 for more information. 2017-06-06 11:33:05 -06:00
Greg Sjaardema
ebed788181 Use H5free_memory instead of free
The documentation for `H5Tget_member_name` states that the memory returned should be freed by `H5free_memory` instead of `free`.  I was getting test failure until I changed this to call H5free_memory on a Mac OS Sierra system with hdf5-1.9.236
2017-06-06 13:22:02 -04:00
Dennis Heimbigner
3db4f013bf Primary change: add dap4 support
Specific changes:
1. Add dap4 code: libdap4 and dap4_test.
   Note that until the d4ts server problem is solved, dap4 is turned off.
2. Modify various files to support dap4 flags:
	configure.ac, Makefile.am, CMakeLists.txt, etc.
3. Add nc_test/test_common.sh. This centralizes
   the handling of the locations of various
   things in the build tree: e.g. where is
   ncgen.exe located. See nc_test/test_common.sh
   for details.
4. Modify .sh files to use test_common.sh
5. Obsolete separate oc2 by moving it to be part of
   netcdf-c. This means replacing code with netcdf-c
   equivalents.
5. Add --with-testserver to configure.ac to allow
   override of the servers to be used for --enable-dap-remote-tests.
6. There were multiple versions of nctypealignment code. Try to
   centralize in libdispatch/doffset.c and include/ncoffsets.h
7. Add a unit test for the ncuri code because of its complexity.
8. Move the findserver code out of libdispatch and into
   a separate, self contained program in ncdap_test and dap4_test.
9. Move the dispatch header files (nc{3,4}dispatch.h) to
   .../include because they are now shared by modules.
10. Revamp the handling of TOPSRCDIR and TOPBUILDDIR for shell scripts.
11. Make use of MREMAP if available
12. Misc. minor changes e.g.
	- #include <config.h> -> #include "config.h"
	- Add some no-install headers to /include
	- extern -> EXTERNL and vice versa as needed
	- misc header cleanup
	- clean up checking for misc. unix vs microsoft functions
13. Change copyright decls in some files to point to LICENSE file.
14. Add notes to RELEASENOTES.md
2017-03-08 17:01:10 -07:00
Orion Poplawski
a837028349 Add missing #include "err_macros.h" to tst_h_par.c 2016-11-29 11:48:01 -07:00
Ward Fisher
157af11bc2 Refactoring tests to separate out error macros from tests, in support of fixing http://github.com/Unidata/netcdf-c/issues/321 2016-10-21 17:17:39 +00:00
Greg Sjaardema
71af39c8b3 Fix HDF5 library order -- static build
When using static libraries, some systems require that the libraries be ordered in dependency order.  Since libhdf5_hl.a depends on symbols from libhdf5.a, it (libhdf5_hl.a) should be listed first.  This was discovered and verified on RHEL-6 with gcc-5.2.0.
2016-02-22 11:06:23 -07:00
dmh
859f105005 merge-squash 2015-08-15 16:26:35 -06:00
Ward Fisher
5eb90c3a66 Cleaned up an unnecessary test, added refactored nc4 test to autotools. 2015-05-15 15:31:38 -06:00
Ward Fisher
de29c4d0a8 Tweaked tests for additional debugging. 2015-05-15 13:11:46 -06:00
Ward Fisher
999f4e5720 Additional debugging, modified the LOGGING functions somewhat. Also modified ncdump to print 'native' endianness. This may be removed before merging back into trunk. 2015-05-14 17:22:07 -06:00
Ward Fisher
f76117d014 Renamed test for [NCF-331], added it to autotools-based test. 2015-05-12 16:02:24 -06:00
Ward Fisher
9dacc3848f Additional work towards validating libhdf5. 2015-05-12 16:01:07 -06:00
Ward Fisher
a3251c08ad Testing for [NCF-331] in pure-hdf5 form. 2015-05-12 14:27:04 -06:00
Nico Schlömer
9d6431a040 tests are using HDF5 explicitly, so link against HDF5 2014-10-08 12:50:55 +02:00
Ward Fisher
7f812b367e Manual merge of pull request https://github.com/Unidata/netcdf-c/pull/64 contributed by nschloe. Assorted CMake improvements. 2014-06-11 15:51:31 -06:00
Quincey Koziol
b2dfacbcfa Big clean up to type handling in libsrc4, which makes fill-values work
correctly for variables with string datatype, plus a few other minor changes.
2014-02-11 17:12:08 -06:00
Quincey Koziol
e1fc13b215 Many changes to address NCF-177 (renaming dimensions and variables). Also
many cleanups to fix compiler warnings, streamline iteration over objects
in HDF5 file when opening the file, and generally straightening out the code
to be cleaner and simpler.

Tested on Mac OS/X with gcc 4.8 and OpenMPI (which uses clang).
2013-11-30 23:20:28 -06:00
Ward Fisher
33d3d06971 Added initial 'make dist', 'make distcheck' support to
CMake-based builds.
2013-06-03 16:42:04 +00:00
Ward Fisher
ddf3c31bb0 Corrected a handful of syntax issues in CMake config files,
probably introduced more.  

Added CMake-related files to Makefile.am files for inclusion
when creating a distribution package.
2013-02-20 23:28:28 +00:00
Russ Rew
c34a4e674b - Deleted --has-szlib option for nc-config, since that is controlled
by an HDF5 configure option, not a netCDF-4 configure option.
 - Fixed bug in HDF5 strings test code.
 - Minor fixes to nccopy man page documentation.
 - Minor fixes to Fortran-90 texinfo docs, since we don't have doxygen
   docs for Fortran yet: just using "Fortran" instead of "fortran" or
   "FORTRAN".
2012-10-31 21:31:07 +00:00
Ward Fisher
18d507c00d Changed 'boolean' to 'boolen' to avoid a name conflict under windows. 2012-09-10 22:07:04 +00:00
Ward Fisher
db0f2425db Added additional tests 2012-08-07 22:42:42 +00:00
Ward Fisher
7163dc49d8 Changed a few dangling checks for H5F_LIBVER_18 to H5F_LIBVER_LATEST. These were causing compile failures on some versions of Ubuntu (10.10, 11.??) 2012-08-01 20:57:23 +00:00
Dennis Heimbigner
8c01f7437f fixed valgrind error in tst_h_strings.c 2012-07-18 15:50:29 +00:00
Ward Fisher
47425e1145 Build script reorganization. 2012-05-25 16:40:55 +00:00
Russ Rew
c6f399c731 Fix non-portable test that depends on nonstandardized floating-point format using e+08, not e+008. Fixes for some problems reported in scan-build static analysis. 2012-04-23 23:59:24 +00:00
Russ Rew
fa3fbbcc92 Fixes for NCF-150, bugs in libsrc4 with handling strings in non-netCDF-4 HDF5 files. Added new test in nc_test4 to verify fixes. 2012-04-20 15:42:55 +00:00
Dennis Heimbigner
7e27052f87 - Implemented diskless files for both netcdf classic and extended.
The in-memory files can be made persistent if nc_create is called with
  NC_DISKLESS|NC_WRITE flags set. Initial test case also included.
- Modified ncio mechanism to support
  multiple ncio packages; this is so we
  can have posixio and memio operating
  at the same time.
- cleanup up a bunch of lint issues (unused variables, etc).
2012-03-26 01:34:32 +00:00
Dennis Heimbigner
2349c62d18 close Jira NCF-154 2012-03-07 23:38:51 +00:00
Dennis Heimbigner
599f35d2e6 fix appel problems with data lists 2012-01-09 18:39:37 +00:00
Dennis Heimbigner
efd9808b0a completely rewritten constraint system 2011-11-14 04:20:19 +00:00
Ed Hartnett
6cb0933d7b commented out filter test in makefile 2011-06-09 18:03:22 +00:00
Ed Hartnett
ca8128939e added tst_h_filters.c to explore use of compression filter in hdf5 2011-06-08 00:54:47 +00:00
Ed Hartnett
c199d81417 fixed fortran parallel I/O flag bug 2011-06-02 22:46:15 +00:00
Ed Hartnett
d469f39e3c workaround for HDF5 dimscale issue 2011-05-19 19:22:43 +00:00
Ed Hartnett
25ec2b9a54 found HDF5 dimscale bug 2011-05-19 17:36:25 +00:00
Ed Hartnett
8d99e0b43a more changes for mingw/DLL builds 2011-05-11 19:51:11 +00:00
Ed Hartnett
2f4cf5382e took out ldflags in Makefile.am files 2011-05-11 17:09:12 +00:00
Ed Hartnett
9000e1b546 fixes to get large file tests working again 2011-03-22 17:12:15 +00:00
Ed Hartnett
0259975e26 changes in response to user feedback to rc1, plus cleaned up H5 test dependancy 2011-03-21 15:45:17 +00:00
Ed Hartnett
965a3aac70 minor refactor of the build system to work better for cross-compiling 2011-03-15 10:19:08 +00:00