summaryrefslogtreecommitdiffstats
path: root/tools/lib/h5diff.c
Commit message (Collapse)AuthorAgeFilesLines
* [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:
* [svn-r8904] Purpose:Pedro Vicente Nunes2004-07-201-72/+115
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | h5diff and h5repack changes Description: h5diff introduced the following four modes of output: Normal mode: print the number of differences found and where they occured Report mode: print the above plus the differences Verbose mode: print the above plus a list of objects and warnings Quiet mode: do not print output (h5diff always returns an exit code of 1 when differences are found) h5repack added an extra parameter for SZIP filter (coding method) the new syntax is -f SZIP=<pixels per block,coding> (pixels per block is a even number in 2-32 and coding method is 'EC' or 'NN') Example of use: ./h5repack -i file1 -o file2 -f SZIP=8,NN -v updated usage messages, test scripts and files accordingly Solution: Platforms tested: linux AIX solaris Misc. update:
* [svn-r8749] Purpose:Pedro Vicente Nunes2004-06-281-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | dumper new features Description: 1) added options for not printing : datasets, groups, datatypes, links 2) added a section for the user block 3) in the traversal routine, added the printing of an arrow for soft links and t he word HARDLINK for hardlinks the print of the file contents is made during traversal , instead of at the e nd of it (this is helpful for very large files, where the wait time can be very long) 4) changed the description of the fill value properties 5) added a colon after the printing of the array indices Solution: Platforms tested: linux AIX solaris Misc. update:
* [svn-r8383] Purpose:Quincey Koziol2004-04-181-9/+5
| | | | | | | | | | | | | Code cleanup Description: Clean up lots of warnings based on those reported from the SGI compilers as well as gcc. Platforms tested: SGI O3900, IRIX64 6.5 (Cheryl's SGI machine) FreeBSD 4.9 (sleipnir) w/ & w/o parallel h5committest
* [svn-r8074] Purpose:Pedro Vicente Nunes2004-01-161-2/+2
| | | | | | | | | | | | | | | | | | | added h5repack and h5diff support for copying and differences of references to dataset regions modified the behaviour in the diff of attributes, when a difference in name is detected in the attribute cycle (number of attributes of object), instead of exiting the cycle, rather continue Description: Solution: Platforms tested: linux solaris AIX Misc. update:
* [svn-r7969] Purpose:Pedro Vicente Nunes2003-12-181-3/+3
| | | | | | | | | | | | | | | | | | h5repack new features Description: addded the copy routines for hard links changed the traversal structure to store information about the hard links added tests Solution: Platforms tested: linux solaris IRIX Misc. update:
* [svn-r7966] Purpose:Pedro Vicente Nunes2003-12-171-49/+0
| | | | | | | | | | | | | | | | h5repack new features Description: added debugging functions and a hard link generated dataset for the test suite Solution: Platforms tested: linux solaris 2.7 IRIX Misc. update:
* [svn-r7913] Purpose:Pedro Vicente Nunes2003-12-041-4/+14
| | | | | | | | | | | | | | | | | code clean Description: separated the h5repack code in several modules Solution: Platforms tested: linux IRIX solaris Misc. update:
* [svn-r7912] Purpose:Pedro Vicente Nunes2003-12-041-5/+25
| | | | | | | | | | | | | | | | | | code clean, bug fix Description: the attributes of the root group were not being compared removed compiler warnings on IRIX and solaris Solution: added a special function to compare the attributes of the root group Platforms tested: linux IRIX 6.5 solaris 2.7 Misc. update:
* [svn-r7904] Purpose:Pedro Vicente Nunes2003-12-021-22/+148
| | | | | | | | | | | | | | | | | | | h5diff new features Description: added comparison for attributes adeded comparison for all dataset datatypes added tests for the new features changed the output format Solution: Platforms tested: linux solaris 5.7 IRIX 6.5 (64) Misc. update:
* [svn-r7796] Purpose:Pedro Vicente Nunes2003-10-301-10/+16
| | | | | | | | | | | | | | | | h5diff improvment Description: changed a call to exit(1) for return -1 for user friendiness in the h5diff function in the case that H5Fopen fails Solution: Platforms tested: linux (small change ) Misc. update:
* [svn-r7793] Purpose:Pedro Vicente Nunes2003-10-301-0/+2
| | | | | | | | | | | | | | | | | | h5diff new features Description: added the diff for variable lenght, opaque, enum, and bitfield datasets Solution: Platforms tested: linux solaris 2.7 IRIX Misc. update:
* [svn-r7785] Purpose:Pedro Vicente Nunes2003-10-291-16/+18
| | | | | | | | | | | | | | | | | | | | h5repack new features Description: added a copy routine for all types added a copy routine for attributes commnented some debug messages in h5trav added the verbose option to some h5diff messages Platforms tested: linux solaris 2.5 IRIX Misc. update:
* [svn-r7769] Purpose:Pedro Vicente Nunes2003-10-281-0/+424
moved h5diff "public API" routines to tools/lib folder Platforms tested: linux solaris 2.7 IRIX Misc. update: