summaryrefslogtreecommitdiffstats
path: root/tools/lib/h5diff.c
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r14160] Description:Quincey Koziol2007-09-271-2/+2
| | | | | | | | | | | | | | | | Make H5Topen versioned, and add regression test for H5Topen1. Tested on: FreeBSD/32 6.2 (duty) in debug mode FreeBSD/64 6.2 (liberty) w/C++ & FORTRAN, in debug mode Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64 2.6 (smirom) w/default API=1.6.x, w/C++ & FORTRAN, in production mode Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN, w/szip filter, in production mode AIX/32 5.3 (copper) w/FORTRAN, w/parallel, in production mode Mac OS X/32 10.4.10 (amazon) in debug mode
* [svn-r14154] Description:Quincey Koziol2007-09-251-10/+9
| | | | | | | | | | | | | | | | | | | | Finish deprecating last H5G symbol (H5G_obj_t) - yay! Lots of misc. library fixes to remove confusion between links and objects. The tools could still use another pass, to remove h5trav_type_t type and make the correct distinction between links & objects. Tested on: FreeBSD/32 6.2 (duty) in debug mode FreeBSD/64 6.2 (liberty) w/C++ & FORTRAN, in debug mode Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64 2.6 (smirom) w/default API=1.6.x, w/C++ & FORTRAN, in production mode Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN, w/szip filter, in production mode AIX/32 5.3 (copper) w/FORTRAN, w/parallel, in production mode Mac OS X/32 10.4.10 (amazon) in debug mode
* [svn-r14144] Description:Quincey Koziol2007-09-131-659/+554
| | | | | | | | | | | | | | | | Move H5Gget_objinfo() to deprecated symbols section and retarget internal usage to H5Lget_info()/H5Oget_info(). Misc. other code cleanups... Tested on: FreeBSD/32 6.2 (duty) FreeBSD/64 6.2 (liberty) Linux/32 2.6 (kagiso) Linux/64 2.6 (smirom) AIX/32 5.3 (copper) Solaris/32 2.10 (linew) Mac OS X/32 10.4.10 (amazon)
* [svn-r14136] Description:Quincey Koziol2007-09-061-178/+138
| | | | | | | | | | | | | | Move H5Gget_num_objs() and several minor macros, etc. to deprecated symbols section, replacing it with H5Gget_info(). Tested on: FreeBSD/32 6.2 (duty) FreeBSD/64 6.2 (liberty) Linux/32 2.6 (kagiso) Linux/64 2.6 (smirom) AIX/32 5.3 (copper) Solaris/32 5.10 (linew) Mac OS X/32 10.4.10 (amazon)
* [svn-r14132] Description:Quincey Koziol2007-08-301-1/+1
| | | | | | | | | | Regenerate the h5diff_types.h5 file, which had somehow gotten mangled in some earlier checkin (prior to ~2-3 days ago, at least). Clean up formatting a bit also.. Tested on: Mac OS X/32 10.4.10 (amazon)
* [svn-r14127] Description:Quincey Koziol2007-08-291-12/+12
| | | | | | | | | | | | | Move H5Gget_linkval to deprecated symbol section and replace with H5Lget_val for internal calls. Tested on: FreeBSD/32 6.2 (duty) FreeBSD/64 6.2 (liberty) Linux/32 2.6 (kagiso) Linux/64 2.6 (smirom) Solaris/32 5.10 (linew) Mac OS X/32 10.4.10 (amazon)
* [svn-r14115] Description:Quincey Koziol2007-08-281-11/+12
| | | | | | | | | | | | | | | | | Remove all plain calls to H5Gopen() from source, replacing them with either H5Gopen2(). Add test for H5Gopen1(). Reformatted several pieces of code, to clean them up. Tested on: FreeBSD/32 6.2 (duty) FreeBSD/64 6.2 (liberty) Linux/32 2.6 (kagiso) Linux/64 2.6 (smirom) Solaris/32 5.10 (linew) Mac OS X/32 10.4.10 (amazon)
* [svn-r13648] Description:Quincey Koziol2007-04-121-1/+2
| | | | | | | | | | Rename new error handling API routines from H5E<foo>_stack() to H5E<foo>2(). Tested on: Mac OS X/32 10.4.9 (amazon) FreeBSD/32 6.2 (duty) FreeBSD/64 6.2 (liberty)
* [svn-r13451] Pedro Vicente Nunes2007-03-051-286/+285
| | | | | | | h5diff bug fix, attributes differences were not being count for total differences Revision of H5Ocopy call in h5repack
* [svn-r13368] Pedro Vicente Nunes2007-02-211-6/+5
| | | | Added a little format alignment to the printing of dimensions
* [svn-r13334] Added a new function to print the dimensions sizesPedro Vicente Nunes2007-02-191-16/+32
|
* [svn-r13253] Updated all C and C++ style source code files with the THG ↵Albert Cheng2007-02-071-2/+3
| | | | | | | | | copyright notice. Tested platform: Kagiso only since it is only a comment block change. If it works in one machine, it should work in all, I hope. Still need to check the parallel build on copper.
* [svn-r12932] Description:Quincey Koziol2006-11-171-9/+9
| | | | | | | | | | | | Basic support for H5Literate() routine. Still needs to be fleshed out and refactored to simplify. Also, needs tests. :-) Tested on: FreeBSD/32 4.11 (sleipnir) Linux/32 2.4 (heping) Linux/64 2.4 (mir) AIX/32 5.? (copper) Mac OS X/32 10.4.8 (amazon)
* [svn-r12928] code revisionPedro Vicente Nunes2006-11-161-1/+1
|
* [svn-r12895] Description:Quincey Koziol2006-11-131-4/+4
| | | | | | | | | | | | | Add new H5Lget_val_by_idx() routine & tests. Also includes most of changes for H5Ldelete_by_idx() routine. Tested on: Mac OS X/32 10.4.8 (amazon) FreeBSD/32 4.11 (sleipnir) Linux/32 2.4 (heping) Linux/64 2.4 (mir) AIX/32 5.? (copper)
* [svn-r12864] Description:Quincey Koziol2006-11-061-4/+4
| | | | | | | | Changed H5Lget_linkval() to H5Lget_val(), per our design discussion last Friday afternoon. Tested on: Linux/32 2.6 (chicago)
* [svn-r12835] Description:Quincey Koziol2006-10-311-5/+5
| | | | | | | | | Change H5Lget_linkinfo() to H5Lget_info() to better align with coming API changes. Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r12700] Alert:Quincey Koziol2006-10-021-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | File format is not stable, don't keep files produced! Description: First stage of checkins modifying the format of groups to support creation order. Implement "dense" storage for links in groups. Try to clarify some of the symbols for the H5L API. Add the H5Pset_latest_format() flag for FAPLs, to choose to use the newest file format options (including "dense" link storage in groups) Add the H5Pset_track_creation_order() flag for GCPLs, to enable creation order tracking in groups (although no index on creation order yet). Remove --enable-group-revision configure flag, as file format issues are now handled in a backwardly/forwardly compatible way. Clean up lots of compiler warnings and other minor formatting issues. Tested on: FreeBSD/32 4.11 (sleipnir) w/threadsafe Linux/32 2.4 (heping) w/FORTRAN & C++ Linux/64 2.4 (mir) w/enable-v1.6 compa Mac OSX/32 10.4.8 (amazon) AIX 5.3 (copper) w/parallel & FORTRAN
* [svn-r12687] reverted back some changes that inadvertedely added some ↵Pedro Vicente Nunes2006-09-261-2/+2
| | | | | | | | output to the parallel part of h5diff tested : heping parallel
* [svn-r12678] bug fixPedro Vicente Nunes2006-09-251-2/+2
| | | | | the number of atribute differences was not added to the total sum of differences
* [svn-r12528] Added User-Defined links to the library.James Laird2006-08-021-0/+85
| | | | | | | | | | | | | | Users can create external links using H5L_create_external(). These links point to an object in another HDF5 file. Users can alter the behavior of external links or create new kinds of links by registering callbacks using the H5L interface. Added tests, tools support, etc. Also a number of other, minor changes have been made (some restructuring of the H5L interface, for instance). Additional documentation and examples are forthcoming.
* [svn-r12440] Purpose:Quincey Koziol2006-06-271-132/+132
| | | | | | | | | | | 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
* [svn-r12254] Purpose:Quincey Koziol2006-04-141-4/+4
| | | | | | | | | | | | | | Anti-feature Description: Revert changes to H5G_stat_t struct, to make it compatible with the 1.6.x branch again. The information that was added to the H5G_stat_t struct will be reported through other API routines. Platforms tested: FreeBSD 4.11 (sleipnir) w/C++ Linux 2.4/64 (mir) w/C++ & Fortran Solaris 2.9 (shanti)
* [svn-r12134] Purpose:Pedro Vicente Nunes2006-03-221-805/+805
| | | | | | | | | | | | | | | | | | bug fix Description: 1) added a more explainative usage message 2) the percent relative error for the integer type (division) was being done using integer arythmetic; use floating point arythmetic instead 3) added a new test for integer percent Solution: Platforms tested: linux (32,64) AIX solaris Misc. update:
* [svn-r12092] Purpose:Pedro Vicente Nunes2006-03-151-1/+5
| | | | | | | | | | | | | | | | bug fix, new features Description: when comparing links , the output for the number of differences found was not being done Solution: print it add 3 more tests that test the output of differences for 1) groups 2) datatypes 3) links Platforms tested: linux Misc. update:
* [svn-r11886] Purpose:Quincey Koziol2006-01-231-54/+33
| | | | | | | | | | | | | Code cleanup Description: Check in some of the code cleanups from working on the external link support. (This doesn't include any of the external link features) Platforms tested: FreeBSD 4.11 (sleipnir) Mac OSX.4 (amazon) Linux 2.4
* [svn-r11584] Purpose:Pedro Vicente Nunes2005-10-191-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | bug fix Description: an assertion after the search for objects was saying that the number of objects in file should be > 0 removed it, since there can be a case where the number of objects is 0. in this case this was found by a case where zlib was not present and the output file was not written any objects to note: this was only detected on the windows batch files, that do not have a conditional condition to not run tests when a filter is not present Solution: Platforms tested: linux Misc. update:
* [svn-r11304] Purpose:Quincey Koziol2005-08-271-4/+4
| | | | | | | | | | | | | Code cleanup (sorta) Description: Adjust H5G_stat_t to prepare for eventual "external link" information. This also puts the information for regular objects and soft links into more obviously separate places. Platforms tested: FreeBSD 4.11 (sleipnir) Linux 2.4
* [svn-r11286] Purpose:Albert Cheng2005-08-221-4/+4
| | | | | | | | | | | | | | | bug fix Description: The set of h5diffdebugN macros that printed nothing did not have the proper number of parameters. Some compilers (gcc) did not like it. Solution: Fixed them to have the matching number of parameters. Platforms tested: heping pp (using both mpich-icc and mpich-gcc), modi4 pp.
* [svn-r11275] Purpose:Albert Cheng2005-08-201-2/+8
| | | | | | | | | | | | cleanup Description: Disable the debug printout. Platforms tested: heping pp. Misc. update:
* [svn-r11263] Purpose:Albert Cheng2005-08-181-145/+117
| | | | | | | | | Bug fix. Description: Fixed ph5diff Bugs that hanged the last test. Tested in heping and copper in pp mode.
* [svn-r11259] Purpose:Albert Cheng2005-08-171-44/+123
| | | | | | | | | | | | | | | | | | | | Bug fix Description: ph5diff had been hanging in Tflops. Found out that vsnprintf ph5diff uses was a local coded that did not limit printing according to the size argument. That resulted in buffer overflow and other problems. Solution: Added some sort of size checking in the home-grown vsnprintf and had ph5diff checked for error return of vsnprintf. Leon also revamped the ph5diff manager's way of handling communications with the workers. That eliminated all but the last case of hanging. Platforms tested: Tflops. Misc. update:
* [svn-r11245] Purpose:Quincey Koziol2005-08-131-30/+30
| | | | | | | | | | | | | | | | | | | | 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
* [svn-r11005] Purpose:Pedro Vicente Nunes2005-06-301-29/+50
| | | | | | | | | | | | | | | | | | | bug fix Description: the numbers of differences was not printed for each object Solution: print it Platforms tested: linux solaris aix Misc. update:
* [svn-r10996] Purpose:Leon Arber2005-06-281-45/+57
| | | | | | | | | | | | | | | | | | | | | | | Bug fix for parallel case for new "Some objects were not comparable" patch to h5diff. Description: The parallel h5diff wouldn't print out "Some objects were not comparable" because the worker tasks were not communicating the not_cmp flag of the diff_opt_t struct back to the manager, who ultimately prints everything. Also, some miscellaneous fixes for error printing. Some errors were printed out with printf instead of fprintf(stderr,...). In parallel environments, this can result in output getting lost. Solution: Had the worker tasks pass along the not_cmp flag to the manager when they sent along the number of differences they found. Platforms tested: heping (pp), sol (pp) Misc. update:
* [svn-r10994] Purpose:Pedro Vicente Nunes2005-06-281-573/+576
| | | | | | | | | | | | | | | | | | | | | bug fix Description: when 2 objects were not comparable, the final print information for the non verbose mode printed "0 differences found" Solution: replaced instead with a Summary message that says "Some objects were not comparable" Platforms tested: linux solaris Misc. update:
* [svn-r10736] Purpose:Quincey Koziol2005-05-071-0/+2
| | | | | | | | | | | Code cleanup Description: Clean up some compiler warnings Platforms tested: FreeBSD 4.11 (sleipnir) h5committest
* [svn-r10628] Purpose:Quincey Koziol2005-04-181-1/+3
| | | | | | | | | | | Code cleanup Description: Clean up various warnings reported by the Windows team. Platforms tested: FreeBSD 4.11 (sleipnir) Too minor to require h5committest
* [svn-r10170] Purpose:Leon Arber2005-03-091-38/+84
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug Fixes Description: Fixes for several bugs, including dumping of excess output to a temporary file, fix for printing hsize_t datatype, and the long awaited fix for intermixed output. Solution: Fix 1: Overflow file Previously, any output that a worker task made was buffered locally in memory, up to a point. Any output beyond the size of the buffer (used to be 10k) was discarded. Now, the memory buffer size has been changed to 1k and any output beyond this amount is sent a temporary file. This way, no output is lost and memory usage is kept under control. The temporary file is deleted as soon as a worker task finishes sending its contents to the manager. Fix 2: hsize_t printing Printing of the hsize_t datatype used to be handled by %Hu passed to HDfprintf. However, there is no corresponding HDvsnprintf that is able to print hsize_t types. These are now printed with the aid of H5_PRINTF_LL_WIDTH. Fix 3: Intermixed output fix Intermixed output would occur on some machines (although I haven't seen it happen for a while) due to the unpredictability of the underlying network and the speed at which various message would travel. This has been fixed by having all output send to the manager for printing. The worker tasks no longer print the output themselves upon receipt of a token, but instead send that data to the manager. Platforms tested: heping, eirene, tg-login (the only place that seems to still experience intermixed output every now and then) Misc. update:
* [svn-r10136] Purpose:Albert Cheng2005-03-031-9/+15
| | | | | | | | | | | | | | | | Bug fix. Description: MPI_LONG_LONG, which is not standard yet, was used to pass the nubmer of differences found. This was needed because number of differences is defined as type hsize_t which can be arbitary large such that there is no MPI type that matches it. The value is passed between processes as an array of bytes in order to be portable. But this may not work in non-homogeneous MPI environments. This fix was actually Leon's idea. Platforms tested: Tested in QSC in which this failed.
* [svn-r9969] Purpose:Leon Arber2005-02-091-2/+7
| | | | | | | | | | | | | | | | | | | Correction to previous print_manager_output bugfix Description: Although the previous bugfix did fix all the errors, it was not the correct way to fix the problem. Since the manager will only buffer output when run in parallel mode, in serial mode this function should not even be called. Solution: Wrapped print_manager_output in #define's to prevent it from being included in serial builds. Platforms tested: heping (serial + parallel) Misc. update:
* [svn-r9957] Purpose:Albert Cheng2005-02-081-2/+2
| | | | | | | | | | | | | | | | | | Bug fix. Description: print_manager_output was missing because it was compiled in only parallel mode. Solution: Made it available all the times. Platforms tested: h5committested. (testph5diff.sh failed in copper but that is a different error.) Also tested in heping, serial and pp. Misc. update:
* [svn-r9956] Purpose:Leon Arber2005-02-081-204/+249
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed numerous ph5diff bugs. Description: Fixed manager output printing Fixed out of order output printing Fixed test script execution problem Temporary fix for large amounts of output overflowing buffer. Solution: The manager task buffers its output. However, since the manager task never gets a print token, this output was lost. Solution: new function called print_manager_output that prints buffered output is called in places where the manager buffers its output. printf was apparently buffering output. This means that a task would sometimes print even after it had given up its print token. Added fflush() call after printf() calls, which seems to have fixed the problem. calling rsh multiple times in succession seems to overwhelm something in Linux, as it begins to refuse new connections until the old ones reset. Since each call to mpirun in the test script starts up 4 rsh sessions, the test script eventually is unable to run any further tests. Solution: Added a short delay in the testscript between successive calls to mpirun to allow old connections to reset. The 10k output buffer was of insufficient size to hold the large amounts of output generated by some of the tests. Since code to buffer to a file has not been implemented yet, a temporary fix was to increase the size of the output buffer to 50k. Platforms tested: heping Misc. update:
* [svn-r9947] Purpose:Albert Cheng2005-02-061-0/+24
| | | | | | | | | | | | | Feature Description: Added a new function, phdiff_dismiss_workers, which tells the phdiff worker processes to end. Platforms tested: Tested in heping, serial and parallel. Misc. update:
* [svn-r9925] Purpose:Leon Arber2005-02-021-464/+196
| | | | | | | | | | | | | | | | | | | Bug Fix Description: Permanent fix for the incompatibilities between h5diff and h5repack. Solution: h5diff now contains the code to run both parallel and serial diffs. Depending on how the binary is called, it will run either the serial or the parallel versions respectively. Platforms tested: heping(serial + parallel), copper. Misc. update:
* [svn-r9877] Purpose:Leon Arber2005-01-271-3/+311
| | | | | | | | | | | | | | | | | Bug fix: Temporary fix for h5repack failures in all parallel builds. Description: The parallel additions to h5diff interfered with h5repack. Solution: Added a second set of "parallel" functions to h5diff.c. h5repack uses the serial versions, whereas h5diff will use the parallel versions. Also, h5diff will now be smart about when to enter parallel mode. If is run with mpirun with more than 1 task, it will enter parallel mode. Otherwise, it will stay in serial mode as before. Platforms tested: heping (serial and parallel) Misc. update:
* [svn-r9872] Purpose:Albert Cheng2005-01-261-432/+676
| | | | | | | | | | | | New feature. Description: Added new tool ph5diff. (Code done by Leon Arber.) Code is changed but test is not working yet. For now, it skipped all tests. Platforms tested: Tested in heping, serial and parallel modes.
* [svn-r9727] Purpose:Quincey Koziol2004-12-291-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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:
* [svn-r9370] Purpose:Quincey Koziol2004-10-061-1/+1
| | | | | | | | | | | | | | | Refactor code Description: Refactor common code for determining the native type for using in the tools into separate routine. Also, reduce diffs between the two branches and bring back some fixes from the development branch to the release branch. Platforms tested: FreeBSD 4.10 (sleipnir) too minor to require h5committest
* [svn-r8912] Purpose:Pedro Vicente Nunes2004-07-211-2/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | bug fixes Description: the return error code for a function was not initialized. in HP-UX it happened that this variable was initialized to -1 causing the function to return with an error condtion solution : initialized the variable to 0 the name of the dataset was printed after the differences in verbose mode and report when differences were found solution : check first if differences were found and then print the name of dataset and differences in verbose mode always print the name first Solution: Platforms tested: linux aix solaris Misc. update: