Commit Graph

26 Commits

Author SHA1 Message Date
Quincey Koziol
0e51a4244e [svn-r15868] Description:
Correct a minor error in file free space allocation which was affecting
the 'multi' VFD and preventing some tests from fully working with it.

	Wholesale revisitation of all the places where tests were disabled
with various VFDs and remove or correct all these so that _only_ the tests
which _really_ can't work with particular VFDs are skipped during a
'make check-vfd' test.

Tested on:
        Mac OS X/32 10.5.5 (amazon) in debug mode
        Mac OS X/32 10.5.5 (amazon) w/C++ & FORTRAN, w/threadsafe,
                                in production mode
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
                                in debug mode
        Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x,
                                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
2008-10-14 20:46:34 -05:00
Quincey Koziol
bdd7d59902 [svn-r15628] Description:
Remove trailing whitespace from C/C++ source files, with the following
script:

    foreach f (*.[ch] *.cpp)
        sed 's/[[:blank:]]*$//' $f > sed.out && mv sed.out $f
    end

Tested on:
    Mac OS X/32 10.5.5 (amazon)
    No need for h5committest, just whitespace changes...
2008-09-16 10:52:51 -05:00
Quincey Koziol
d9e5ca72f3 [svn-r14199] Description:
Add H5Dcreate to API versioned routines, replacing internal usage with
H5Dcreate2

	Fix thread-safe error stack initialization for API versioned error
stack printing routines.

Tested on:
        FreeBSD/32 6.2 (duty) in debug mode
        FreeBSD/64 6.2 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
                                in debug mode
        Linux/64-amd64 2.6 (smirom) w/default API=1.6.x, w/C++ & FORTRAN,
                                in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                                in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                                w/szip filter, in production mode
        Mac OS X/32 10.4.10 (amazon) in debug mode
2007-10-11 11:24:11 -05:00
Quincey Koziol
63eb5b9ebb [svn-r14104] Description:
Pursue calls to H5Gcreate() relentlessly and ruthlessly exterminate
them, leaving only a few tame specimens in text files and comments.  ;-)

Tested on:
	Mac OS X/32 10.4.10 (amazon)
	FreeBSD/32 6.2 (duty)
	FreeBSD/64 6.2 (liberty)
	Linux/32 2.6 (kagiso)
	Linux/64 2.6 (smirom)
	Solaris/32 5.10 (linew)
2007-08-23 15:25:25 -05:00
Quincey Koziol
c64ac252cd [svn-r13549] Description:
Check in changes from Elena and I to get pgcc compiler working again.
Primarily (all?) changes to move from using 'hsize_t' as array index to using
something else ('size_t') mostly.

Tested on:
    Linux/32 2.4 kagiso w/pgcc
2007-03-26 22:06:48 -05:00
Albert Cheng
ed7d456e51 [svn-r13253] Updated all C and C++ style source code files with the THG copyright notice.
Tested platform:
Kagiso only since it is only a comment block change.  If it works in one
machine, it should work in all, I hope.  Still need to check the parallel
build on copper.
2007-02-07 09:56:24 -05:00
Albert Cheng
e75b0a6031 [svn-r12965] Removed the warning message of extend_file not having protocol by making it
static.

Test: Heping.
2006-11-21 18:07:57 -05:00
Quincey Koziol
14dcb6db33 [svn-r12736] Description:
Add "use the latest format" support for dataspace object header encode/
decode routines and clean up format a bit for the latest format (new to 1.8.x
releases)

    Remove storing 'perm' parameter for array datatypes in memory and the file,
and add test to make certain that if any user applications are attempting to
store them, we get some reports back.  (Should be unlikely, since the RefMan
says that the parameter is not implemented and is unsupported).
    Carry those changes into the tests, etc.

    Clean up a bunch more compiler warnings.

Tested on:
    FreeBSD/32 4.11 (sleipnir) w/threadsafe
    Linux/32 2.4 (heping) w/FORTRAN & C++
    Linux/64 2.4 (mir) w/enable-1.6-compat
2006-10-08 23:18:18 -05:00
Leon Arber
4dea870b6a [svn-r12718] Purpose: New Feature
Description: Add a new part to the flush test that checks to see what happens in case a file is flushed, and
	     then a new dataset is created and the program exits without flushing this subsequent dataset. 
	     The test verifies that, at the very least, the data written out before the H5Fflush call is correct.
2006-10-04 14:50:40 -05:00
Leon Arber
c8a9a305cc [svn-r12696] Purpose: Add Feature
Description: 
    Add a second test case to the serial flush tests.  This tests the case when the file is not flushed out to disk and verifies that it fails as expected.

Platforms:
    Linux (heping)
2006-09-29 17:01:07 -05:00
James Laird
beb04ae817 [svn-r12519] Fixed "make check-vfd"
"make check-vfd" will now run all tests in the test directory with different
file drivers (at least, all of those tests that use the testing framework's
FAPL).  Tests that fail will be skipped.

This is not a perfect fix, but is better than nothing.

Along with this change, check-vfd should be added to the Daily Tests.
2006-07-31 14:46:16 -05:00
Quincey Koziol
6b45f5172c [svn-r11245] Purpose:
Code cleanup

Description:
    Trim trailing whitespace, which is making 'diff'ing the two branches
difficult.

Solution:
    Ran this script in each directory:

foreach f (*.[ch] *.cpp)
    sed 's/[[:blank:]]*$//' $f > sed.out && mv sed.out $f
end


Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2005-08-13 15:53:35 -05:00
Bill Wendling
44022e598c [svn-r6538] Purpose:
Update

Description:
    Updated the Copyright statement

Platforms tested:
    Linux (This change is only in the comments, so I just check that the
    modules still compile)

Misc. update:
2003-03-31 12:59:04 -05:00
Quincey Koziol
8c2c4cd51c [svn-r4088] Purpose:
Code cleanup
Description:
    Recent CodeWarrior patches have broken the Unix builds and moved code
    around in non-portable ways.
Solution:
    Patched things back up to try to accomodate CodeWarrior and still let the
    Unix builds work correctly.
Platforms tested:
    FreeBSD 4.3 (hawkwind)
2001-06-29 14:49:53 -05:00
Pedro Vicente Nunes
504bc34f60 [svn-r3974] code warrior port 2001-06-07 11:03:02 -05:00
Bill Wendling
bfd983e7f4 [svn-r3770] Purpose:
Update
Description:
    Changed includes of the form:

            #include <hdf5_file.h>

    to

            #include "hdf5_file.h"

    so that gcc can pick them up easier without including the system
    header files since we don't care about them.
Platforms tested:
    Linux
2001-04-03 13:09:16 -05:00
Quincey Koziol
4650caa3a6 [svn-r3746] Purpose:
Code tweak
Description:
    Large data arrays were being created on the stack.
Solution:
    Hoisted the data variables out of the function(s) and make into static
    variables.
Platforms tested:
    FreeBSD 4.3 (hawkwind)
2001-03-31 22:27:34 -05:00
Bill Wendling
3775ed521d [svn-r2466] Added return statement to the main function to prevent some compiler
warnings. It's not a meaningful addition, since it happens right after an
_exit() statement.
2000-08-04 17:02:32 -05:00
Quincey Koziol
9648d22f5f [svn-r1837] Cleaned up a few warnings from the SGI compiler. 1999-11-17 17:00:15 -05:00
Robb Matzke
8baa675250 [svn-r1362]
Changes since 19990616
----------------------

./src/H5T.c
./src/H5Tconv.c
	All conversion functions take an extra argument called
	`stride' which is the number of bytes to advance the source
	and destination pointers after each element is converted. If
	the value is zero then the old behavior is preserved (source
	and destination values are packed). This feature was necessary
	to implement the compound datatype conversion optimizations
	and it causes a minor change to the API (application-defined
	type conversion functions take an extra size_t stride
	argument).

./src/H5Tconv.c
	An additional compound data type conversion function was added
	which is applied unless the destination type is larger than
	the source type. I'm measuring significant performance
	increases for certain operations:

	    Test Name    Struct-Conv    Noop-Conv
			 New(Old) MB/s  New(Old) MB/s
	    ----------   -------------  -------------
	    Reordering   2.062(0.3936)  54087(0.9047)
	    Subsetting   2.901(0.6581)  40192(1.1100)
	    Shrinking    1.976(0.3925)  33628(1.1500)
	    ----------   -------------  -------------

./test/dtypes.c
	Added various compound datatype conversion tests.

	Fixed return values from functions.

./src/H5T.c
	Conversion timers are updated only if H5T debugging is turned
	on a runtime (in addition to compile time). This allows the
	data type layer to be compiled with debugging support without
	having to pay a big runtime penalty if the debugging isn't
	actually used.

./src/H5A.c
./src/H5D.c
./src/H5Ofill.c
./src/H5P.c
./src/H5T.c
./src/H5Tconv.c
./src/H5Tpkg.h
./src/H5Tprivate.h
./src/H5Tpublic.h
	Added the stride argument to the H5T_convert() calls. The
	stride is always zero, which means that the source and
	destination data values are packed.

./configure.in
./configure			[REGENERATED]
	If API tracing is turned off then libhdf5.settings will say
	`no' instead of nothing.

./test/flush1.c
./test/flush2.c
	Added better error messages in a couple places.
1999-06-18 10:12:18 -05:00
Robb Matzke
dedc8c37b4 [svn-r944] Changes since 19981120
----------------------

./MANIFEST
./test/Makefile.in
./test/shtype.c		[REMOVED]
	Removed shtype.c because it was all commented out.  Besides,
	these tests are done in dtypes.c now anyway.

./test/external.c
./test/fillval.c
./test/flush1.c
./test/flush2.c
./test/links.c
./test/mount.c
./test/mtime.c
./test/unlink.c
	The tests that check the HDF5 API use the h5test support
	functions. For one thing, that means that you can specify the
	file driver that thay use by the HDF5_DRIVER environment
	variable. Possible values are:

	    HDF5_DRIVER='sec2'		Use read() and write()
	    HDF5_DRIVER='stdio'		Use fread() and fwrite()
	    HDF5_DRIVER='core'		Use malloc() and free()
	    HDF5_DRIVER='split'		Split meta and raw data
	    HDF5_DRIVER='family N'	Use file families with each
					member being N megabytes (N
					can be fractional, defaults to
					one).

	Some tests might fail for certain drivers: for instance, the
	mount and link tests fail for the `core' driver because
	they must be able to close and then reopen a file.
1998-11-23 15:40:35 -05:00
Robb Matzke
7488c6366e [svn-r936] Changes since 19981119
----------------------

./src/H5.c
./src/H5A.c
./src/H5AC.c
./src/H5B.c
./src/H5D.c
./src/H5E.c
./src/H5F.c
./src/H5Farray.c
./src/H5Fcore.c
./src/H5Ffamily.c
./src/H5Fistore.c
./src/H5Flow.c
./src/H5Fmpio.c
./src/H5Fsec2.c
./src/H5Fsplit.c
./src/H5Fstdio.c
./src/H5G.c
./src/H5Gent.c
./src/H5Gnode.c
./src/H5Gstab.c
./src/H5HG.c
./src/H5HL.c
./src/H5I.c
./src/H5Iprivate.h
./src/H5MF.c
./src/H5MM.c
./src/H5O.c
./src/H5Oattr.c
./src/H5Ocomp.c
./src/H5Ocont.c
./src/H5Odtype.c
./src/H5Oefl.c
./src/H5Ofill.c
./src/H5Olayout.c
./src/H5Omtime.c
./src/H5Oname.c
./src/H5Osdspace.c
./src/H5Oshared.c
./src/H5Ostab.c
./src/H5P.c
./src/H5R.c
./src/H5RA.c
./src/H5S.c
./src/H5Sall.c
./src/H5Shyper.c
./src/H5Smpio.c
./src/H5Snone.c
./src/H5Spoint.c
./src/H5Sselect.c
./src/H5T.c
./src/H5TB.c
./src/H5Tbit.c
./src/H5Tconv.c
./src/H5V.c
./src/H5Z.c
./src/H5detect.c
./src/H5private.h
	Most of these changes are because the `interface_initialize_g'
	variable change from hbool_t to int.  It's a one line change.

	Changed the way the library is closed so we have more control
	over the order the interfaces are shut down.  Instead of
	registering an atexit() function for every interface in some
	haphazard order we just register one: H5_term_library() which
	then calls the H5*_term_interface() functions in a
	well-defined order.

	If the library is closed and then reopened repeatedly by
	calling H5close() and H5open() in a loop we only add one copy
	of the library termination functions with atexit().

	Termination is a two-step process in order to help detect
	programming errors that would cause an infinite loop caused by
	the termination of one interface waking up some other
	previously terminated interface.  The first step terminates
	the interface and *marks it as unusable*.  After all
	interfaces are terminated then we mark them all as usable
	again.  The FUNC_ENTER() macro has been modified to return
	failure or to dump core (depending on whether NDEBUG is
	defined) if we try to call an interface while it's shutting
	down.

./src/H5.c
	The H5dont_atexit() function returns failure if it's called
	more than once or if it's called too late.  However, the error
	stack is not automatically printed on failure because the
	library might not be initialized yet

./test/chunk.c
./test/flush1.c
./test/flush2.c
./test/iopipe.c
./test/overhead.c
./test/ragged.c
	Changed the extra cast for Win32 so we do floating point
	division again -- it was just confusion about precedence and
	associativity of casting and the C coercion rules. Removed
	extra carriage returns inserted by broken operating system.

./src/H5Ffamily.c
	Fixed an bug where H5F_fam_write() lowered the EOF marker for
	one of the family members causing H5F_fam_read() to read
	zeros.

./test/h5test.h		[NEW]
./test/h5test.c		[NEW]
./test/Makefile.in
./test/bittests.c
./test/cmpd_dset.c
./test/dsets.c
./test/dtypes.c
./test/extend.c
./test/external.c
	Support library for test files.  This isn't done yet but
	Katie's contractions are ~10 minutes apart so I figured I
	better back this stuff up just in case I'm not here next
	week...

	Eventually all test files will understand HDF5_DRIVER to name
	the low level file driver and parameters so we can easily test
	various drivers.  They will also understand HDF5_PREFIX to
	prepend to the beginning of file names which is necessary for
	testing ROMIO with various drivers. Also, the cleanup function
	will know how to use the file name prefix and will understand
	different file driver naming schemes like file families. I'm
	not sure they'll understand the `gsf:' type prefixes yet.

	Note, the external test is completely commented out because
	I'm in the middle of modifying it.  It will still compile and
	run but it doesn't test anything at the moment.
1998-11-20 22:36:51 -05:00
Patrick Lu
b31cc0e3ab [svn-r932] added a cast for the (__int64)->double. 1998-11-19 14:17:26 -05:00
Robb Matzke
e0dfe872a0 [svn-r929] Changes since 19981119
----------------------

./test/flush2.c
./test/overhead.c
	Removed carriage-returns inserted by a broken operating system.

./test/big.c
./test/mtime.c
./test/ragged.c
./tools/h5ls.c
	Removed inclusion of <H5config.h>, system header files, and definition
	of __unused__ since this all happens in <H5private.h>.

./test/chunk.c
./test/cmpd_dset.c
./test/dsets.c
./test/dtypes.c
./test/extend.c
./test/external.c
./test/fillval.c
./test/flush1.c
./test/flush2.c
./test/iopipe.c
./test/links.c
./test/mount.c
./test/overhead.c
./test/shtype.c
./test/unlink.c
./tools/h5import.c
./tools/h5repart.c
	Removed inclusion of <H5config.h> since <hdf5.h> includes it.

./test/flush1.c
	Includes <stdlib.h>, protects inclusion of <unistd.h> by using
	HAVE_UNISTD_H instead of STDC_HEADERS.
1998-11-19 13:52:56 -05:00
Robb Matzke
254ae8d43d [svn-r859] Changes since 19981030
----------------------

./MANIFEST
	Added new Pablo files HDF5record_RT.h and ProcIDs.h

./acconfig.h
./configure		[REGENERATED]
./configure.in
./src/H5.c
./src/H5Vprivate.h
./src/H5config.h.in	[REGENERATED]
./src/H5private.h
./src/H5public.h
./test/big.c
	Added more configuration stuff for the Win32 environment. Removed all
	the #ifdef WIN32 from the source and replaced them with OS-independent
	stuff.  Specifics follow:

	Check for non-Posix.1 `st_blocks' field in `struct stat' which is used
	by the big file test to decide if the file system supports holes.  If
	the st_blocks field isn't present then we just skip the test.

	Configure checks for <io.h> <sys/resource.h> <sys/time.h> and
	<winsock.h> and defines HAVE_IO_H, HAVE_SYS_RESOURCE_H,
	HAVE_SYS_TIME_H and HAVE_WINSOCK_H when they're found.

	Configure checks whether both <sys/time.h> and <time.h> can be
	included and defines SYS_TIME_WITH_TIME if so.  Otherwise include only
	<sys/time.h> or <time.h> even if both exist.

	Configure checks sizeof(__int64) and defines SIZEOF___INT64 to the
	result or to zero if __int64 isn't defined.  The source uses `long
	long' in preference to `__int64'.

	Removed null WIN32 definition for `inline' since such a definition
	already exists in H5config.h

	Protected gettimeofday() calls in debugging code with
	HAVE_GETTIMEOFDAY instead of WIN32.

./src/H5F.c
./src/H5Flow.c
./src/H5Fmpio.c
./src/H5Fsec2.c
./src/H5Fstdio.h
./src/H5P.c
./src/H5Tconv.c
./src/H5private.h
	Removed #include of system files from library source files and
	consolodated them into H5private.h where they're protected by various
	configuration macros (most of them were duplicated there already
	anyway).

./test/big.c
./test/chunk.c
./test/cmpd_dset.c
./test/dsets.c
./test/dtypes.c
./test/extend.c
./test/external.c
./test/fillval.c
./test/flush1.c
./test/flush2.c
./test/iopipe.c
./test/links.c
./test/mount.c
./test/mtime.c
./test/overhead.c
./test/ragged.c
./test/shtype.c
./test/unlink.c
	Protected system #include's with #ifdef's from H5config.h.

	Undefined NDEBUG since some of the tests rely on assert() to check
	return values.

	Removed WIN32 definitions for __unused__ since this can be controlled
	by the definition of HAVE_ATTRIBUTE in H5config.h

./test/testhdf5.h
	Removed the CLEAN_CMD definition because we no longer use it.
	Albert's cleanup() functions replaced it.

./test/fillval.c
	Initialized auto hid_t variables to fix warnings in error recovery
	code when data flow analysis is turned on in compilers.

./test/h5tools.c
	Initialized an auto variable to fix a compiler warning.

./test/chunk.c
./test/ragged.c
	The WIN32 had some unsigned variables changed to signed because the
	compiler generates warnings when coercing unsigned to double(?).  I
	changed them back to unsigned because they really are unsigned
	quantities. If this the change was just to shut up extraneous warnings
	then perhaps a compiler flag can do the same; otherwise if the
	compiler generates bad code then we should supply a patch file instead
	messing up source code with bug work-arounds.

./src/H5detect.c
	Protected system #include's with #ifdef's from H5config.h thereby
	removing a WIN32.

	If getpwuid() doesn't exist (HAVE_GETPWUID) then we assume that
	`struct passwd' doesn't exist either (we don't really need it in that
	case).

	The H5T_NATIVE_LLONG and H5T_NATIVE_ULLONG are defined in terms of
	`long long' or else `__int64' or else `long' depending on what's
	available.

./src/H5Flow.c
./src/H5Ofill.c
	Added __unused__ to some function arguments that aren't used when
	assertions are turned off.

./src/H5V.c
	Changed an auto variable name in some hand-inlined code to get rid of
	a warning about the variable shadowing a previous auto.
1998-11-02 12:58:28 -05:00
Robb Matzke
db9525c2a3 [svn-r789] Changes since 19981023
----------------------

./MANIFEST
./test/Makefile.in
./test/flush1.c			[NEW]
./test/flush2.c			[NEW]
	Test to see if calling H5Fflush() results in a consistent
	file.

./src/H5.c
./src/H5A.c
./src/H5D.c
./src/H5Fistore.c
./src/H5I.c
./src/H5S.c
./src/H5Shyper.c
./src/H5Sselect.c
./src/H5TB.c
	Changed comparisons against SUCCEED and FAIL to >=0 and <0 in
	about 15 places.

./src/H5.c
./src/H5V.c
./src/H5detect.c
./src/H5private.h
./src/H5public.h
./test/big.c
./test/chunk.c
./test/cmpd_dset.c
./test/dsets.c
./test/dtypes.c
./test/external.c
./test/fillval.c
./test/iopipe.c
./test/links.c
./test/mount.c
./test/mtime.c
./test/ragged.c
./test/shtype.c
./test/unlink.c
	Removed ^M from the end of lines inserted on broken OS's ;-)

./src/H5private.h
	Changed c++ comments to c comments.

./src/H5R.c
	Added tracing macros.
1998-10-26 09:49:52 -05:00