Commit Graph

436 Commits

Author SHA1 Message Date
Quincey Koziol
24725d64aa [svn-r12668] Description:
Re-run 'bin/reconfigure' script after recent checkins

Tested on:
    none - shouldn't have any affect on compilation
2006-09-15 15:06:01 -05:00
Frank Baker
749a0b9c17 [svn-r12640]
Description:
    Add per-directory abbreviated copyright notices 
    (abbreviated COPYING files pointing to full notices).
Tested:
    MANIFEST verified; not otherwise tested.
2006-09-04 13:30:13 -05:00
James Laird
9d4229713e [svn-r12608] Checked in External Link C examples.
Since these examples need to follow filesystem paths, the Makefiles need
to create directories in the examples directory; added this to the
Makefile.am.

Tested on Windows, mir, juniper
2006-08-22 11:22:43 -05:00
John Mainzer
db9759bd10 [svn-r12594] Added small parallel test for modification of H5C_insert_entry() allowing
insertion and pinning of a cache entry in one call.

h5commit tested
2006-08-17 16:59:49 -05:00
James Laird
e5bc52d890 [svn-r12584] Mentioned VFD in test output to make it easier to tell which VFD is being used
when a test is run.

Running reconfigure also regenerated error header files (because someone edited
them manually?).
2006-08-17 09:18:03 -05:00
MuQun Yang
00b54cf131 [svn-r12554] New tests have been added to test the correctness of independent IO with file setview.
To activite this test,
add the command option -i.
For example, at IBM AIX, type "poe testphdf5 -i" will test the library with independent IO with file setview. It simply replaces all the collective IO tests with independent IO with file setview.
2006-08-08 22:16: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
John Mainzer
801b5b09f2 [svn-r12462] Committed a variety of metadata cache related changes:
1) Added trace file support to the metadata cache.  This allows capture
   of all metadata cache calls in trace files for purposes of optimization
   and debuging.

2) Added an expunge entry function.  This allows an entry to be deleteded
   from the cache without writing it to disk even if it is dirty.

3) Added a function call to resize pinned entries.

4) Added code to deal with entries that are dirty on load.  This is
   needed in support of a bug fix which can alter object headers on
   load to repair files.

5) Added progress reporting code to the "MDC API smoke check" test in
   cache_api.c.  To enable the progress reporting, set report_progress
   to TRUE in mdc_api_call_smoke_check().

Tested with h5committest, and a parallel test on phoenix (dual athelon
linux box).
2006-07-13 12:59:39 -05:00
Quincey Koziol
7be3afb278 [svn-r12440] Purpose:
Code cleanup

Description:
    Trim trailing whitespace in Makefile.am and C/C++ source files to make
diffing changes easier.

Platforms tested:
    None necessary, whitespace only change
2006-06-27 09:45:06 -05:00
James Laird
64b5d95251 [svn-r12431] Purpose:
Configuration feature

Description:
'make install' now tests both static and shared libraries if both are installed.

Solution:
Previously, shared libraries were only tested when static libraries were not installed.
Also cleaned up line in commence.am that was including HL library in all Makefiles.

Platforms tested:
mir (Makefile change only)
2006-06-21 18:15:08 -05:00
James Laird
a31e264f89 [svn-r12411] Purpose:
Bug fix - bugzilla #552

Description:
On Cray X1, trying to use : as an argument confused the system.

Solution:
Added a test in configure to see if : as an argument is bad.
If so, skipped the test.

Platforms tested:
mir, Cray X1 (change to configure only)
2006-06-13 16:21:14 -05:00
Albert Cheng
bb2b806485 [svn-r12407] Purpose:
slight cleanup.

Description:
Changed the name of write type from write to write_pattern.

Platforms tested:
h5committested.
2006-06-06 10:24:38 -05:00
Albert Cheng
fbb0267346 [svn-r12405] Purpose:
Bug fix.

Description:
It failed when only 1 is used to test.

Solution:
Cleanup the code a little so that it works for any number
of processes to invoke it.

Platforms tested:
h5committested,
2006-06-06 01:55:26 -05:00
MuQun Yang
681d0a964c [svn-r12401] Purpose:
Some collective chunk IO macro names are confusing, change them to more meaningful
names.

Description:
H5Pset_dxpl_mpio_chunk_opt will set a flag so that the library can do one linked IO or mul
ti-chunk IO with collective in chunking storage directly. That is, the library won't do an
alyses to determine this.

The flags for the enum type we used before are:
H5FD_MPIO_OPT_ONE_IO
H5FD_MPIO_OPT_MULTI_IO

They are not good names because of the following two reasons:

1. It doesn't reflect chunking storage
2. OPT is kind of redundant and misleading,
Solution:
We change the names to
H5FD_MPIO_CHUNK_ONE_IO
H5FD_MPIO_CHUNK_MULTI_IO

Platforms tested:
Since only macro names are changed, no need to test with h5committest.
Misc. update:
2006-06-03 13:40:47 -05:00
Albert Cheng
849a6c299d [svn-r12396] Purpose:
Bug fix.

Description:
Sometimes the parallel prefix is given in the form of nfs:/mnt/pfs which
if given to a non-MPIO VFD like the default H5Fcreate, it would fail.
Called h5_rmprefix which would return the non-prefix component
part of the file name which would be okay for the default H5Fcreate and
such.

Platforms tested:
Tested in heping parallel.
2006-06-01 17:57:29 -05:00
Albert Cheng
8698c5ce5e [svn-r12380] Purpose:
Feature
(Code and tests are done by Christian.  I just committed the code.)

Description:
Rewrote the purpose of this test. Now it tests these three cases,
/*
 * Test following possible scenarios,
 * Case 1:
 * Sequential create a file and dataset with H5D_ALLOC_TIME_EARLY and large
 * size, no write, close, reopen in parallel, read to verify all return
 * the fill value.
 * Case 2:
 * Sequential create a file and dataset with H5D_ALLOC_TIME_EARLY but small
 * size, no write, close, reopen in parallel, extend to large size, then close,
 * then reopen in parallel and read to verify all return the fill value.
 * Case 3:
 * Sequential create a file and dataset with H5D_ALLOC_TIME_EARLY and large
 * size, write just a small part of the dataset (second to the last), close,
 * then reopen in parallel, read to verify all return the fill value except
 * those small portion that has been written.  Without closing it, writes
 * all parts of the dataset in a interleave pattern, close it, and reopen
 * it, read to verify all data are as written.
 */

Platforms tested:
Tested in copper, tg-ncsa and heping, all in parallel mode.
2006-05-26 17:11:00 -05:00
John Mainzer
a415cc6b17 [svn-r12374] Purpose:
1) Check in potential fix to unreproduceable bug in t_cache observed on
   Cobalt

2) Check in code supporting added pinned entry features in the metadata
   cache.


Description:

1) Elena encountered a bug in t_cache when running on Cobalt.  On
   investigation I found a potential race condition in t_cache that
   could explain her observation.

2) Quincey requested additions to the metadata cache allowing renaming
   of pinned entryies, and marking of pinned or protected entries as
   dirty.


Solution:

1) Modified t_cache.c to prevent the potential race condition.  Elena
   was unable to reproduce the bug on Cobalt, so we don't know if my
   fix actually addressed the problem.

2) Added code supporting the requested functions.  The changes were
   relatively trivial, but required substantial new test code.


Platforms tested:

h5committest, serial test on heping, parallel test on phoenix.


Misc. update:
2006-05-24 02:36:28 -05:00
Albert Cheng
56c0a0f993 [svn-r12358] Purpose:
Bug fix.

Description:
The ${TR}, though avoid the error, is inconvenient.  It is needed
because configure.in use the char range in the style of 'a-z'.
The other style of '[a-z]' is more commonly accepted by all tr
but autoconf tends to strip away [], making the syntax rather
clumsy.

Solution:
Learned from autoconf that it avoids the use of character range
by just spell all the letters out.  Changed our tr commands to
use those variables defined by autoconf.  Also removed the
definition of ${TR} since it will cause inconsistancy when
autoconf also use plain 'tr' in its generated code.

The Makefile.in are changed because the elimination of ${TR} from
configure triggered its removal from all Makefil.in.  That is okay
because ${TR} is not used at all in Makefile.

Platforms tested:
h5committested. (sol failed to connected). also tested in shanti
using both /usr/ucb/tr and /bin/tr (the bad one before.)

Misc. update:
Updated both INSTALL and RELEASE files.
2006-05-19 07:22:07 -05:00
John Mainzer
720f6cb065 [svn-r12321] Purpose:
Bug fix


Description:

Fix two test bugs:

1) Unitialized variable bug in test of H5C_get_entry_status()
   (in test/cache.c)

2) Incorrect initialization of constant in t_cache when running
   with MPE. (in testpar/t_cache.c)


Solution:

1) Don't test uninitialize variable.

2) Correct initialzation of constant in MPE case.


Platforms tested:

Tested on Heping and Copper.


Misc. update:
2006-05-02 01:06:38 -05:00
Quincey Koziol
eb96132022 [svn-r12316] Purpose:
Code cleanup/feature twist

Description:
    Adjust recent H5AC routines to take H5F_t pointers instead of H5C_t
pointers, to match the rest of the H5AC routines.

    This change propagated into a few of the tests, which also had some
compiler warnings cleaned up...

Platforms tested:
    FreeBSD 4.11 (sleipnir) w/parallel
    Linux 2.4/64 (mir) w/C++ & FORTRAN
2006-04-29 14:28:23 -05:00
John Mainzer
8a7b9b3221 [svn-r12311] Purpose:
Add pinned entry capability to cache.


Description:

For frequently accessed cache entries, the protect/unprotect overhead
is sometimes a bottleneck.


Solution:

Allow entries to be pinned in the cache.  Pinned entries can't be
evicted, but can be flushed or modified.


Platforms tested:

h5committested -- minus one small typo in test/cache.c whose fix was
                  tested on copper and heping only.


Misc. update:
2006-04-28 08:27:54 -05:00
James Laird
91e56dc68d [svn-r12295] Purpose:
Several bug fixes

Description:
Added config file for Cray X1 (previous file was misnamed)
Simplified some code in hyperslab.c test that seemed to have been
confusing compiler on Cray X1.
Fixed typo in config/commence.am
Cleaned up hl/src/Makefile.am

Solution:
All four fixes should be straightforward.  The failure on Cray was
very difficult to debug, but involved arithmetic errors.
This change seems to fix it.

Platforms tested:
heping, copper, sol, some Cray X1 (more testing when system comes back up)
2006-04-21 14:21:24 -05:00
Quincey Koziol
d7573cbc85 [svn-r12292] Purpose:
Code maintenance

Description:
    Remove flexible parallel code

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Linux 2.4 (heping)
    Solaris 2.9 (shanti)
    Linux 2.4/64 (mir)
2006-04-20 18:54:47 -05:00
Pedro Vicente Nunes
bc66efc788 [svn-r12229] Purpose:
new feature

Description:
1) separated the HL library into "public" and "private" header files, with the same caracteristics as the basic library
2) added the public headers to hdf5.h (with a conditional include macro, defined in configure.in)
3) added the path to HL in all Makefile.am 's , because of the inclusion in hdf5.h

Solution:

Platforms tested:
linux 32, 64
AIX
solaris
with fortran and c++

(one packet table example fails)

Misc. update:
2006-04-12 16:21:38 -05:00
Albert Cheng
246b280cd6 [svn-r12227] Purpose:
bug fix.

Description:
The MPE_Stop_log did not work in copper.  It spewed out MPE errors
and ended in infinite looping.

Solution:
Changed to a smaller test size to avoid generating huge MPE log files
when MPE is configured in.

Platforms tested:
Copper (mpe)

Misc. update:
2006-04-12 13:41:08 -05:00
Albert Cheng
6952f48096 [svn-r12224] Purpose:
Bug fix.

Description:
When MPE is used, the test generates huge Clog files in /tmp that
could fill up the disk (like in Copper.)

Solution:
Turned off MPE logging.

Platforms tested:
heping (pp) and copper(pp)

Misc. update:
2006-04-11 15:01:58 -05:00
MuQun Yang
117dbae7f8 [svn-r12174] Purpose:
Adding parallel tests for optional collective chunk APIs

Description:
Three new APIs
"H5Pset_dxpl_mpio_chunk_opt_ratio
H5Pset_dxpl_mpio_chunk_opt_num
H5Pset_dxpl_mpio_chunk_opt"
for optional optimization choices from users
have been added to the libraries.

This check-in adds six tests to verify the funcationality and correctedness
of these APIs.
These tests need to be verified with 3 or more processors and with MPI-IO driver only.


Solution:
Using H5Pinsert, H5Pget, H5Pset to verify that the library indeed goes into the branch we hope for.
Using H5_HAVE_INSTRUMENT macro to isolate these changes so that it won't affect or be misused by the application.

Platforms tested:
h5committest(shanti still refused to be connected)
Parallel tests on heping somehow are skipped. Manually testing at heping. Have checked
1,2,3,4,5 processes.

Misc. update:
2006-03-29 09:35:26 -05:00
James Laird
93aa12407f [svn-r12149] Purpose:
Bug fix

Description:
Previous checkin did a bad thing; 'make clean' failed in example directories.

Solution:
Fixed commence.am so that examples no longer break, and fixed a mistake
in conclude.am.

Platforms tested:
heping (minor makefile change)

Misc. update:
2006-03-23 16:26:17 -05:00
MuQun Yang
b22b47ced5 [svn-r12148] Purpose:
Add tests for optional APIs to support collective chunk IO

Description:

In order to test whether library picks up the user's options,
The number of chunks need to be varied for different processes,
Selection of the number of processes selected in one chunk also
need to be varied.
Solution:
Create two cases,

1. Each chunk only selected by one unique process, this case
library should use independent for collective call.
2. One-third of the processes occupies the top half of the whole domain,
   The rest of the processes occupies the lower half of the domain.
   The total number of chunk is a fixed number 8.

Platforms tested:
Linux 2.4 with mpich 1.2.6(only)

Since I only checked in the code that handles the selection, haven't added any new tests yet. So it won't affect any platforms.


Misc. update:
2006-03-23 16:18:02 -05:00
James Laird
524d25498f [svn-r12143] Purpose:
Bug fix

Description:
make check-clean didn't clean results of example tests

Solution:
Fixed Makefiles so that check-clean recurses into example directories.
Also a little Makefile cleanup.

Platforms tested:
mir, modi4, heping, copper
2006-03-23 09:22:34 -05:00
MuQun Yang
15f0a2e95c [svn-r12142] Purpose:
change the array size of collective chunking features of parallel tests.

Description:
Previously array size for collective optimization tests
including
cchunk1,
cchunk2,
cchunk3,
cchunk4,
ccontw,
ccontr,
cschunkw,
cschunkr,
ccchunkw,
ccchunkr

are fixed,
They are only valid for some good number of processors(1,2,3,4,6,8,12,16,24,32,48 etc).
Recently there are more requests for parallel tests to be valid on some odd number of processes such as 5,7,11,13 etc.


Solution:
I change the array size to be dynamic rather than static. Now the fastest change array size is a function of mpi_size. dim2 = constant *mpi_size. After some tunings, theoretically the above tests should be valid for any number of processors. However, other parallel tests still need to be tuned.

To verify the correctness of these tests, using mpirun -np 5 ./testphdf5 -b cchunk1 at heping.
Platforms tested:
h5committest(shanti is refused to be connected)
at heping, 5 and 7 processes are used to verify the correctness.

Misc. update:
2006-03-22 21:50:09 -05:00
MuQun Yang
0f0a5eb918 [svn-r12044] Purpose:
Add new tests

Description:
Collective IO doesn't work for some platforms/mpio packages when more than
one process has no contributions to IO.
Solution:
1. Add a collective IO test to verify the correctness of the library when
   more than one process has no contributions to IO.
2. Add the similar MPI-IO test in t_mpi to help us maintain in more platforms.
Platforms tested:
heping, mir, copper
Misc. update:
2006-03-09 09:52:09 -05:00
Albert Cheng
516c242b04 [svn-r11992] Purpose:
Improvement.

Description:
The t_cache takes a long long time to run and it tests HDF5 calls.
Move it to the back and let more basic tests to run first so that
basic features are tested first.

Platforms tested:
Tested in heping with pp.
2006-03-01 00:54:07 -05:00
MuQun Yang
caefcc2133 [svn-r11953] Purpose:
code cleanup

Description:
remove two printf lines accidently added for debugging at NCSA cobalt.

Solution:

Platforms tested:
No need to test.

Misc. update:
2006-02-17 15:55:20 -05:00
MuQun Yang
25837d324e [svn-r11951] Purpose:
Enhance collective chunk IO supports

Description:
Add a new test to check the correctness of the HDF5 library behavior for collective IO mode when one process doesn't have any contribution for IO.

Solution:

Platforms tested:
IBM AIX 5.2(copper)
Linux (heping) mpich-1.2.6


Misc. update:
2006-02-16 12:12:08 -05:00
John Mainzer
42d4edcb4a [svn-r11915] Purpose:
Attempt to ensure that the parallel cache test runs at a reasonable
speed with large numbers of processors.

Description:

In some cases, the number of random locks and unlocks was a multiple of
the MPI rank.

Solution:

Use rank % 4 instead of simply rank.

Platforms tested:
copper

Misc. update:
2006-01-31 16:09:37 -05:00
John Mainzer
43df732a9b [svn-r11904] Purpose:
Add a file that I forgot in my last checkin.

Description:

t_cache.c is the source file for the new parallel metadata cache test.


Solution:

See above.

Platforms tested:

h5committested before the last checkin.  Will run another
h5committest shortly, but it shouldn't be necessary as there
are no new changes.

Misc. update:
2006-01-28 21:34:52 -05:00
John Mainzer
dfb1f40cbb [svn-r11897] Purpose:
1) Add parallel test for metadata cache

2) Split serial test for metadata cache into two parts

3) Fix bug in which cache was flushed needlessly when the
   cache wasn't full.

4) Performance improvements

5) Update API for parallel cache coherency bug fix.

Description:

See above.

Solution:

See above.

Platforms tested:

h5committest


Misc. update:
2006-01-27 17:58:48 -05:00
Albert Cheng
16ec392760 [svn-r11866] Purpose:
bug fix 504

Description:
testpar/t_mpi would hang if  $HDF5_NOCLEANUP is set.  E.g.,
% env HDF5_NOCLEANUP=yes mpirun -np 3 ./t_mpi

This happened because the environment variables are not exported to all
mpi processes by the mpirun command.  So, some attempted to do cleanup
while others don't and some hang waiting for others to act.

Solution:
Instead individual program checking getenv, they all just called h5_cleanup
no matter.  h5_cleanup now uses getenv_all to check the $HDF5_NOCLEANUP if
it is in parallel mode.

Platforms tested:
h5committested, tested pp in heping too.
2006-01-06 09:52:25 -05:00
Albert Cheng
a735b263d3 [svn-r11798] Purpose:
Feature.

Description:
Modified it so that it can be compiled outside of HDF5 library as a standalone
program.  e.g., mpicc -DSTANDALONE prog.c.

Platforms tested:
Tested in Red storm and heping.
2005-12-16 03:08:54 -05:00
Albert Cheng
cfbc02d030 [svn-r11788] Purpose:
Patch.

Description:
Copper would fail with a message of
0032-113 Out of memory  in routine unknown, task 0
when run with 3 processes and size 1MB in MPI-IO tests.
It seems to be a copper MPIO error.

Solution:
Reduced the upper bound of default write size to 1/2MB (but
tests only go to 1/4MB) for now, pending permenant fix from
Copper.

Platforms tested:
Copper.
2005-12-12 14:42:34 -05:00
Leon Arber
8d90fdaf96 [svn-r11786] Purpose:
Minor bug fixes.

Description:
1.  Changed free() calls to HDfree()
2.  Corrected behavior of -m command-line parameter
3.  Changed return value to always return 0.

Solution:

2.  The -m flag tells the test to run only the MPI IO tests.  However, it would incorrectly make
the test run both the MPI and POSIX tests (same as the default behavior).

3.  This test is known to fail on many platforms, and, even on those platforms where it usually passes,
it is known to suffer transient failures (especially with small test file sizes).  It's outcome is
also very dependent on the filesystem on which the testfile is created.  Corrected
the program to always return success, so that it doesn't interfere with the daily tests.

The motivation for this is that
this test has nothing to do with the HDF library and is an auxiliary test.  Failures in t_posix_complaint
do not necessarily mean that parallel HDF will fail, but simply indicate something to look into,
especially on new platforms.  This is now an "output only" test, and any errors will be only be visible
in the output.

Platforms tested:
copper (all of these were minor changes)

Misc. update:
2005-12-11 13:40:07 -05:00
Albert Cheng
8ec440e959 [svn-r11783] Purpose:
bug fix.

Description:
Fixed the segmentation fault errors in modi4, copper and tg-login.
It was due to the misuse of trying to realloc a pointer returned by
getenv_all. (not supposed to.)

Also rearranged the code so that option is checked first, then check
with environment variable, then use default setup.  This saves the
need to do realloc at all.

Platforms tested:
Heping, modi4, shanti, copper (copper showed a different error now.)
2005-12-10 23:28:31 -05:00
Leon Arber
4d6d659c41 [svn-r11778] Purpose:
Bug fix.

Description:
For some strange reason, getopt() does not appear to be defined in unistd.h
on colonelk when the source is compiled with -D_POSIX_SOURCE.


Solution:
Inserted some extern's for the missing variables to make the compiler happy.

Platforms tested:
colonelk, copper

Misc. update:
2005-12-08 16:44:55 -05:00
Leon Arber
1ff1d02c68 [svn-r11777] Purpose:
Feature

Description:
Added blurb about future todo's for this test.

Added support for HDF5_PARAPREFIX to determine the directory where the test file
is stored.

Solution:
Used getenv_all to get the value of HDF5_PARAPREFIX.  Note that, if a command-line
parameter is passed to the program to specify a path, it will override the value of
HDF5_PARAPREFIX.

Platforms tested:
copper, colonelk

Misc. update:
2005-12-08 16:24:51 -05:00
Leon Arber
3f766acd0c [svn-r11776] Purpose:
Added t_posix_compliant to the rest of the build and patched up minor
compile bugs/warnings encountered on other platforms.

Description:
It seems that <getopt.h> needs to be included to get the file to build, even though the man page
seems to indicate that <unistd.h> should be sufficient.

Solution:

Platforms tested:
copper, colonelk, sol
2005-12-08 15:33:19 -05:00
Leon Arber
5e58d47b98 [svn-r11772] Purpose:
Feature

Description:
Added posix compliance tests.

Solution:
These tests do increasingly complicated sets of writes followed by reads.
POSIX standards say that any read that can be proven to occur after a write
must include the data in that write.  These tests attempt to verify whether the
underlying filesystem and i/o layer provide such guarantees.


Platforms tested:
copper, colonelk, red storm

Misc. update:
2005-12-08 14:14:28 -05:00
James Laird
0f870b0f47 [svn-r11741] Purpose:
Bug fix

Description:
Fortran type generation was broken in two ways.  Fixed both.

Solution:
Firstly, there were a couple of path problems.  Fixed a typo and
specified the full path of a file.
Secondly, the dependencies weren't right when building with HDF5-specific
commands (make lib, make check-s, etc.).  Tweaked dependencies
to fix the problem.

Platforms tested:
mir, modi4, sleipnir
2005-11-18 15:31:53 -05:00
James Laird
4f8ca8e026 [svn-r11738] Purpose:
Configure feature

Description:
Added 'make trace' target.

Solution:
Added tracing to 1.7.  This was done automatically in 1.6, but left out
of 1.7 until now (oops!).
Tracing in 1.7 only happens manually, when the user types 'make trace.'
Tracing automatically requires more framework than it's worth.
I also fixed a couple of tracing bugs and ran trace.

Platforms tested:
mir, sleipnir, modi4

Misc. update:
2005-11-18 10:55:22 -05:00
James Laird
75ea10e5f5 [svn-r11737] Purpose:
Bug fix

Description:
Before this checkin, 'gmake check-s' would fail if there was a file in
the current directory named 'check-s'.
This is fixed under gmake (not sure how to fix for other makes).

Solution:
check, progs, install, etc. are what gmake calls "phony" targets,
which means that no file should be created.  These targets can be
specified by a line of the form
.PHONY: check progs install ...
Automake adds this line for targets it knows about, but HDF5 has a
lot of custom rules.  This checkin adds a .PHONY line for those rules.
I believe that only gmake recognizes the .PHONY line (at least, pmake
doesn't seem to), but a partial solution is better than none.
This error should occur very rarely anyway (the user has to manually
create files with names like 'build-check-s' or '_test').

Platforms tested:
mir, sleipnir, modi4
2005-11-17 13:49:28 -05:00
James Laird
617522e467 [svn-r11646] Purpose:
Bug fix/feature

Description:
Added support for -shlib in h5fc and h5c++.
Made check-install use -shlib when only shared libraries have been installed.

Solution:
h5fc and h5c++ didn't recognize -shlib.  Stole code from h5cc to link against
shared libraries.
When static libraries are disabled, the examples Makefiles will automatically
use the -shlib option to link against shared libraries.  Thus,
--disable-static and make check-install should work together.

Platforms tested:
heping(disable-static, enable-static, fortran, c++), modi4 (disable-static, fortran, c++, parallel, enable-static)
2005-10-31 16:35:49 -05:00
James Laird
91cbcdf42f [svn-r11612] Purpose:
Bug fix

Description:
Failed parallel tests now cause make to exit with an error.

Solution:
Edited config/conclude.am to throw an error if parallel test programs fail.

Platforms tested:
heping, modi4
2005-10-27 17:30:46 -05:00
James Laird
69293e09df [svn-r11602] Purpose:
Bug fix

Description:
Removed detection of pdb from configure.in as a corollary to removal
of pdb2hdf5 tool.


Platforms tested:
mir, modi4
2005-10-24 14:31:06 -05:00
MuQun Yang
a1d3ff30ac [svn-r11576] Purpose:
Adding comments and code clean-up for code that tests collective irregular selection

Description:
For better maintenance in the future, Add comments to list the number for
(start,count,block,stride) for irregular selection for effective testing
collective chunk IO feature development in the future.

Solution:

Platforms tested:
Linux 2.4(heping), mostly comments, no need to test on other platforms.



Misc. update:
2005-10-18 10:47:13 -05:00
James Laird
87a56d9da2 [svn-r11573] Purpose:
Bug fix

Description:
Changed configure.in to use an environment variable TR to set the path
to the tr utility.

Solution:
There are two kind of tr on Solaris with slightly different syntax.
HDF5's configure relies on the "standard" tr.  Traditionally, HDF5ers
have needed to make sure that the "right" tr was found before the
wrong one in their path; now they can use an environment variable.

Platforms tested:
mir, shanti, sol

Misc. update:
Forgot to update release notes.  Off to do that now.
2005-10-17 16:38:38 -05:00
MuQun Yang
d8c3b5b771 [svn-r11572] Purpose:
Code clean-up for collective regular chunk IO tests.

Description:
Add descriptions for each tests for future maintenance.

Solution:

Platforms tested:
Mostly comments, No need to use h5committest.
heping(linux 2.4)

Misc. update:
2005-10-17 15:48:16 -05:00
James Laird
bcf3f797d4 [svn-r11566] Purpose:
Makefile bug fix

Description:
Previously, automake didn't output rules to build perform/mpi-perf or
the test/gen_* programs.
Now these can be built by typing 'make mpi-perf' (or 'make foo') or by
configuring with --enable-build-all.

Solution:
Automake doesn't like having rules for programs it doesn't build.  Tricked
it by having these programs built "sometimes"--whenever the user enables
--build-all.  This should be used mostly for testing and to ensure that
these helper programs compile.

***IMPORTANT***
These programs do *not* currently compile.  When --enable-build-all is used
(not the default), gen_new_fill fails because it uses an old API.  This is
an existing "bug" that has simply been exposed by this checkin.

Platforms tested:
sleipnir, modi4, sol

Misc. update:
2005-10-14 17:52:13 -05:00
Leon Arber
3888942e3a [svn-r11483] Purpose:
bug fix.

Description:
The complex derived datatype test assumed that the fill value would be 0.  This is not
the case on all systems.

Solution:
Modified the test to check against a known value in the outbuf array, instead of the fill value.

Platforms tested:
heping and MCR.

Misc. update:
2005-09-29 15:49:51 -05:00
Leon Arber
202b9ec55c [svn-r11481] Purpose:
bug fix.

Description:
Fixed typo in a comment.  The word "file" was supposed to be "fill."  The explanation of
how the complex derived datatype test works is much clearer now.

Solution:

Platforms tested:
minor change.

Misc. update:
2005-09-29 13:54:57 -05:00
Albert Cheng
55c4f63df7 [svn-r11478] Purpose:
bug fix.

Description:
When a parallel test script test fails, make would continue because the
way it was setup inside a for loop.  Fixed it by issuing an exit 1 inside
the loop.

There was also a typo error in the newer command comparision that it
must be $${chkname} in order to be valid.  Also, the test script itself
was not checked in the newer lists.  All fixed.

Platforms tested:
h5committested and also hand tested in heping pp mode.
2005-09-29 00:17:06 -05:00
John Mainzer
c100b0bf26 [svn-r11470] Purpose:
Repair synchronization bug in the metadata cache in PHDF5

Also repair numerous other bugs that surfaced in testing the
bug fix.


Description:

While operations modifying metadata must be collective, we allow
independant reads.  This allows metadata caches on different processes
to adjust to different sizes, and to place the entries on their dirty
lists in different orders.  Since only process 0 actually writes
metadata to disk (all other processes thought they did, but the writes
were discarded on the theory that they had to be collective), this made
it possible for another process to modify metadata, flush it, and then
read it back in in its original form (pre-modification) form.  The
possibilities for file corruption should be obvious.


Solution:

Make the policy that only process 0 can write to file explicit, and
visible to the metadata caches.  Thus only process 0 may flush dirty
entries -- all other caches must retain dirty entries until they are
informed by process 0 that the entries are clean.

Synchronization is handled by counting the bytes of dirty cache entries
created, and then synching up between the caches whenever the sum
exceeds an (eventually user specified) limit.  Dirty metadata creation
is consistent across all processes because all operations modifying
metadata must be collective.

This change uncovered may bugs which are repaired in this checkin.
It also required modification of H5HL and H5O to allocate file space
on insertion rather than on flush from cache.


Platforms tested:

H5committest, heping(parallel & serial)

Misc. update:
2005-09-27 00:20:11 -05:00
MuQun Yang
e42782fa3a [svn-r11459] Purpose:
A bug fix

Description:
MPI_Status_IGNORE is treated as a NULL pointer for mpich 1.2.4 or similar MPI packages.
It caused segmentation fault for MPI derived datatype test.


Solution:
Define MPI_STATUS status,
and pass &status into MPI_File_read and MPI_File_write.

Platforms tested:
too trivial to test.

Misc. update:
2005-09-22 09:39:32 -05:00
Albert Cheng
d67e59d9b2 [svn-r11458] Purpose:
Improvement.

Description:
The test may hang if there are system failures that some processors
are not working.

Solution:
Added the ALARM calls to limit all tests be done with the default
alarm time.  So, even if a process is hanging, the ALARM signal
would terminate the process.

Platforms tested:
tg-login2 of NCSA.

Misc. update:
2005-09-21 23:32:24 -05:00
Pedro Vicente Nunes
f9a87fa0f4 [svn-r11450] Purpose:
bug fix

Description:

the MPI_File_get_size returns a different value in one of the tests in Windows
comment the code and not run the test in windows
a ULL suffix on the harcoded return VRY return number is needed on AIX

Solution:

Platforms tested:
Windows
AIX

Misc. update:
2005-09-21 11:45:19 -05:00
Pedro Vicente Nunes
d09ca66a26 [svn-r11448] Purpose:
new features

Description:

add support for compiling the library and testphdf5 in Windows


Solution:

Platforms tested:
Linux
AIX
Solaris
Windows VC6

Misc. update:
2005-09-21 08:41:09 -05:00
James Laird
3267458b64 [svn-r11446] Purpose:
Bug fix

Description:
Massaged the newer script and config/conclude.am to make SX6 happy.


Platforms tested:
SX6, sol, mir
2005-09-20 16:46:24 -05:00
Albert Cheng
c0e83899c3 [svn-r11431] Purpose:
New feature.

Description:
Added the time command to the make check target to report time usage
of the execute of each test and test scripts.  This gives us some idea
how long each test takes and some vague idea it is compute bound or
not.

powerpc-ibm-aix5.x:
Change $RUNPARALLEL default setting to allow it being invoked by the
time command.

Platforms tested:
h5committested.
2005-09-17 22:04:28 -05:00
James Laird
ae2a313b5b [svn-r11421] Purpose:
Feature

Description:
Added H5_CFLAGS, etc. to 1.7 branch.
Now compilation flags can be put in H5_*FLAGS and they'll be used when
building hdf5 but not in h5cc.


Platforms tested:
mir, sleipnir, modi4

Misc. update:
2005-09-16 16:26:17 -05:00
James Laird
b656c90c8a [svn-r11420] Purpose:
Bug fix

Description:
Disabled C++ shared libraries for Sun Workshop compiler.

Solution:
This bug only seems to happen when using the -xarch=v9 flag to compile in
64-bit mode, but disabling shared libraries entirely for this compiler is
an easier fix (I don't know how to detect 64 bit mode from the command line).
The framework for disabling shared libraries for other C++ compilers is
in place.

Platforms tested:
sol, mir, sleipnir, modi4
2005-09-16 16:16:11 -05:00
James Laird
cc8f7d98bf [svn-r11418] Purpose:
Bug fix/feature

Description:
Disabled shared libraries for a number of Fortran compilers that don't
support them.
This allows other compilers to support shared Fortran libraries.

Solution:
Added a conditional, SHARED_FORTRAN_CONDITIONAL, which is true if
Fortran supports shared libraries.  It is set in configure.in.

Platforms tested:
mir, sleipnir, colonelk, heping
2005-09-15 16:30:06 -05:00
James Laird
33beeb7f55 [svn-r11411] Purpose:
Bug fix

Description:
Building with --disable-static seems to have been broken on several platforms.
Fixed this.
Configure will now disable shared libraries automatically when using pgf90
or when building on Cygwin.

Solution:
To avoid errors when using shared libraries with pgf90 (which I had not
realized were compiler-specific), I had manually set convenience libraries
to use the -static linking flag.  Apparently, this is not necessary, and
caused these libraries to be created as empty archives when --disable-static
was used.
Also, some libraries were including other libraries, which was not
necessary.
I also fixed code in configure.in to correctly detect whether shared
or static libraries are enabled, and moved code that disables shared libraries
to before libtool is created (rather than editing libtool after the fact).
Despite repeated warnings that only one shared library can be linked at a
time, I have yet to have shared libraries break the linking of tests on
any system.  We'll see if the Daily Tests turn up anything.

Platforms tested:
mir (fortran, C++), sleipnir (C++), modi4 (fortran, C++, parallel),
sol (fortran, C++), cygwin
2005-09-13 17:30:33 -05:00
Albert Cheng
c12eeffd9f [svn-r11349] Purpose:
Bug fix.

Description:
Some tests showed the filesize was not as expected.  But the error was
intermittent.  This was a racing condition as some processes finish
extend_chunked_dataset() sooner than others and return to the main
body which proceeds to call the next test which also uses the same
test data file and alters it.  That messes up the "slower" processes
which then see unexpected filesize.

Also, the routine create_chunked_dataset() which creates test data file
actually was executed by all processes.  That is wrong.

Solution:
Added a barrier at the end of extend_chunked_dataset to make sure all
processes are done with the test data file before returning.

Changed create_chunked_dataset such that only one process would create
the test data file.  The rest does nothing but just wait for it to finish.

Platforms tested:
Tested in TG-NCSA in which the errors were detected.

Misc. update:
2005-09-05 15:23:02 -05:00
Albert Cheng
11cfb28f54 [svn-r11340] Purpose:
Big data set test was default off and rarely tested. Changed it to default
on so that it gets tested.

Platforms tested:
Heping PP and Copper pp.
2005-09-02 09:56:32 -05:00
Albert Cheng
40a1e57caa [svn-r11339] Purpose:
Bug fix #281

Description:
Committed a wrong copy in the previous checkin.

Solution:
Checked in the right one and did some code cleanup, rearrangment.

Platforms tested:
heping pp.

Misc. update:
2005-09-02 09:44:40 -05:00
Albert Cheng
6d3715e537 [svn-r11323] Purpose:
tidy up.

Description:
MPE option created *.clog file whenever it is executed in MPI.
The cleanup of *.clog files were done in individual Makefile.in.
Often, it is forgotten.

Solution:
Moved the cleaning of *.clog files to CHECK_CLEANFILES in commence.am
so that it is applied whenever check-clean is called.

Platforms tested:
heping pp using MPE.
2005-08-31 15:03:52 -05:00
James Laird
66af6dce17 [svn-r11319] Purpose:
Bug fixes

Description:
This checkin fixes an occasional error on kelgia on sol during distclean.
It also causes test scripts to depend properly on the programs they're
supposed to be testing.

Solution:
The kelgia bug was due to some files being cleaned by automake and manually.
Removed the manual cleaning in src/Makefile.am.
Test script dependencies now need to be specified manually, since the
makefile can't guess what they test from their name.  Currently all test
scripts in a given directory have a single list of dependencies--this was
easy and seems to be sufficient.
These dependencies are listed in the SCRIPT_DEPEND variable in the Makefile.am.

Platforms tested:
heping, mir, modi4, sol

Misc. update:
2005-08-30 18:42:39 -05:00
Albert Cheng
3182a8a040 [svn-r11312] Purpose:
Bug #281

Description:
A dataset created in serial mode with H5D_ALLOC_TIME_INCR allocation setting
was not extendible, either explicitly by H5Dextend or implicitly by writing
to unallocated chunks.  This was because parallel mode expects the allocation
mode be H5D_ALLOC_TIME_INCR only.

Solution:
Modified library to allocate more space when needed or directed if the
file is opened by parallel mode, independent of what the dataset allocation
mode is.

Platforms tested:
Heping pp.
2005-08-29 23:35:17 -05:00
Albert Cheng
538d37a1bc [svn-r11303] Purpose:
minor tidy up.

Description:
Changed both test programs and test scripts to use the same suffixes
(.chkexe and .chklog).  Changed from .log to .chklog to avoid running
into potential conflicts by other "things" (e.g., config.log).

Tested:
Heping.
2005-08-26 17:24:27 -05:00
MuQun Yang
4a6e1b6ba9 [svn-r11294] Purpose:
bug fix

Description:
The previous version always tests with mpi-IO driver even when mpi-posix driver is set.

Solution:
Add the option to test mpi-posix driver for the first round collective chunk IO test.

Platforms tested:
IRIX64, AIX 5.1, Linux 2.4

Misc. update:
2005-08-24 21:45:25 -05:00
Albert Cheng
9c4dd70e36 [svn-r11292] Purpose:
"bug fix"

Description:
The test_mpio_derived_dtype() often hangs when fails.  So it was
not run by default to avoid hanging the daily tests or confusing
users.  But then new system or new codes in collective chunk fails
while one can't tell for sure if it is because of the complicated
derived type failures or something else.

Solution:
Changed the logic so it is skipped only if it is known that
the complicated MPI derived type does not work.  (This is
indicated by macro H5_MPI_COMPLEX_DERIVED_DATATYPE_WORKS NOT
defined.

Platforms tested:
heping pp (where it is tested by default).
Modi4 pp (where it is SKIPPED by default.)
I also forced modi4 to test it and modi4 said it actually
is working and should change the setting of
H5_MPI_COMPLEX_DERIVED_DATATYPE_WORKS to working?!!

Misc. update:
2005-08-23 17:41:42 -05:00
Albert Cheng
208436bfc4 [svn-r11291] Purpose:
Code cleaning.

Description:
The block of code that is conditioned by the H5_MPI_COMPLEX_DERIVED_DATATYPE_WORKS
and manipulates the return code of test_mpio_derived_dtype, does not really
belong in main.  If return code of test_mpio_derived_dtype needs to be
adjusted, it should be done in test_mpio_derived_dtype.

Solution:
Moved that block of code test_mpio_derived_dtype.

Platforms tested:
heping PP.

Misc. update:
2005-08-23 17:19:57 -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
MuQun Yang
cf377ac318 [svn-r11232] Purpose:
Modified collective chunk Io test
Description:
One test(collective chunk IO test 4) is no longer needed. Comment out first.

The code should be cleaned up later.

Solution:

Platforms tested:

Misc. update:
2005-08-11 13:49:15 -05:00
Albert Cheng
c5781c8289 [svn-r11214] Purpose:
bug fix

Description:
Previous commit contained an extra bin (t_chunk_alloc) that is not
ready yet.  It was a mistake.  Removed it.
2005-08-08 13:16:00 -05:00
Albert Cheng
fbb2dd8545 [svn-r11213] Purpose:
Bug fix and improvement.


Description:
The test output were not displayed for parallel tests.
The serial tests output were always displayed whether the test was
actually ran this time or not.


Solution:
Moved the display of test output inside the target where the actual
tests are run.


Platforms tested:
Tested in heping using pp and fortran.
2005-08-08 12:30:23 -05:00
Albert Cheng
ea15f348a1 [svn-r11208] Purpose:
Bug fix and code minor cleanup.

Description:
The attempt to redirect stderr together to the log files were
done in the wrong order such that stderr output goes to where
stdout WAS.  Fixed that.

Code minor cleanup--use shell variables to hold the name of the
log file and the test instead of generating them repeatedly.  This
makes easier code reading, less crowded and avoid typos.

Only conclude.in is changed.  The Makefile.in changes are all
derived from automake.

Platforms tested:
h5committested.
2005-08-08 02:32:27 -05:00
James Laird
e75a185eca [svn-r11185] Purpose:
Makefile feature

Description:
'make check-clean' now cleans *.h5 files created by tests as well as
.log and .chkexe files.

Solution:
check-clean is now a separate target in its own right, which cleans less
than mostlyclean (check-clean < mostlyclean < clean < distclean).

Platforms tested:
mir, heping, modi4 (serial and parallel)
2005-08-02 12:59:03 -05:00
Albert Cheng
1dd12bd1a7 [svn-r11181] Purpose:
removed a debug print statment.

Platforms tested:
heping (pp)
2005-08-01 23:33:19 -05:00
James Laird
c63ef2cba2 [svn-r11179] Purpose:
Feature: check-clean target

Description:
'make check-clean' cleans up output files from tests.

Solution:
Tests create foo.chkexe and foo.log files.  Scripts create foo.chksh and
foo.logsh files.  'make check-clean' will clean these files up so that
the tests can be re-run.
Also suppressed some not-very-useful output of Makefiles when it would
echo commands.

Platforms tested:
mir, sleipnir, modi4

Misc. update:
2005-08-01 17:22:55 -05:00
James Laird
7236935a9d [svn-r11095] Purpose:
Configuration feature

Description:
Serial test output is now stored in log files and printed when all tests
in a directory complete, or when a test fails.  This should make test output
more readable and useful.
Also made changes to clean up ii_files directories that are created by some
C++ compilers/linkers.
Also fixed a few minor Makefile bugs.

Solution:
When serial tests run, their output is saved in *.log or *.logsh.  While
running, tests only print when they begin and when they complete; their
more specific output (from the log file) is printed if the test fails or
when all tests have completed.
Comments welcome.

Platforms tested:
mir, modi4 (parallel and serial), copper, shanti
2005-07-21 14:28:11 -05:00
Quincey Koziol
4937b35e01 [svn-r11072] Purpose:
Bug fix

Description:
    Initialize "use_gpfs" variable.

Platforms tested:
    None - just eyeballed it.
2005-07-13 22:32:54 -05:00
MuQun Yang
273d9ed93e [svn-r11070]
Purpose:
Make collective IO tests work with mpiposix

Description:
Although internally HDF5 is using independent IO for mpiposix driver,
it is still a good test to see whether HDF5 APIs can allow collective IO calls to pass
into mpiposix driver.
Previous tests ignore this test; now add it.

Solution:

Platforms tested:
AIX (copper), too minor to need to test with three platforms.

Misc. update:
2005-07-13 14:52:46 -05:00
MuQun Yang
5edb327cbf [svn-r11067] Purpose:
Updating phase 2 work of collective IO


Description:
The current collective IO tests cannot test for number of processors bigger than
some values, this change will lift those restriction. However, the test may be slower.


Solution:

Platforms tested:
linux 2.4, AIX 5.1, Linux 2.4 IA64 and IRIX 6.5
(I haven't tested big number of processors with the restriction of the machine)

Misc. update:
2005-07-12 14:26:26 -05:00
Quincey Koziol
9b597516c0 [svn-r11042] Purpose:
Bug fix

Description:
    The ".chksh" file for a test script was being created in the "source"
location rather than the build location.  This can cause problems when
multiple builds are running because "slower" machines will see the ".cshsh"
file from faster machines and will not run the test script as they should.

Solution:
    Use 'basename' command to strip off the path of the script and create
the ".chksh" file in the build location.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    h5committest
2005-07-07 15:46:49 -05:00
Albert Cheng
f68a2e6db7 [svn-r11034] Purpose:
bug fix.

Description:
-nt is not a universal option for the test command in all platforms.
The use of it in conclude.am cause some platforms to bark at the
Makefile generated.

Solution:
Created a command script bin/newer which tests if file1 is newer
than file2.  Replace the "test file1 -nt file2" by
"newer file1 file2".

Platforms tested:
Tested in sol.
2005-07-06 23:52:45 -05:00
James Laird
4cf99e9f28 [svn-r11013] Purpose:
Bug fix

Description:
Fixed bugs that caused tests to be unable to find testhdf5.sh during
daily tests, and another that broke sol and shanti.

Solution:
When tests are run, their path is ./$testname .
When scripts are run, their path has no leading "./".  Fixed.
Sol and shanti don't recognize the -e option for test, but they do know
-f.  Fixed.
Also modified release notes.

Platforms tested:
mir, shanti, heping
2005-07-01 16:22:05 -05:00
James Laird
43f091f462 [svn-r11008] Purpose:
Feature: tests now use parallel make and only run once

Description:
When make is invoked in parallel (using the -j option), several tests will
now be run simultaneously.  This should speed up testing on a number of
systems.
When a test passes, it creates a foo.chkexe or foo.chksh file, which prevents
the test from running again unless the test or library changes.

Solution:
Most of the changes live in config/conclude.am.  Added *.chkexe and *.chksh
files to the list of files to be cleaned at "make mostlyclean" time.
Parallel tests still run one at a time, but use the same make instructions
as serial tests.

Platforms tested:
mir, eirene, sleipnir, pommier, copper, modi4 (some errors occurred, probably
due to the test being run before updating hdf5.  Will re-run tests after
checkin.)
2005-06-30 18:35:32 -05:00
Albert Cheng
65107926e1 [svn-r10858] Purpose:
bug fix.

Description:
The check-s and check-p targets are not recursively passes down.
Make them so.

Platforms tested:
heping (serial and pp).
2005-06-04 00:01:12 -05:00
Albert Cheng
a2217d58c8 [svn-r10849] Purpose:
bug fix

Description:
check-s and check-p were set as pre-requistics of test.  They
would get executed in parallel if parallel make is used.  This
could cause problems since serial tests are used to be executed
before parallel tests. It is not known if it is always okay to
run serial and parallel tests in simultantously.

Solution:
Change check-s and check-p as actions of the target test so
that they get executed sequnentially.

Platforms tested:
heping PP.
2005-06-02 18:42:48 -05:00
Albert Cheng
c02d9c7c0d [svn-r10846] Purpose:
update.

Description:
TEST_SCRIPT_PARA is not corrected as Makefile.am has.
Ran reconfigure to update Makefile.in.

Platforms tested:
heping PP.

Misc. update:
2005-06-02 12:18:05 -05:00
James Laird
2423bd6cab [svn-r10840] Purpose:
Added check-s and check-p targets.

Description:
Added check-s and check-p targets to 1.7 branch to match changes to 1.6
branch.  Now parallel and serial tests can be run separately.

Platforms tested:
mir, modi4, copper
2005-06-01 20:51:52 -05:00
Albert Cheng
2b908577c1 [svn-r10598] Purpose:
Bug fix.

Description:
The irregular chunk IO tests do not work for processes sizes larger than 3.
Added a check of number of processes and skip the irregular chunk IO
tests if number of processes are larger than 3.

Revamped the tests of collective chunk IO tests too.

Platforms tested:
Tested in mir.

Misc. update:
2005-04-12 17:04:01 -05:00
Elena Pourmal
5279827823 [svn-r10570] Purpose: Maintenance
Description: Removed support for SRB driver

Solution: Removed or modified appropriate files; ran reconfigure
          to regenerate Makefile.in and configure files.

Platforms tested: heping and shanti

Misc. update: ran bin/chkmanifest on heping
2005-04-07 14:41:25 -05:00
MuQun Yang
133d48e6d0 [svn-r10546] Purpose:
Support collective IO for irregular selection.

Description:

Solution:

Platforms tested:
Linux with MPICH
AIX with mpcc_r
Linux with ChaMPIO
Altix with intel

Misc. update:
2005-04-05 14:43:14 -05:00
James Laird
b296a419c4 [svn-r10534] Purpose:
Configuration feature

Description:
Different Fortran compilers mangle function names in different ways
(upper case, lower case, adding underscores).  To link between
Fortran and C functions, we need to know what a given function's
name is under a given compiler.

Solution:
Use autoconf's FC_WRAPPERS check to determine the Fortran
naming scheme and define the FC_FUNC_ macro to name our
functions (in H5f90proto.h).  Removed references to
our old FNAME macro, as well as flags that indicated whether
function names were upper or lower case.

Platforms tested:
mir, pommier, modi4, copper, more
2005-04-04 16:17:51 -05:00
James Laird
59ec5b3d66 [svn-r10517] Purpose:
Bug fix

Description:
On some machines, $RUNSERIAL variable needs to be used to run
tests.  Set $RUNTESTS (which is used for non-parallel tests) to
be $RUNSERIAL in configure.am.

Also, since I was updating all Makefiles.in anyway, I updated
commence.am to point to autotools installs in AFS instead of
those on heping.

Platforms tested:
mir, sleipnir, modi4, copper
2005-03-31 13:26:17 -05:00
James Laird
14e06e81cb [svn-r10511]
Purpose:
"Bug fix"

Description:
Hardcoded Makefiles to use /bin/sh instead of letting configure
detect shell automatically.  This is what v1.6 does, and avoids
problems on janus.

Platforms tested:
sleipnir, copper, modi4, mir
2005-03-30 16:14:48 -05:00
Albert Cheng
7ce84a1d39 [svn-r10510] Purpose:
Improvement.

Description:
The derived datatype test often hangs when it fails.  This blocks
daily test or automatic build. Run it only when hi verbose mode
is used.

Platforms tested:
Tested in eirene pp.

Misc. update:
2005-03-30 10:30:24 -05:00
James Laird
7acf3f1b12 [svn-r10475] Purpose:
Feature - conditional compilation

Description:
SRB file driver and tests are now compiled only when SRB is enabled
(using --with-srb during configure).

Solution:
Added an automake conditional in configure.in, altered Makefiles.am in
src and test directories to depend on that conditional.
This should make a nice example for posterity to add conditionally
compiled sources.

Platforms tested:
heping (only configure change)
2005-03-29 12:38:17 -05:00
James Laird
9452992c09 [svn-r10459]
Purpose:
Added C++ wrapper for Packet Table API.

Description:
Added macro for high-level C++ library (LIBH5CPP_HL), which changes every
Makefile.in.
Added directories for high-level C++ library (though currently only Packet
Table API is supported).
Added both C++ source and tests.

Platforms tested:
sleipnir, mir, modi4

Misc. update:
2005-03-28 11:32:20 -05:00
MuQun Yang
9027e26be9 [svn-r10390] Purpose:
Add detailed comments for MPI derived data type test.

Description:

Solution:

Platforms tested:
heping(Only comments and printf messages were added, no need to test
on all platforms.)

Misc. update:
2005-03-23 13:38:35 -05:00
MuQun Yang
c33f593665 [svn-r10204] Purpose:
Provide a way to warn users on the usage of collective IO because of
potential MPI-IO bugs for some platforms.
Also provide a way for users to give us feedback if the vendor has
already fixed the problem so that we can turn off the hard-code macro
in our configure description file.

Description:
See above.


Solution:
Use a simple MPI complicated derived datatype program to check
whether derived data type works for this MPI-IO package.
Print out some messages to warn users if not working as we had expected.

Platforms tested:
AIX 5.1(copper) and Linux 2.4(heping)

Misc. update:
2005-03-11 17:18:45 -05:00
James Laird
25df1908bc [svn-r10158] Purpose:
Automake version upgrade

Description:
Upgraded automake version from 1.6.2 to 1.9.5.
Changed bin/reconfigure script to use automake 1.9.5.
Changed configure.in and Makefiles to use new FCFLAGS and FC variables
instead of FFLAGS and F9X.
Automake and configure should now do the lion's share of the work
supporting Fortran 9X; macros in acsite.m4 are now mostly unused (will
be cleaned later).
Altered how configure handles pmake; now root-level Makefile.in is
processed by bin/reconfigure to have a .MAKEFLAGS target, since
automake no longer allows us to define unused variables.
Configure now always checks for C++ compiler even if it is not
used, since automake thinks this is the Right Thing To Do and
will break otherwise.

Platforms tested:
Sol, copper, heping, mir, sleipnir, eirene, pommier, kelgia, modi4.
2005-03-07 12:57:27 -05:00
Albert Cheng
9d8d5392b2 [svn-r10125] Purpose:
Feature--to provide a standalone mode for t_mpi.c so that it can
be built outside of PHDF5 environment.

Description:
Move definitions that are common to all parallel test programs
to a new header file called testpar.h.
Leave only Parallel HDF5 tests related definitions in testphdf5.h.

Platforms tested:
heping (pp) and modi4(PP).  Copper was down.

Misc. update:
2005-03-02 23:06:14 -05:00
Albert Cheng
0d514907a9 [svn-r10123] Purpose:
Removed GASS configuration and software packages associated with
it.  The following software are no longer configurable.

checking for main in -lcrypto... yes
checking for SSL_get_version in -lssl... yes
checking globus_common.h usability... yes
checking globus_common.h presence... yes
checking for globus_common.h... yes
checking for globus_module_activate in -lglobus_common... yes
checking for main in -lglobus_gass_cache... yes
checking for main in -lglobus_gaa... yes
checking for main in -lglobus_gss... yes
checking for main in -lglobus_gss_assist... yes
checking for main in -lglobus_io... yes
checking for main in -lglobus_gass_transfer_assist... yes
checking for main in -lglobus_gass_transfer... yes
checking for globus_gass_open in -lglobus_gass_file... yes

Platforms tested:
h5committested (but copper was down.) tested in modi4 too.
2005-03-02 15:02:55 -05:00
Albert Cheng
bf815e12e7 [svn-r10122] Purpose:
typo fix and small improvement.

Description:
t_coll_chunk.c:
ccdataset_vrfy() was using a wrong routine name to identify itself.

testphdf5.c:
Add a definition of NFILENAME to be the common dimension size of
FILENAME[] and filenames[][] since they must have the same first
dimension size.

Platforms tested:
h5committested.
2005-03-02 12:06:39 -05:00
James Laird
0b83fea125 [svn-r10066] Purpose:
Libtool upgrade

Description:
HDF5 was using libtool 1.4.2.  Upgraded to libtool 1.5.14.

Platforms tested:
verbena, heping, pommier, copper, modi4, arabica
2005-02-23 11:47:00 -05:00
Xiaowen Wu
e358c94649 [svn-r10027] Purpose:
New feature.

Description:
    Add the scaleoffset internal library filter.

Solution:

Platforms tested:
     heping, copper, arabica

Misc. update:
2005-02-16 22:17:48 -05:00
James Laird
8ed95c0011 [svn-r10016]
Purpose:
Bug fix

Description:
modi4 dies during build with strange errors.
The root cause of these is a two-year-old hack in HDF5's libtool
script that only takes effect on IRIX.

Solution:
Edited the libtool hack (by editing ltmain.sh) to correct a bug in
the hack.
Also made sure that compiler-specific DEFAULT_LIBS are used
when linking.

Platforms tested:
sleipnir, copper, modi4, sol
2005-02-16 14:27:27 -05:00
James Laird
b96f342722 [svn-r9993] Purpose:
Bug fix

Description:
Arabica exhibited strange errors when linker found wrong versions of
header files.  This happened because include directories were
given to linker in the wrong order.

Solution:
Move include directories from AM_CFLAGS variable to INCLUDES
variable to put them before CPPFLAGS variable.  Trust me, it works.
This bug may also have contributed to strange errors on other platforms
(kelgia?).

Platforms tested:
copper, sleipnir, arabica.
	(h5dump broke while building on arabica, but this happened in
	a clean checkout, too).
2005-02-11 16:32:22 -05:00
James Laird
3f0a35a4ea [svn-r9988] Purpose:
Bug fix

Description:
pmake (on modi4, for instance) complains about undefined variables
if it is run without the -V flag, which turns those errors to warnings.

Solution:
Added test to configure.in to see if $MAKE will allow Makefiles
with undefined variables.  If not, sets -V flag in AM_MAKEFLAGS.
Ensured that all custom make targets use AM_MAKEFLAGS.
Also defined all variables that caused errors in top-level Makefile.am.
This means that pmake can be used to build hdf5 *from the top level
only*.  To run make from a subdirectory, still need to use -V flag
(or use make or gmake).

Platforms tested:
modi4, heping, copper, sleipnir
2005-02-11 12:40:52 -05:00
James Laird
db2575baa9 [svn-r9930]
Purpose:
Bug fix

Description:
Parallel builds were breaking in tools/lib

Solution:
talign didn't realize it depended on libh5tools.la because its
dependencies listed the full path (../../tools/lib/libh5tools.la).
Changed this, and made similar changes in a couple of other
directories.
This checkin should also add the --foreign flag to every Makefile.in

Platforms tested:
sleipnir (minor change)
2005-02-03 16:59:40 -05:00
Quincey Koziol
0b332ace5e [svn-r9928] Purpose:
New feature

Description:
    Add basic code for new B-tree implementation.  They don't do much yet,
aren't hooked up to anything yet and the format may change, but I'd like to
start getting them into the daily tests.

Platforms tested:
    FreeBSD 4.11 (sleipnir) w/parallel
    Too minor to require h5committest
2005-02-03 14:59:05 -05:00
James Laird
ab243bf369 [svn-r9920] Purpose:
Bug fix

Description:
Found the permanant fix to automake/CVS dependency problem

Solution:
Added AM_MAINTAINER_MODE macro to configure.in.
Now automake will never try to regenerate Makefiles, Makefiles.in,
configure, H5config.h, etc. when they are out of date, nor will it
print any warnings.
Developers should  be very very careful to use reconfigure script,
and can add --enable-maintainer-mode flag to configure on heping
to regenerate these files correctly.

Platforms tested:
heping sleipnir copper
2005-02-02 15:59:46 -05:00
James Laird
ed8685acd2 [svn-r9915] Purpose:
Bug fix

Description:
Configuration files' timestamps were incorrect.

Solution:
Update Makefiles.in.  Also added correct paths to autotools on heping,
so heping build should be able to re-generate configuration files even
if they are still broken.

Platforms tested:
sleipnir
2005-02-02 11:00:36 -05:00
James Laird
e3dacb31be [svn-r9912] Purpose:
Bug fix

Description:
Dependencies between configure files (aclocal, configure.in, configure,
Makefiles.am and .in) are still causing Makefiles to try to run autotools
during build.

Solution:
Committed all Makefiles.in to update their timestamps.
As a temporary measure, forcibly prevented automake from running
autotools during build by redefining the variables it uses.

Platforms tested:
sleipnir (No changes to Makefile content)
2005-02-01 16:05:33 -05:00
James Laird
30bfb1e0ea [svn-r9907] Purpose:
Bug fix

Description:
Different compilers use different flags to include Fortran module files

Solution:
Changed boilerplate to use configure variable rather than hardcoded -M flag.

Platforms tested:
sleipnir, sol, copper
2005-02-01 10:27:37 -05:00
James Laird
26303241fe [svn-r9902] Purpose:
Configuration feature

Description:
HDF5 now uses automake to generate Makefiles

Solution:
Makefile.in files are now generated from Makefile.am files.
To reconfigure (after chaning a Makefile.am or configure.in):
/bin/sh bin/reconfigure.sh

Platforms tested:
Many
2005-01-31 22:17:02 -05:00
Quincey Koziol
3e582deaae [svn-r9778] Purpose:
Remove feature

Description:
    Retire threaded, balanced binary tree code from HDF5 use.  Requiescat in
    pace...

    Also, regenerate dependencies files.

Platforms tested:
    FreeBSD 4.10 (sleipnir) w/parallel
    Too minor to require full h5committesting  (the code is already
    disconnected from everything except its tests)
2005-01-07 21:06:46 -05:00
Quincey Koziol
427ff7da28 [svn-r9727] Purpose:
Bug Fix/Code Cleanup/Doc Cleanup/Optimization/Branch Sync :-)

Description:
    Generally speaking, this is the "signed->unsigned" change to selections.
However, in the process of merging code back, things got stickier and stickier
until I ended up doing a big "sync the two branches up" operation.  So... I
brought back all the "infrastructure" fixes from the development branch to the
release branch (which I think were actually making some improvement in
performance) as well as fixed several bugs which had been fixed in one branch,
but not the other.

    I've also tagged the repository before making this checkin with the label
"before_signed_unsigned_changes".

Platforms tested:
    FreeBSD 4.10 (sleipnir) w/parallel & fphdf5
    FreeBSD 4.10 (sleipnir) w/threadsafe
    FreeBSD 4.10 (sleipnir) w/backward compatibility
    Solaris 2.7 (arabica) w/"purify options"
    Solaris 2.8 (sol) w/FORTRAN & C++
    AIX 5.x (copper) w/parallel & FORTRAN
    IRIX64 6.5 (modi4) w/FORTRAN
    Linux 2.4 (heping) w/FORTRAN & C++


Misc. update:
2004-12-29 09:26:20 -05:00
MuQun Yang
fc01012cd5 [svn-r9658] Purpose:
Check in testing code for irregular hyperslab selection with multiple chunks.

Description:
For debugging only, will not be tested by h5committest.

Solution:

Platforms tested:
Linux 2.4 (mpich 1.2.6)

Misc. update:
2004-12-13 12:00:57 -05:00
MuQun Yang
e7e76b6876 [svn-r9649] Purpose:
Adding routines to test irrgular hyperslab selection inside one chunk.

Description:
For debugging purpose, tests are turned off now.

Solution:

Platforms tested:

AIX 5.1 and Linux 2.4 with parallel enabled.
Misc. update:
2004-12-08 18:33:40 -05:00
MuQun Yang
c20de8aed4 [svn-r9575] Purpose:
Adding testing code for collective IO implementation

Description:
Won't affect testing HDF5 library.
Not tested yet, only check in for debugging purpose.

Solution:

Platforms tested:
Linux 2.4 + mpich 1.2.6
Aix 5.1 + mpcc_r

Misc. update:
2004-11-24 16:13:26 -05:00
MuQun Yang
b950cebd9e [svn-r9530] Purpose:
Modifying testing code for derived datatype.
However, this test won't be run in the HDF5 parallel test.
The code is checked in only for debugging purpose.

Description:

Solution:

Platforms tested:
Linux 2.4(mpich 1.2.6)

Misc. update:
2004-11-15 15:49:49 -05:00
MuQun Yang
36561530ce [svn-r9521] Purpose:
To test MPI derived datatype

Description:
A very simple irregular hyperslab selection in parallel.
Will not be tested when testing HDF5 library.
Check in only for debugging purpose.
This code will be tested in the future.

Solution:

Platforms tested:
AIX 5.1, Linux 2.4+mpich 1.2.6

Misc. update:
2004-11-11 16:08:11 -05:00
MuQun Yang
7a11c453f9 [svn-r9520] Purpose:
Adding general MPI derived datatype testing code.

Description:
The testing code will not be tested. The purpose of checking in is for
better debugging later. HDF5 routine or daily test should not be aware of this.

Solution:


Platforms tested:
Copper(AIX 5.1),
Heping(Linux 2.4 + MPICH 1.2.6).


Misc. update:
2004-11-11 16:05:03 -05:00
Albert Cheng
63a3195fac [svn-r9453] Purpose:
Improvement.

Description:
Made all processes print hostname() by default so that it is easier
to spot problems.

Platforms tested:
Tested in copper only.  It is a trivial small change.

Misc. update:
2004-10-22 17:42:05 -05:00
Quincey Koziol
74a448d084 [svn-r9358] Purpose:
Bug fix

Description:
    Relax restrictions on parallel I/O to allow compressed, chunked datasets
to be read in parallel (collective access will be degraded to independent
access, but will retrieve the information still).

Platforms tested:
    FreeBSD 4.10 (sleipnir) w/parallel
    Solaris 2.7 (arabica)
    IRIX64 6.5 (modi4)
    h5committest
2004-10-04 15:29:31 -05:00
Albert Cheng
28776d1076 [svn-r9317] Purpose:
Code clean up

Description:
The tests used to have their own test file names due to
the original program layout.  Now that it is using the
common test interface, individual test can be invoked
at will (via -o).  There is no need to have different
test filenames.  Only requirement is that certain read
tests must follow immediately the corresponding write
test since they use the same file.

I have combined all test file names into just one common
file name.  This reduces the printout of test file name,
very beneficial when the test is run by large number of processes.
It makes future code maintenance easier too.

Platforms tested:
Tested in Eirene(PP) only.  No h5committest because this is
limited to the parallel tests and the changes are trivial.

Misc. update:
2004-09-24 16:20:24 -05:00
Albert Cheng
ace38083da [svn-r9309] Purpose:
Cleanup

Description:
Remove old hack for H5Eget_auto() which is not needed any more.
Reverse H5E_set_auto_stack(H5EDEFAULT,...) back to previous
code of H5E_set_auto(...).  Same for H5E_get_auto_stack.

Platforms tested:
Only tested in Eirene PP as the change is pretty straight
forward.

Misc. update:
2004-09-22 14:49:32 -05:00
John Mainzer
a4e1edbdba [svn-r9274] Purpose:
Add test to verify the fix of the parallel I/O mode confusion bug.


Description:

While the parallel I/O mode confusion bug is fixed, an automated
regression test for this bug would be useful.


Solution:

Added a modified version of the original bug demonstration program
to testphdf5.

Platforms tested:

copper
h5committested
eirene (parallel)


Misc. update:
2004-09-18 16:38:44 -05:00
Quincey Koziol
eb3e9ccd8a [svn-r9234] Purpose:
Code cleanup

Description:
    Tweak recent "forward compatibility" changes to the H5E* API (which allowed
for the old H5E API functions to remain unchanged) by allowing for the error
stack callback function (H5E_auto_t) to also remain unchanged from the 1.6
branch.  This required changing the H5E{get|set}_auto routines to have the
old style H5E_auto_t type (which didn't have a stack ID parameter) and the new
H5E{get|set}_auto_stack routines to have a newer "H5E_auto_stack_t" type (which
has a stack ID parameter).  This should make the H5E API changes as forwardly
compatible as possible.
    One side-affect of this change was that it was impossible to determine if
the current auto error callback was the old style (H5E_auto_t) or the new style
(H5E_auto_stack_t) of callback, so a new API function (H5Eauto_is_stack) was
adde to query this.

Platforms tested:
    FreeBSD 4.10 (sleipnir)
    IRIX64 6.5 (modi4)
    h5committest
2004-09-08 21:37:02 -05:00
MuQun Yang
4268449794 [svn-r9200]
Purpose:
Shrink HDF5 parallel test

Description:
Previously the collective chunk IO tests created and opened four HDF5 files;
it turned out that all collective chunk IO tests can use one file for testing.


Solution:
To use one file for all collective chunk IO tests with trunc option to be set in H5Fcreate.


Platforms tested:
copper(no need to use h5committest)

Misc. update:
2004-09-03 12:53:42 -05:00
Raymond Lu
cb7f03a26f [svn-r9183] Purpose: New feature
Description:  Restore 6 old error API functions back to the library to be backward
compatible with v1.6.  They are H5Epush, H5Eprint, H5Ewalk, H5Eclear, H5Eset_auto,
H5Eget_auto.  These functions do not have error stack  as parameter.

Solution:  Internally, these functions use default error stack.

Platforms tested:  h5committest and fuss.

Misc. update: RELEASE.txt
2004-09-01 12:43:30 -05:00
Albert Cheng
226f162ce7 [svn-r9179] Purpose:
Text display change

Description:
Changed the test names to much shorter strings for easier
use.

Platforms tested:
No h5committed test.  Only test parallel in eirene.

Misc. update:
2004-08-31 23:07:21 -05:00
John Mainzer
98623b2787 [svn-r9149] Purpose:
Fix of bug/feature which caused testphdf5 to fail when run with more than
32 processes.  This fix was originally applied to the 1.6 branch, and is
now ported to the 1.7 branch.


Description:

32 process limit was a hard coded constant.


Solution:

Modified most of the routines in t_mdset.c to adapt dynamically to
the current number of processes.  In passing, I also tidied up a
few memory leaks.

Note that one new routine had been added to the 1.7 version of
t_mdset.c since the 1.6/1.7 split.  I applied changes to this
routine as well.


Platforms tested:

h5committested

Tested on eirene with 4 and 8 processes.  Couldn't go higher.

I would have like to repeat my 32 - 64 process tests on copper,
but was unable to do so as I don't have access to cu12t at
present.  Perhaps I will be able to manage this in the next
few days.  However, Albert wanted these changes checked in to
the 1.7 branch so he could work with them.


Misc. update:
2004-08-24 16:28:05 -05:00
Albert Cheng
d7a4ce413a [svn-r9141] Purpose:
Code cleanup.

Removed bunch of old options (r,w,v,i,b,e) that are no longer valid
or useful after adopting the general test interface.  Moved the test
of sizeof MPI_Offset into the test routine itself.

Platforms tested:
Eirene and Sol using pp mode.
2004-08-23 19:08:29 -05:00
Albert Cheng
1926a6538e [svn-r9130] Purpose:
bug fix.

Description:
The test routines only print error messages but not all of them
return number of errors detected back to the main routine which
always exit with a 0 status.  Thus make or shell commands could
not detect there were errors.


Solution:
Changed the test routines to return appropriate number of
errors to main routine which in turn exit with the appropriate
exit code if errors found.

Platforms tested:
Tested in Sol and eirene (pp).

Misc. update:
2004-08-20 00:03:28 -05:00
Albert Cheng
3c59678775 [svn-r9115] Purpose:
feature

Description:
Another revamp of the test interface.
TestInit: is used to register Test Program name, test program specific
   Usage and option parsing routines.
TestUsage: will invoke extra usage routine if provided.
TestParseCmdLine: will invoke extra option parsing routine if provided.
GetTestSummary() and GetTestCleanup() replaces the previous Summary and
CleanUp arguments of TestParseCmdLine.

test/testhdf5, test/ttsafe.c, testpar/t_mpi.c, testpar/testphdf5.c:
   All have been updated to use the new Test Routines.

testpar/t_mpi.c:
   Also a fix of a compiler optimization bug when pgcc in Linux is
   used to compile it.  Changed buf[] and expected to unsigned char
   type to avoid a bug that failed to do sign-extension.

Platforms tested:
"h5committested"
Also tested thread-safe option in eirene.
2004-08-19 01:32:47 -05:00
MuQun Yang
ad655bf083 [svn-r9104]
Purpose:
bug fix

Description:
1. The IF-block of skipping collective chunk IO tests when the number of
processes is greater than some number essentially skipped all parallel tests.
2.  John tested at copper with the number of processor = 64 and collective
     chunk IO tests passed, so we increase the number of precessor =24 to 64 for
    skipping the test.


Solution:
1. change the IF block flow so that it only skips collective chunk IO tests when
   the number of process is greater than 64.



Platforms tested:
copper(only change a bit of parallel test code, no needs to test on other platforms).


Misc. update:
2004-08-17 13:44:26 -05:00