summaryrefslogtreecommitdiffstats
path: root/release_docs/RELEASE.txt
blob: 00dae15bfeedb68576108ca61050073481b017e8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
HDF5 version 1.8.6-pre3 currently under development
================================================================================

INTRODUCTION
============

This document describes the differences between HDF5-1.8.5 and 
HDF5 1.8.6, and contains information on the platforms tested and 
known problems in HDF5-1.8.6. 
For more details, see the files HISTORY-1_0-1_8_0_rc3.txt 
and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.

Links to the HDF5 1.8.6 source code, documentation, and additional materials
can be found on the HDF5 web page at:

     http://www.hdfgroup.org/products/hdf5/

The HDF5 1.8.6 release can be obtained from:

     http://www.hdfgroup.org/HDF5/release/obtain5.html

User documentation for 1.8.6 can be accessed directly at this location: 

     http://www.hdfgroup.org/HDF5/doc/

New features in the HDF5-1.8.x release series, including brief general 
descriptions of some new and modified APIs, are described in the "What's New 
in 1.8.0?" document:

     http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html

All new and modified APIs are listed in detail in the "HDF5 Software Changes 
from Release to Release" document, in the section "Release 1.8.6 (current 
release) versus Release 1.8.5":

     http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html

If you have any questions or comments, please send them to the HDF Help Desk:

     help@hdfgroup.org


CONTENTS
========

- New Features
- Support for New Platforms, Languages, and Compilers
- Bug Fixes since HDF5-1.8.5
- Platforms Tested
- Supported Configuration Features Summary
- Known Problems


New Features
============

    Configuration
    -------------
    - CMake: Improved CPack packaging, added parallel commands, improved
      configuration options (better similarity to configure), added more
      tests, better support for use in external cmake projects. 
      (ADB - 2010/10/07)
    - The default configuration setting for official releases is 
      --enable-production. For unofficial releases, the default configuration 
      setting has been --disable-production. (AKC  - 2010/05/28)
    Library
    -------
    - Added support for thread safety on Windows using the Windows threads 
      library. Use the HDF5_ENABLE_THREADSAFE option in CMake on a Windows 
      platform to enable this functionality. This is supported on Windows 
      Vista and newer Windows operating systems. (MAM - 2010/09/10)
    - H5Tset_order and H5Tget_order now support all datatypes.  A new byte 
      order, H5T_ORDER_MIXED, has been added specifically for a compound 
      datatype and its derived type.  (SLU - 2010/8/23) 
    - Improved performance of metadata I/O by changing the default algorithm 
      to perform I/O from all processes (instead of just process 0) when using 
      parallel I/O drivers. (QAK - 2010/07/19)
    - Improved performance of I/O on datasets with the same shape, but 
      different rank. (QAK - 2010/07/19)
    - Improved performance of the chunk cache by avoiding unnecessary b-tree 
      lookups of chunks already in cache. (NAF - 2010/06/15) 
      
    Parallel Library
    ----------------
    - None
 
    Tools
    -----
    - h5diff: Added a new flag: --exclude-path.  The specified path to an 
      object will be excluded when comparing two files or two groups. If a 
      group is specified to be excluded, all member objects of that group 
      will be excluded.  (JKM - 2010/09/16).
    - h5ls: Added a new flag: --no-dangling-links.  See --help output for 
      details. (JKM - 2010/06/15)
    - h5ls: Added a new flag --follow-symlinks.  See --help output for 
      details. (JKM - 2010/05/25)
      
    High-Level APIs
    ---------------
    - None

    F90 API
    -------
     - None

    C++ API
    -------
    - None


Support for New Platforms, Languages, and Compilers
===================================================
    - Sun C and C++ 5.10 and Sun Fortran 95 8.4.
    - Mac OS X 10.6.4 with gcc 4.2.1 and gfortran 4.6


Bug Fixes since HDF5-1.8.5
==========================

    Configuration
    -------------
    - The default number of MPI processes for testing purposes has been 
      changed from 3 to 6.  (AKC - 2010/11/11)
    - Some tests in tools/h5repack may fail in AIX systems when -q32 mode is 
      used. The error is caused by not requesting enough memory in default.
      Added "env LDR_CNTRL=MAXDATA=0x20000000@DSA" into the $RUNSERIAL and
      $RUNPARALLE in the AIX config file so that executables are tested with
      more memory.  (AKC - 2010/11/11)
    - Removed recognition of the parallel compilers of LAM(hcc) and
      ChMPIon(cmpicc) since we have no access to these two MPI implementations
      and cannot verify their correctness. (AKC - 2010/07/14 - Bug 1921)
    - PHDF5 was changed to use "mpiexec" instead of mpirun as the default 
      MPI applications startup command as defined in the MPI-2 definition, 
      section 4.1. (AKC - 2010/06/11 - Bug 1921)
      
    Library
    -------
    - Fixed a bug that caused big endian machines to generate corrupt files
      when using the scale-offset filter with floating point data or fill
      values.  Note that such datasets will no longer be readable by any
      by any machine after this patch.  (NAF - 2010/02/02 - Bug 2131)
    - Retrieving a link's name by index in the case where the link is external
      and the file that the link refers to doesn't exist will now fail 
      gracefully rather than cause a segmentation fault. (MAM - 2010/11/17)
    - Modified metadata accumulator to better track accumulated dirty metadata 
      in an effort to reduce unnecessary I/O in certain situations and to 
      fix some other corner cases which were prone to error. (MAM - 2010/10/15)
    - Added a new set of unit tests that are run during 'make check' to verify 
      the behavior of the metadata accumulator. (MAM - 2010/10/15)
    - Modified library to always cache symbol table information.  Libraries
      from version 1.6.3 and earler have a bug which causes them to require 
      this information for some operations. (NAF - 2010/09/21 - Bug 1864)
    - Fixed a bug where the library could generate an assertion/core dump when
      a file that had been created with H5Pset_libver_bounds(fapl,
      H5F_LIBVER_LATEST, H5F_LIBVER_LATEST) but didn't have a superblock
      extension was later reopened.  (QAK - 2010/09/16 - Bug 1968)
    - Fixed a bug that could occur when getting information for a new-style
      group that was previously opened through a file handle that was later
      closed. (NAF - 2010/09/15)
    - Added define check in H5public.h if stdint.h is supported by the C++
      compiler. This define is only available on Windows with VS2010 and using
      CMake to build the library. (ADB - 2010/09/13 - Bug 1938)
    - When a mandatory filter failed to write data chunks, the dataset
      couldn't close (bug 1260).  The fix releases all resources and closes
      the dataset but returns a failure. (SLU - 2010/09/08) 
    - H5Eset_current_stack now also closes the error stack set as the 
      default. This is to avoid a potential problem. 
      (SLU - 2010/09/07 - Bug 1799)
    - Corrected situation where 1-D chunked dataset could get created by an
      application without calling H5Pset_chunk().  H5Pset_chunk is now
      required for creating all chunked datasets.  (QAK - 2010/09/02)
    - Fixed many memory issues that valgrind exposed.  (QAK - 2010/08/24)
    - Fixed the bug in the filter's public CAN_APPLY function.  The return
      value should be htri_t not herr_t. (SLU - 2010/08/05 - Bug 1239)
    - Fixed the STDIO VFD to use fseeko64 instead of fseek64 for 64-bit I/O 
      support. (AKC - 2010/7/30)
    - Fixed a bug in the direct I/O driver that could render files with certain
      kinds of unaligned data unreadable or corrupt them. (NAF - 2010/07/28)
    - valgrind reported an error of copying data to itself when a new attribute 
      is written.  Fixed by taking out the memcpy step in the attribute code. 
      (SLU - 2010/07/28 - Bug 1956)
    - Corrected various issues in the MPI datatype creation code which could
      cause resource leaks or incorrect behavior (and may improve the
      performance as well).  (QAK - 2010/07/19)
    - Fixed a bug that could cause file corruption when using non-default sizes
      of addresses and/or lengths.  This bug could also cause uncorrupted files
      with this property to be unreadable.  This bug was introduced in 1.8.5.
      (NAF - 2010/07/16 - Bug 1951)

    Parallel Library
    ----------------
    - None

    Tools
    -----
    - Fixed h5diff to compare member objects and groups recursively when 
      two files or groups are compared. (JKM - 2010/9/16 - Bug 1975)
    - Fixed h5repack to be able to convert a dataset to COMPACT layout.
      (JKM - 2010/09/15 - Bug 1896)
    - Changed h5ls to not interpret special characters in object or attribute
      names for output. (JKM - 2010/06/28 - Bug 1784)
    - Revised the order of arguments for h5cc, h5fc, h5c++, h5pcc and h5pfc. 
      CPPFLAGS, CFLAGS, LDFLAGS, and LIBS have been duplicated with an H5BLD_ 
      prefix to put the flags and paths from the hdf5 build in the correct 
      places and allow the script user to add entries in CPPFLAGS, CFLAGS, 
      LDFLAGS, and LIBS that will take precedence over those from the hdf5 
      build. The user can make these entries persistent by editing 
      CFLAGSBASE, CPPFLAGSBASE, LDFLAGSBASE, and LIBSBASE near the top of 
      the script or temporary by setting HDF5_CFLAGS, HDF5_CPPFLAGS, 
      HDF5_LDFLAGS, or HDF5_LIBS in the environment. The new order of 
      arguments in these scripts is $CLINKER $H5BLD_CPPFLAGS $CPPFLAGS 
      $H5BLD_CFLAGS $CFLAGS $LDFLAGS $clibpath $link_objs $LIBS $link_args 
      $shared_link. (LRK - 2010/10/25 - Bug 1973)

    F90 API
    ------
    - None

    C++ API
    ------
    - None

    High-Level APIs:
    ------
    - None

    Fortran High-Level APIs:
    ------
    - None


Platforms Tested
================
The following platforms and compilers have been tested for this release.

    AIX 6.1                       xlc 11.1.0.3
    (NCSA BP)                     xlC 11.1.0.3
                                  xlf 13.1.0.3
                                  mpcc_r 11.1.0.3
                                  mpxlf_r 13.1.0.3

    FreeBSD 6.3-STABLE i386       gcc 3.4.6 [FreeBSD] 20060305
    (duty)                        g++ 3.4.6 [FreeBSD] 20060305
                                  gcc 4.4.5 20100803
                                  g++ 4.4.5 20100803
                                  gfortran 4.4.5 20100803

    FreeBSD 6.3-STABLE amd64      gcc 3.4.6 [FreeBSD] 20060305
    (liberty)                     g++ 3.4.6 [FreeBSD] 20060305
                                  gcc 4.4.5 20100803
                                  g++ 4.4.5 20100803
                                  gfortran 4.4.5 20100803

    Linux 2.6.18-194.3.1.el5PAE   gcc (GCC) 4.1.2 and 4.4.2
    #1 SMP i686 i686 i386         G95 (GCC 4.0.3 (g95 0.93!) Apr 21 2010)
    (jam)                         GNU Fortran (GCC) 4.1.2 20080704 
                                      (Red Hat 4.1.2-48) and 4.4.2
                                  PGI C, Fortran, C++ 10.4-0 32-bit
                                  PGI C, Fortran, C++ 10.6-0 32-bit
                                  Intel(R) C Compiler for 32-bit
                                      applications, Version 11.1 
                                  Intel(R) C++ Compiler for 32-bit
                                      applications, Version 11.1
                                  Intel(R) Fortran Compiler for 32-bit
                                      applications, Version 11.1
                                  Absoft 32-bit Fortran 95 10.0.7
                                  MPICH mpich2-1.3.1 compiled with
                                      gcc 4.1.2 and gfortran 4.1.2

    Linux 2.6.18-194.17.1.el5     gcc 4.1.2 and 4.4.2
    #1 SMP x86_64 GNU/Linux       G95 (GCC 4.0.3 (g95 0.93!) Apr 21 2010)
    (amani)                           tested for both 32- and 64-bit binaries
                                  GNU Fortran (GCC) 4.1.2 20080704
                                      (Red Hat 4.1.2-46) and 4.4.2
                                  Intel(R) C, C++, Fortran Compilers for 
                                      applications running on Intel(R) 64, 
                                      Version 11.1.
                                  PGI C, Fortran, C++ Version 9.0-4
                                      for 64-bit target on x86-64
                                  MPICH mpich2-1.3.1 compiled with
                                      gcc 4.1.2 and gfortran 4.1.2

    SGI ProPack 7 Linux           Intel(R) C++ Version 11.1 20100806
    2.6.32.19-0.3.1.1982.0.PTF-   Intel(R) Fortran Version 11.1 20100806
    default #1 SMP                SGI MPT 2.01
    SGI Altix UV
    (NCSA ember)

    SunOS 5.10 32- and 64-bit     Sun C 5.9 Sun OS_sparc Patch 124867-16
    (linew)                       Sun Fortran 95 8.3 Sun OS_sparc Patch 127000-13
                                  Sun C++ 5.9 Sun OS_sparc Patch 124863-62
                                  Sun C 5.10 SunOS_sparc Patch 141861-07
                                  Sun Fortran 95 8.4 SunOS_sparc Patch 128231-06
                                  Sun C++ 5.10 SunOS_sparc 128228-11

    Intel Xeon Linux 2.6.18-      gcc 4.2.4
    92.1.10.el5_lustre.1.6.6smp-  Intel(R) C++ Version 10.1.017
    perfctr #8 SMP                Intel(R) Fortran Compiler Version 10.1.017
    (NCSA abe)                    Open MPI 1.3.2
                                  MVAPICH2-1.5.1_pgi-10.8

    Windows XP                    Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
                                  Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
                                  Visual Studio 2010 (cmake)
                                  Cygwin(1.7.7 native gcc(4.3.4) compiler and gfortran)

    Windows XP x64                Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
                                  Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
                                  Visual Studio 2010 (cmake)
                                  Cygwin(1.7.7 native gcc(4.3.4) compiler and gfortran)

    Windows Vista                 Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
                                  Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)

    Windows Vista x64             Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
                                  Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)

    Windows 7                     Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)

    Windows 7 x64                 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)

    Mac OS X 10.6.3 (Intel 64-bit) i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1
    Darwin Kernel Version 10.3.1  GNU Fortran (GCC) 4.5.0 20090910  
                                  Intel C, C++ and Fortran compilers 11.1 20100806

    Mac OS X 10.6.4 (Intel 32-bit) i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1
    Darwin Kernel Version 10.4.0  GNU Fortran (GCC) 4.6.0 20101106
                                  Intel C, C++ and Fortran compilers 12.0.0 20101110

    Mac OS X 10.6.4 (Intel 64-bit) i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5659)
    Darwin Kernel Version 10.6.0   GNU Fortran (GCC) 4.5.0 20090910 
                                   Intel C, C++ and Fortran compilers 11.1 20100806

    Fedora 12 2.6.32.16-150.fc12.ppc64 #1 SMP ppc64 GNU/Linux
                                  gcc (GCC) 4.4.4 20100630 (Red Hat 4.4.4-10)
                                  GNU Fortran (GCC) 4.4.4 20100630 (Red Hat 4.4.4-10)

    Debian5.06 2.6.26-2-686 #1 SMP i686 GNU/Linux
                                  gcc (Debian 4.3.2-1.1) 4.3.2
                                  GNU Fortran (Debian 4.3.2-1.1) 4.3.2

    Debian5.06 2.6.26-2-amd64 #1 SMP x86_64 GNU/Linux
                                  gcc (Debian 4.3.2-1.1) 4.3.2
                                  GNU Fortran (Debian 4.3.2-1.1) 4.3.2

    Fedora14 2.6.35.6-48.fc14.i686.PAE #1 SMP i686 i686 i386 GNU/Linux
                                  gcc (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)
                                  GNU Fortran (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)

    Fedora14 2.6.35.6-48.fc14.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
                                  gcc (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)
                                  GNU Fortran (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)

    SUSE 11.3 2.6.34.7-0.7-desktop #1 SMP PREEMPT i686 i686 i386 GNU/Linux
                                  gcc (SUSE Linux) 4.5.0 20100604 [gcc-4_5-branch revision 160292]
                                  GNU Fortran (SUSE Linux) 4.5.0 20100604 [gcc-4_5-branch revision 160292]

    SUSE 11.3 2.6.34.7-0.7-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
                                  gcc (SUSE Linux) 4.5.0 20100604 [gcc-4_5-branch revision 160292]
                                  GNU Fortran (SUSE Linux) 4.5.0 20100604 [gcc-4_5-branch revision 160292]

    Ubuntu 10.10 2.6.35-25-generic #44-Ubuntu SMP i686 GNU/Linux
                                  gcc (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5
                                  GNU Fortran (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5

    Ubuntu 10.10 2.6.35-25-generic #44-Ubuntu SMP x86_64 GNU/Linux
                                  gcc (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5
                                  GNU Fortran (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5
    
    OpenVMS Alpha 8.3             HP C V7.3-009
                                  HP Fortran V8.2-104679-48H9K
                                  HP C++ V7.3-009

Tested Configuration Features Summary
========================================

    In the tables below
          y   = tested 
          n   = not tested in this release
          C   = Cluster
          W   = Workstation
          x   = not working in this release
          dna = does not apply
          ( ) = footnote appears below second table
          <blank> = testing incomplete on this feature or platform 

Platform                                 C        F90    F90      C++   zlib  SZIP
                                         parallel        parallel
Solaris2.10 32-bit                         n        y      n        y     y     y
Solaris2.10 64-bit                         n        y      n        y     y     y
Windows XP                                 n        y(4)   n(4)     y     y     y
Windows XP x64                             n        y(4)   n(4)     y     y     y
Windows Vista                              n        y(4)   n(4)     y     y     y
Windows Vista x64                          n        y(4)   n(4)     y     y     y
OpenVMS Alpha                              n        y      n        y     y     n
Mac OS X 10.6 Intel                        n        y      n        y     y     y
AIX 6.1 32- and 64-bit                     n        y      n        y     y     n
FreeBSD 6.3-STABLE 32&64 bit               n        y      n        y     y     y
CentOS 5.5 Linux 2.6.18-194 i686 GNU (1)W  y        y(2)   y        y     y     y
CentOS 5.5 Linux 2.6.18-194 i686 Intel  W  n        y      n        y     y     n
CentOS 5.5 Linux 2.6.18-194 i686 PGI    W  n        y      n        y     y     n
CentOS 5.5 Linux 2.6.16 x86_64 GNU (1)  W  y        y(3)   y        y     y     y
CentOS 5.5 Linux 2.6.16 x86_64 Intel    W  n        y      n        y     y     n
CentOS 5.5 Linux 2.6.16 x86_64 PGI      W  n        y      n        y     y     y
RedHat EL4 2.6.18 Xeon Lustre           C  y        y      y        y     y     n
Fedora 12 Linux 2.6.32.16-150.fc12.ppc64   n        y      n        y     y     y
SGI Linux 2.6.32.19                        y        y      y        y     y     y


Platform                                 Shared  Shared    Shared    Thread-  
                                         C libs  F90 libs  C++ libs  safe     
Solaris2.10 32-bit                         y       y         y         y        
Solaris2.10 64-bit                         y       y         y         y        
Windows XP                                 y       y(4)      y         n        
Windows XP x64                             y       y(4)      y         n        
Windows Vista                              y       y(4)      y         y
Windows Vista x64                          y       y(4)      y         y
OpenVMS Alpha                              n       n         n         n
Mac OS X 10.6                              y(5)    n         y         n        
AIX 6.1 32- and 64-bit                     n       n         n         n        
FreeBSD 6.3-STABLE 32&64 bit               y       n         y         y        
CentOS 5.5 Linux 2.6.18-128 i686 GNU (1)W  y       y(2)      y         y        
CentOS 5.5 Linux 2.6.18-128 i686 Intel  W  y       y         y         n        
CentOS 5.5 Linux 2.6.18-128 i686 PGI    W  y       y         y         n        
CentOS 5.5 Linux 2.6.16 x86_64 GNU (1)  W  y       y         y         y        
CentOS 5.5 Linux 2.6.16 x86_64 Intel    W  y       y         y         n        
CentOS 5.5 Linux 2.6.16 x86_64 PGI      W  y       y         y         n        
RedHat EL4 2.6.18 Xeon Lustre           C  y       y         y         n
Fedora 12 Linux 2.6.32.16-150.fc12.ppc64   y       y         y         y 
SGI Linux 2.6.32.19                        y       y         y         y 

           (1) Fortran compiled with gfortran.
           (2) With PGI and Absoft compilers.
           (3) With PGI compiler for Fortran.
           (4) Using Visual Studio 2008 w/ Intel Fortran 10.1 (Cygwin shared libraries are not supported)
           (5) C and C++ shared libraries will not be built when Fortran is enabled.
    Compiler versions for each platform are listed in the preceding
    "Platforms Tested" table.


Known Problems
==============
* Parallel test, t_shapesame in testpar, is rather unstable as it continues to
  have occasional errors in AIX and quite often in NCSA Abe. It is being built
  but it is not run automatically in the "make check" command. One would have to
  run it by hand to see if it works in a particular machine. AKC - 2011/01/28

* Although OpenVMS Alpha is supported, there are several problems with the C
  test suite - getname.c, lheap.c, lheap.c, mtime.c, and stab.c.  The test
  suite for h5diff also fails.  These failures are from the tests, not the
  library.  We have fixed these failures.  But it's too late to put the fixes
  into this release.  If you install the 1.8.6 library, it should still work
  despite of these test failures.  If you want the working copy without any
  test failure, you can request it from us.  SLU - 2011/01/26 
 
* If parallel gmake (e.g., gmake -j 4) is used, the "gmake clean" command
  sometimes fails in the perform directory due to the attempt to remove the
  executable of h5perf or h5perf_serial by two "parallel" commands. This error
  has no consequence on the functionality of the HDF5 library or install. It
  is fixed in the next release. AKC - 2011/01/25

* While working on the 1.8.6 release of HDF5, a bug was discovered that can
  occur when reading from a dataset in parallel shortly after it has been
  written to collectively. The issue was exposed by a new test in the parallel
  HDF5 test suite, but had existed before that. We believe the problem lies with
  certain MPI implementations and/or filesystems.

  We have provided a pure MPI test program, as well as a standalone HDF5
  program, that can be used to determine if this is an issue on your system.
  They should be run across multiple nodes with a varying number of processes.
  These programs can be found at:
  http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/

* The h5diff tool can display garbage values when variable-length strings in 
  a compound type dataset are compared. This also occurs with variable-length 
  string arrays in a compound type dataset. See bug #1989. This will be fixed 
  in the next release. JKM - 2010/11/05

* The AIX --enable-shared setting does not quite work. It can produce a shared 
  library, but there cannot be more than one shared library that is 
  interlinked. This means that the high level APIs will not work which is not 
  very useful. We hope to have a solution in the next release. 
  (AKC - 2010/10/15)
  
* H5Eset_auto can cause a seg fault for a library API call if the application
  compiles with -DH5_USE_16_API (see bug 1707).  It will be fixed in the 
  next release. SLU - 2010/10/5
  
* The library's test dt_arith.c showed a compiler's rounding problem on 
  Cygwin when converting an unsigned long long to a long double.  The 
  library's own conversion works fine.  We defined a macro for Cygwin to 
  skip this test until we can solve the problem.  Please see bug #1813. 
  SLU - 2010/5/5
  
* All the VFL drivers aren't backwardly compatible.  In H5FDpublic.h, the 
  structure H5FD_class_t changed in 1.8.  A new parameter was added to the 
  get_eoa and set_eoa callback functions, and a new callback function 
  get_type_map was added. The public function H5FDrealloc was taken out in 
  1.8.  The problem only happens when users define their own driver for 1.6 
  and try to plug in a 1.8 library. This will be fixed in 1.10. SLU - 2010/2/2

* MinGW has a missing libstdc++.dll.a library file and will not successfully link
  C++ applications/tests. Do not use the enable-cxx configure option. Read all of
  the INSTALL_MINGW.txt file for all restrictions. ADB - 2009/11/11
  
* The PathScale MPI implementation, accessing a Panasas file system, would 
  cause H5Fcreate() with H5F_ACC_EXCL to fail even when the file does not 
  exist. This is due to the MPI_File_open() call failing if the amode has 
  the MPI_MODE_EXCL bit set. (See bug 1468 for details.) AKC - 2009/8/11

* Parallel tests failed with 16 processes with data inconsistency at testphdf5
  / dataset_readAll. Parallel tests also failed with 32 and 64 processes with
  collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
  with MPI IO. CMC - 2009/04/28

* For gcc v4.3 and v4.4 with production mode, if -O3 is used, H5Tinit.c will 
  fail to compile. A corrupted H5Tinit.c is produced.  If -O (same as -O1) is 
  used, H5Tinit.c compiled okay but test/dt_arith would fail. When -O0 (no 
  optimization) is used, H5Tinit.c compiles okay and all tests passed. 
  Therefore, -O0 is imposed for v4.3 and v4.4 of gcc. AKC - 2009/04/20
  
* For Red Storm, a Cray XT3 system, the tools/h5ls/testh5ls.sh and 
  tools/h5copy/testh5copy.sh will fail some of their sub-tests. These 
  sub-tests are expected to fail and should exit with a non-zero code but 
  the yod command does not propagate the exit code of the executables. Yod 
  always returns 0 if it can launch the executable.  The test suite shell 
  expects a non-zero for this particular test. Therefore, it concludes the 
  test has failed when it receives 0 from yod.  To skip all the "failing" 
  tests for now, change them as shown below.
  
  ======== Original tools/h5ls/testh5ls.sh =========
  TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
  ======== Change to ===============================
  echo SKIP TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
  ==================================================

  ======== Original tools/h5copy/testh5copy.sh =========
  TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets  -d grp_rename
  TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets  -d /grp_rename/grp_dsets
  TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
  TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
  H5LSTEST $FILEOUT
  ======== Change to ===============================
  echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets  -d grp_rename
  echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets  -d /grp_rename/grp_dsets
  echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
  echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
  echo SKIP H5LSTEST $FILEOUT
  ==================================================
  AKC - 2008/11/10

* For Red Storm, a Cray XT3 system, the yod command sometimes gives the 
  message  "yod allocation delayed for node recovery."  This interferes 
  with test suites that do not expect to see this message.  See the "Red Storm" 
  section in file INSTALL_parallel for a way to deal with this problem. 
  AKC - 2008/05/28
  
* On an Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers, 
  use the -mp -O1 compilation flags to build the libraries. A higher level 
  of optimization causes failures in several HDF5 library tests.
  
* On mpich 1.2.5 and 1.2.6 on a system using four processors, if more than 
  two processes contribute no I/O and the application asks to do collective 
  I/O, we have found that a simple collective write will sometimes hang. This 
  can be verified with the t_mpi test under testpar.
  
* A dataset created or rewritten with a v1.6.3 or later library cannot be 
  read with the v1.6.2 or earlier library when the Fletcher32 EDC filter 
  is enabled. There was a bug in the calculation of the Fletcher32 checksum 
  in the library before v1.6.3; the checksum value was not consistent 
  between big-endian and little-endian systems.  This bug was fixed in 
  Release 1.6.3. However, after fixing the bug, the checksum value was no 
  longer the same as before on little-endian system.  Library releases after 
  1.6.4 can still read datasets created or rewritten with an HDF5 library of 
  v1.6.2 or earlier. SLU - 2005/6/30
  
* On IBM AIX systems, parallel HDF5 mode will fail some tests with error 
  messages like "INFO: 0031-XXX ...".  This is from the command `poe'. To 
  work around this, set the environment variable MP_INFOLEVEL to 0 to 
  minimize the messages and run the tests again. The tests may fail with 
  messages like "The socket name is already in use", but HDF5 does not use 
  sockets. This failure is due to problems with the poe command trying to 
  set up the debug socket.  To resolve this problem, check to see whether 
  there are any old /tmp/s.pedb.* files around. These are sockets used by 
  the poe command and left behind if the command failed at some point. To 
  resolve this, ask your system administrator to remove the 
  old/tmp/s.pedb.* files, and then ask IBM to provide a means to run poe 
  without the debug socket.

* The --enable-static-exec configure flag will only statically link 
  libraries if the static version of that library is present. If only the 
  shared version of a library exists (i.e., most system libraries on 
  Solaris, AIX, and Mac, for example, only have shared versions), the flag 
  should still result in a successful compilation, but note that the 
  installed executables will not be fully static. Thus, the only guarantee 
  on these systems is that the executable is statically linked with just 
  the HDF5 library.
  
* On an SGI Altix SMP ia64 system, the Intel compiler version 10.1 (which 
  is the default on that system) does not work properly and results in 
  failures during the make check (in a static build) and the make 
  installcheck (in a shared build). This appears to be a compiler 
  optimization problem. Reducing the optimization by setting CFLAGS to 
  -O1 or below resolves the issue. Using a newer version of the compiler 
  (11.0) avoids the issue. MAM - 2010/06/01
  
* On solaris systems, when running the examples with the scripts installed in
  .../share/hdf5_examples, two of the c tests, h5_extlink and h5_elink_unix2win 
  may fail or generate HDF5 errors because the script commands in c/run-c-ex.sh 
  fail to create test directories red, blue, and u2w.  Moving the '!' in lines 
  67, 70, 73 of run-c-ex.sh will fix the problem.  For example the script command 
  "if ! test -d red; then" will work on solaris if changed to 
  "if test ! -d red; then".