Commit Graph

4811 Commits

Author SHA1 Message Date
Albert Cheng
83b2e3213a [svn-r6767]
Purpose:
Code cleanup

Description:
Removed debug statement bracketed by H5FDmpiposix_DEBUG or alike.
They were added in by mistakes.

Platforms tested:
Did not h5committested but tested in Copper since there changes are
limited in parallel codes.

Misc. update:
2003-04-28 16:06:40 -05:00
Bill Wendling
ebb263afa6 [svn-r6765] Purpose:
Bug Fix

Description:
    If there was a header file with a path like:

        /some/path/mpich.optimized/...

    The dependencies script would change that to

        /some/path/mpich.loptimized/...
                         ^--Note.

Solution:
    Mike McKay offered the solution to replace the substitution script
    from "s/\.o/\.lo/g" to "s/\.o(\b)/\.lo$1/g". It doesn't crash when
    run on Linux, but we need to make sure that it's okay for his
    machine.

Platforms tested:
    Linux, since this script is only run on GNU platforms.

Misc. update:
2003-04-28 13:39:41 -05:00
Albert Cheng
7da63ba3c2 [svn-r6764] Purpose:
Improvment

Description:
No default setting of fortran compiler when --enable-parallel is
used.

Solution:
Changed it to use mpxlf_r as the default parallel fortran compiler.
This is consistent with the default C compilers.

Platforms tested:
Did not h5committested because the changes were made offsite.
Tested in LLNL SP BLUE, both serial and parallel modes.
(There is a compiling error in src but the configure result are
verified.)

Misc. update:
    Update MANIFEST if you add or remove any file.
    Update release_docs/RELEASE for bug fixes, new features, etc.
    Update applicable document files too.
2003-04-28 12:42:36 -05:00
HDF Admin
6b7a945a65 [svn-r6761] Snapshot version 1.5 release 51 2003-04-26 05:03:11 -05:00
Albert Cheng
257e698ee0 [svn-r6759] Purpose:
bug fix

Description:
The default of CC used to be gcc which is not compatible with the
default fortran compiler of xlf.

Solution:
Copied the CC default setting from the C-API level.

Platforms tested:
Run test in Copper since this is a purely AIX change.

Misc. update:
2003-04-25 23:15:57 -05:00
Elena Pourmal
156bf14dbf [svn-r6757]
Purpose: Bug fix

Description: on Cray T90IEEE compact storage test (in test_misc8)
             fails since dataset dimensions are too big; dataset
             will not fit into the message header.

Solution: Reduced dimension sizes from 100 to 50.

Platforms tested: h5committested on arabica and mod4; verbena failed
                  because of the F90 license problem. I tested on verbena
                  by hand and C only; Cray T90IEEE

Misc. update:
2003-04-25 16:39:09 -05:00
Raymond Lu
b11c892b4f [svn-r6756]
Purpose: Verify library behavior

Description: A file is first opened as read only.  Then it's closed with
	an object left open.  A second open of the same file for read and
	write should fail.


Platforms tested: arabica - simply test to verify correct library behavior.
2003-04-25 15:55:10 -05:00
Albert Cheng
d76dfb1985 [svn-r6755] Purpose:
feature

Description:
added test_fapl_mpiposix_dup to verify the MPIPOSIX is making
duplicates of Communicator correctly.

Platforms tested:
Did not h5committested because these are all MPI code and well protected
by HAVE_PARALLEL.
Tested in eirene and modi4, both parallel mode.

Misc. update:
2003-04-25 09:27:36 -05:00
Albert Cheng
7f6ece1329 [svn-r6754] Purpose:
Feature

Description:
Added the feature to store and return a duplicate of Communicator in
the access of property list and file operations.  (no duplicate for
INFO object because MPIPOSIX driver does not process INFO object.


Platforms tested:
Did not h5committested because these are all MPI code and well protected
by HAVE_PARALLEL.
Tested in eirene and modi4, both parallel mode.

Misc. update:
2003-04-25 09:25:26 -05:00
Albert Cheng
d2bdbd0480 [svn-r6753] Purpose:
Code cleanup

Description:
Replaced the comm/info freeing with H5FD_mpio_comm_info_free to make
it cleaner and consistent.
Replaced couple FUNC_LEAVE_NOAPI(SUCCEED) with FUNC_LEAVE_NOAPI(ret_value).
These were bugs since it was possible errors may occur at FUNC_ENTER...()
time and this hardcoding would not report those errors.
Documented some modification history.


Platforms tested:
Did not h5committested because these are all MPI code and well protected
by HAVE_PARALLEL.
Tested in eirene and modi4, both parallel mode.

Misc. update:
2003-04-25 09:21:16 -05:00
Quincey Koziol
0462c0bc2c [svn-r6752] Purpose:
Code cleanup

Description:
    Remove some cruft left over from the switch from int->H5G_obj_t

Platforms tested:
    FreeBSD 4.8 (sleipnir), triple check not necessary.
2003-04-25 07:10:44 -05:00
Quincey Koziol
f023da1e3f [svn-r6750] Purpose:
Code cleanup

Description:
    Christi Forsythe reported that the NGROUPS macro in this file was causing
a macro redefinition warning on the QT machine.

Solution:
    Rename NGROUPS to UNLINK_NGROUPS

Platforms tested:
    Eyeballed, too trivial for triple check.
2003-04-25 06:41:18 -05:00
Bill Wendling
fa74a2e1e2 [svn-r6749] Purpose:
Update

Description:
    The H5FC was already in this doc...but under "bug fixes". Removed
    that since it's really a new feature.

Platforms tested:
    IBM/PC Jr.

Misc. update:
2003-04-24 17:31:50 -05:00
Bill Wendling
0c936cb876 [svn-r6748] Purpose:
Bug Fix

Description:
    In parallel mode, the MPI libraries were being added to the LDFLAGS
    variable instead of the LIBS variable. This was playing havoc with
    the h5fc script (the order you specify libraries is important to some
    compilers).

Solution:
    The AC_CHECK_FLIB macro was placing these libraries into the LDFLAGS
    instead of LIBS, which is where they should have gone. Replaced
    LDFLAGS with LIBS in that case.

Platforms tested:
    Modi4 (Parallel & Fortran)
    Arabica (Fortran)
    Verbena (Fortran, no C++ since it's not affected)

    Ran "make check-install" after installation...

Misc. update:
2003-04-24 16:08:43 -05:00
Bill Wendling
57c41e622b [svn-r6747] Purpose:
Bug Fix

Description:
    On Kelgia, building of the Fortran stuff would fail because of a bad
    commandline. A "" was being put into it.

Solution:
    I was stupid and put quotes around a variable in the commence.in file
    when I shouldn't have. Removed those quotes.

Platforms tested:
    Kelgia (Fortran)
    Verbena (Fortran, no C++ since Fortran only)
    Arabica (Fortran)
    Modi4 (Fortran & Parallel)

Misc. update:
2003-04-24 15:24:20 -05:00
Bill Wendling
68b1950013 [svn-r6746] Purpose:
Bug Fix

Description:
    When going to compile on a platform (like HP-UX) which doesn't have
    libz.a in it's path, the script would fail. The reason was that the
    LDFLAGS variable which holds the directories to these libraries was
    last in the compile line. So the compiler couldn't find the library

Solution:
    Put the LDFLAGS variable before the linker variables.

Platforms tested:
    Kelgia (Fortran)
    Verbena (Fortran, no C++ since only Fortran affected)
    Arabica (Fortran)
    Modi4 (Fortran & Parallel)

    Also ran "make check-install"

Misc. update:
2003-04-24 15:22:43 -05:00
Bill Wendling
690e832bec [svn-r6745] Purpose:
Update

Description:
    Didn't document the addition of the h5fc script.

Solution:
    Document that puppy!

Platforms tested:
    Eyes 2000, Millenium Edition

Misc. update:
2003-04-24 15:20:44 -05:00
Raymond Lu
6818f6e981 [svn-r6744]
Purpose: A little code rewriting

Description: object types were defined as macros in H5Gpublic.h

Solution: changed them to enumerate type

Platforms tested: h5committtest
2003-04-24 15:15:42 -05:00
Albert Cheng
4fa8fe270c [svn-r6741] Purpose:
code cleanup.

Description:
Rename test_comm_info_delete to test_fapl_mpio_dup to better decribe
what it does.  Updated the comments to describe more accurate.

Platforms tested:
Did not run h5commmittest since the changes were all in parallel area.
Ran parallel tests on modi4 and eirene.

Misc. update:
2003-04-23 16:19:51 -05:00
Albert Cheng
d98f0d77c1 [svn-r6740] Purpose:
simple code cleanup.

Description:
While debug a problem in multiple_group_write(), noticed some returned
values were not checked.  Added code to check on all returned code.

Platforms tested:
h5committested.

Misc. update:
2003-04-23 15:21:44 -05:00
Bill Wendling
7927acd7f3 [svn-r6739] Purpose:
Bug Fix

Description:
    H5FC was failing on Copper (IBM P690). The reason: the xlf compiler
    needs files to end in .f in stead of .f90. If you have .f90 files,
    you need the "-qsuffix=f=f90" flag defined. This was defined for
    compiling things via the "-c" option (to object files) but not for
    straight compilation of a file.

    I also noticed that the directory modules were being extracted from
    was "." and "../src". H5FC would find these alright when doing a
    "make check-install" but if Suzie User were to try this, it might
    fail for her. Suzie would have to specify explicitly where to grab
    these files.

Solution:
    The solution to the problem was a bit more involved. I added a new
    variable called "F9XSUFFIXFLAG" which is set to this value if the
    machine needs it.

    Added new variable called "FSEARCH_DIRS" which can be set to the
    directories to find modules during compilation. The H5FC script knows
    where to find the correct modules (it's in the lib/ directory), so it
    uses the F9XMODFLAG to find them and not the FSEARCH_DIRS flag.

Platforms tested:
    Modi4 (Fortran & Parallel)
    Verbena (Fortran) C++ not needed since this is Fortran-only fix
    Arabica (Fortran)
    Copper (Fortran)

    Ran "make install" and "make check-install" afterwards...

Misc. update:
2003-04-23 14:25:58 -05:00
Quincey Koziol
46cb3df9f5 [svn-r6738] Purpose:
Code cleanup

Description:
    Add & improve assertion that was removed in last commit, to check for
    compact dataset storage.

Platforms tested:
    FreeBSD 4.8 (sleipnir)
    triple check not necessary.
2003-04-23 09:57:38 -05:00
Quincey Koziol
813168aa4d [svn-r6737] Purpose:
Update release notes

Description:
    Revise note about using -std=gnu99 for gcc 3.x to say -std=c99
2003-04-23 09:38:06 -05:00
Albert Cheng
4f923a56ca [svn-r6736] Purpose:
update

Description:
Added h5fc to the h5tools list.
Added feature that it will udpate tools that are present.
(Would still abort if no tools found at all.)

Platforms tested:
Did not h5committest since it does not test this tool at all.
Did various test in eirene by hand.

Misc. update:
2003-04-23 00:59:21 -05:00
Bill Wendling
8bbf1fb8e0 [svn-r6735] Purpose:
Update

Description:
    Ran "autoheader" to gather some of the added #defines that were
    included in the configure.in file over the months...

Platforms tested:
    Arabica & Baldric (Fortran)
    Modi4 (Parallel & Fortran)
    Verbena (C++ & Fortran)

    All with --enable-stream-vfd and doing a "make check-install".

Misc. update:
2003-04-22 18:07:30 -05:00
Bill Wendling
ccd5f5d41e [svn-r6734] Purpose:
Bug Fix

Description:
    The h5fc script couldn't find the correct libraries needed when it
    was used on Solaris and the --enable-stream-vfd was enabled.

Solution:
    Added checks for the -lnsl and -lsocket libraries if we're on Solaris
    or HP-UX.

Platforms tested:
    Arabica & Baldric (Fortran)
    Modi4 (Parallel & Fortran)
    Verbena (C++ & Fortran)

    All with --enable-stream-vfd and doing a "make check-install".

Misc. update:
2003-04-22 18:06:53 -05:00
Albert Cheng
f2d684c9a0 [svn-r6733] Purpose:
Updated with the check-install changes.

Description:

Solution:

Platforms tested:

Misc. update:
2003-04-22 17:54:41 -05:00
Albert Cheng
a10961f0cd [svn-r6732] Purpose:
Bug fix and feature

Description:
The patch to Makefile.in failed if an empty directory of fortran/examples
was left behind by a previous build.

Solution:
Attempted to put it in config/conclude.in just became a mess since
it is hard to predict when we will include examples in the subdirs
or not.
Borrow the structure of install-examples and do some handcode per
interface.  The Makefile.in of each interface (C, Fortran, C++)
controls everything.  Not very systematic but pretty clean for this
case.

Platforms tested:
h5committested.
Also tested in modi4 with various combinations of fortran, c++
enabled.

Misc. update:
2003-04-22 17:52:25 -05:00
Raymond Lu
696b504a37 [svn-r6731]
Purpose: handling special case

Description: This fletcher32 didn't handle Cray's special data type sizes.


Platforms tested: h5committested.  Cray
2003-04-22 11:54:13 -05:00
Raymond Lu
4447d4e5c7 [svn-r6730]
Purpose: New tests added.

Description: test VL data for compact dataset; test compact dataset's
	     maximal size.


Platforms tested: h5committested
2003-04-22 11:23:42 -05:00
Raymond Lu
3f620fc1e1 [svn-r6729]
Purpose: bug fix

Description: VL datatype in compact dataset fails because a wrong type size
	     is used.

Platforms tested: h5committested

Misc. update:
2003-04-22 11:20:25 -05:00
Albert Cheng
7b976dd7a3 [svn-r6728] Purpose:
Silly bug fix.

Description:
Forgot to put the comm/info duplication code in.

Solution:
Put them back in.

Platforms tested:
Did not run h5committest since the changes are all in the MPIO driver code.
Tested on eirene and Modi4, both parallel modes.

Misc. update:
2003-04-22 00:50:12 -05:00
Albert Cheng
1b9ecb6a01 [svn-r6726] Purpose:
Updated with the added tool of h5fc and fortran/examples checking with
the h5fc tool.
2003-04-21 21:35:09 -05:00
Albert Cheng
e9a9dff3e3 [svn-r6725] Purpose:
Feature

Description:
Added a simple way to run make check in the fortran/examples too.
This would be a good exercise of the installed h5fc command.
(A more systematic way, similar to install-examples, should be
implemented.)

Platforms tested:
h5committested--that only made sure the change did not break anything.
Also tested "make check-install" in modi4 to make sure the changes do
work.

Misc. update:
2003-04-21 21:27:47 -05:00
Bill Wendling
fce396c5a7 [svn-r6724] Purpose:
Commenting

Description:
    Added comments to the H5Fget_access_plist function to remind people
    that if they are going to be overwriting a value in the plist which
    was originally opened and inserted into the plist, then it should be
    closed before overwriting that value.

Platforms tested:
    Modi4 (Only comment change, so no h5committest needed).

Misc. update:
2003-04-21 17:43:12 -05:00
Pedro Vicente Nunes
bdaf33ca5a [svn-r6723] Purpose:
changed the h5pubconf.h file the MALLOC_WORKS definition
for code warrior , which is #undef
this is because pt=malloc(0) returns 0 in code warrior
and was causing a failure in the config_malloc_test


Platforms tested:
code warrior

Misc. update:
2003-04-21 17:30:02 -05:00
Pedro Vicente Nunes
48d942b756 [svn-r6722] Purpose:
removed specific code warrior debugging information


Platforms tested:
code warrior

Misc. update:
2003-04-21 17:27:36 -05:00
Pedro Vicente Nunes
8203a4ce4e [svn-r6721] Purpose:
bug fix

Description:
in the close strong case in H5F_close there was a do..while loop
that executed when nfiles==0, calling malloc(0)
this was causing a failure in the close call in Code Warrior, that returns 0
in the call pt=malloc(0)

Solution:
replaced with a while loop (checks the condition before executing)

Platforms tested:
code warrior, linux

Misc. update:
2003-04-21 17:26:32 -05:00
Bill Wendling
535172c8fb [svn-r6720] Purpose:
Bug Fix

Description:
    A resource leak happened if the H5Fget_access_plist() function was
    called. What was happening: the driver ID and info parts of the
    property list copied in H5Fget_access_plist were being overwritten,
    but those properties were copied initially, so we lost information.

    Added calls to the H5Fget_access_plist function to get the PList and
    then immediately close it. It would cause an infinite loop if there
    is a resource leak.

Solution:
    Before copying over those values, call the H5F_acs_close() function
    to close those values.

Platforms tested:
    Modi4 (Parallel & Fortran)
    Arabica (Fortran)
    Verbena (Fortran & C++)

Misc. update:
2003-04-21 13:30:55 -05:00
Bill Wendling
099e781c61 [svn-r6719] Purpose:
Bug Fix

Description:
    A resource leak happened if the H5Fget_access_plist() function was
    called. What was happening: the driver ID and info parts of the
    property list copied in H5Fget_access_plist were being overwritten,
    but those properties were copied initially, so we lost information.

Solution:
    Before copying over those values, call the H5F_acs_close() function
    to close those values.

Platforms tested:
    Modi4 (Parallel & Fortran)
    Arabica (Fortran)
    Verbena (Fortran & C++)

Misc. update:
2003-04-21 13:30:09 -05:00
Albert Cheng
9e3ab7e5d2 [svn-r6718] Purpose:
bug fix

Description:
The fphdf5.o and similar files are not included in the make clean
target.  So, if the same directory is used again for a different
build, the left behind file could cause a problem (e.g., if
the second build is for a different binary format.)

Solution:
Added fphdf5.c to the TEST_SRC list which indirect form the clean
target list.

Platforms tested:
Did not run h5committest tests because they don't verify this
failure.  I tested the fix in modi4 pp to verify all files are cleaned.

Misc. update:
2003-04-19 21:10:15 -05:00
Albert Cheng
11d5709f1e [svn-r6715] Purpose:
updated.

Description:

Solution:

Platforms tested:

Misc. update:
2003-04-18 08:34:08 -05:00
Albert Cheng
6bf4a73c6c [svn-r6714] Purpose:
Feature

Description:
Test program for the Flexible PHDF5 feature.

Platforms tested:
Tested on modi4 before but the feature is currenly disabled in
configure.  Checking this in for future work.

Misc. update:
2003-04-18 08:32:18 -05:00
Albert Cheng
8eb1a6150f [svn-r6711] Purpose:
Bug fix

Description:
Sometimes when H5detect fails (incorrect code, incorrect mpi launch
command, insufficient resources,...), it generates an incomplete or
even empty H5Tinit.c file.  If the empty file is not removed but
the make is run again, make will just use the empty file to generate
the library which will have lots of missing routines.  Make won't
fail until much later and the missing routines would be puzzling
to inexperienced users.

Solution:
If H5detect fails, the generated H5Tinit.c will be removed unless
$HDF5_Make_Ignore is set.  This is similar to removing .o file if
the compile fails.

Platforms tested:
Copper (parallel) which has a condition causing H5detect to fail.
That verified the change works.
Eirene (parallel) in which H5detect runs well.  This verified the
change works in normal conditions too.
Did not do the h5committest because this is just a makefile change
and the above two tests covered it well.

Misc. update:
2003-04-17 23:30:26 -05:00
Albert Cheng
32bcb46b23 [svn-r6710] Purpose:
updated with added file, testpar/t_ph5basic.c

Platforms tested:
bin/chkmanifest

Misc. update:
2003-04-17 22:07:43 -05:00
Albert Cheng
49fa61246e [svn-r6709] Purpose:
Bug fixes/API changes

Description:
    Previously, the Communicator and Info object arguments supplied
    to H5Pset_fapl_mpio() are stored in the property with its handle
    values.  This meant changes to the communicator or the Info object
    after calling H5Pset_fapl_mpio would affect the how the property
    list function.  This was also the case when H5Fopen/create operated.
    They just stored the handle value.  This is not according to the
    MPI-2 defined behavior of how Info objects should be handled. (MPI-2
    defines Info objects must be parsed when called.)
    The old design was trying to avoid numerous duplicates of the same
    information (e.g., every property object holds one version, every
    file opened holds another version, when all of them are referring to
    the same original version.)  Nevertheless it is safer to implement
    it according to MPI-2 definition.
    Futhermore, the library often needs to do message passing using the
    supplied communicator.  Using the same communicator as the application
    version may result in some messages mix up.
Solution:
    H5Pset_fapl_mpio now stores a duplicate of each of the communicator
    and Info object.
    H5Pget_fapl_mpio returns a duplicate of its stored communicator and
    Info object.  It is now the responsibility of the applications to free
    those objects when done.
    H5Fopen/create also stores a duplicate of the communicator and Info
    object supplied by the File Access Property list.
    H5Fclose frees those duplicates.
    There are a few more internal VFL call back functions that they
    follow this "make duplicates" requirement.

Platforms tested:
"h5committested".
What other platforms/configurations were tested?
    Eirene (mpicc), sol(mpicc), copper(parallel)

Misc. update:
Need to update MANIFEST for the added t_ph5basic.c which tests the
correctness of duplicated communicator and INFO object.
2003-04-17 22:04:56 -05:00
Albert Cheng
3585f15d91 [svn-r6708] Purpose:
Bug fixes/API changes

Description:
    Previously, the Communicator and Info object arguments supplied
    to H5Pset_fapl_mpio() are stored in the property with its handle
    values.  This meant changes to the communicator or the Info object
    after calling H5Pset_fapl_mpio would affect the how the property
    list function.  This was also the case when H5Fopen/create operated.
    They just stored the handle value.  This is not according to the
    MPI-2 defined behavior of how Info objects should be handled. (MPI-2
    defines Info objects must be parsed when called.)
    The old design was trying to avoid numerous duplicates of the same
    information (e.g., every property object holds one version, every
    file opened holds another version, when all of them are referring to
    the same original version.)  Nevertheless it is safer to implement
    it according to MPI-2 definition.
    Futhermore, the library often needs to do message passing using the
    supplied communicator.  Using the same communicator as the application
    version may result in some messages mix up.
Solution:
    H5Pset_fapl_mpio now stores a duplicate of each of the communicator
    and Info object.
    H5Pget_fapl_mpio returns a duplicate of its stored communicator and
    Info object.  It is now the responsibility of the applications to free
    those objects when done.
    H5Fopen/create also stores a duplicate of the communicator and Info
    object supplied by the File Access Property list.
    H5Fclose frees those duplicates.
    There are a few more internal VFL call back functions that they
    follow this "make duplicates" requirement.

Platforms tested:
"h5committested".
What other platforms/configurations were tested?
    Eirene (mpicc), sol(mpicc), copper(parallel)

Misc. update:
2003-04-17 22:03:52 -05:00
MuQun Yang
7c832af9aa [svn-r6707] Purpose:
A compiling error fixed for windows only

Description:
Use file handler instead of file stream  at H5FDstdio.c when using getfileHandle function of windows.

Solution:
see above, however; stdio driver tests failed on windows. I am still investigating the bug.
The current check will not fix the failure of stdio driver test on windows.
The good news is that it won't affect the release since the default driver used for test is sec2 driver and
all tests passed for sec2 driver on windows.

Platforms tested:
windows 2000 and confirmed at Linux.
Since the only change is two-line code inside #ifdef WIN32 #endif macro block,
it is not necessary to test all UNIX platforms. Still confirmed at eirene.

Misc. update:
2003-04-17 17:19:17 -05:00
Pedro Vicente Nunes
9dacf3d56b [svn-r6706] Purpose:
added test files for h5diff
:

Description:

Solution:

Platforms tested:

Misc. update:
2003-04-17 16:07:32 -05:00
Frank Baker
e6bd0196c3 [svn-r6705]
Purpose:
    Add new functions.
    Rewrite existing function.

Description:
    Added H5get_vfd_handle and H5get_obj_ids.
    Rewrote H5get_obj_count: function description was incomplete
        and 2 (of 3) parameters were missing.

Platforms tested:
    Safari, IE 5
2003-04-17 16:06:07 -05:00