diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2003-10-28 14:40:09 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2003-10-28 14:40:09 (GMT) |
commit | 47c3791addd6d6ca4fdc39cbb7555d867f4093a0 (patch) | |
tree | 20170f91da59faec785f974ecebea42a9d7c7604 /src | |
parent | a8c372a6f195aa2fcb33c6e9e861ae8eea0a0a0c (diff) | |
download | hdf5-47c3791addd6d6ca4fdc39cbb7555d867f4093a0.zip hdf5-47c3791addd6d6ca4fdc39cbb7555d867f4093a0.tar.gz hdf5-47c3791addd6d6ca4fdc39cbb7555d867f4093a0.tar.bz2 |
[svn-r7763] Purpose:
Bug fix
Description:
Code was using an internal DXPL with collective I/O turned on during
independent I/O operations to fill dataset on disk.
Solution:
Switched to internal DXPL with independent I/O
Platforms tested:
FreeBSD 4.9 (sleipnir)
FreeBSD 4.9 (sleipnir) w/parallel
Linux 2.4 (verbena) w/fortran & C++
Solaris 2.7 (arabica) w/64-bit extensions enabled
Diffstat (limited to 'src')
-rw-r--r-- | src/H5Dcontig.c | 3 | ||||
-rw-r--r-- | src/H5Distore.c | 3 | ||||
-rw-r--r-- | src/H5Fcontig.c | 3 | ||||
-rw-r--r-- | src/H5Fistore.c | 3 |
4 files changed, 8 insertions, 4 deletions
diff --git a/src/H5Dcontig.c b/src/H5Dcontig.c index 5f0c72d..777e7c6 100644 --- a/src/H5Dcontig.c +++ b/src/H5Dcontig.c @@ -251,8 +251,9 @@ H5F_contig_fill(H5F_t *f, hid_t dxpl_id, struct H5O_layout_t *layout, /* Check if this file is accessed with an MPI-capable file driver */ if(using_mpi) { /* Write the chunks out from only one process */ + /* !! Use the internal "independent" DXPL!! -QAK */ if(H5_PAR_META_WRITE==mpi_rank) { - if (H5F_contig_write(f, (hsize_t)size, addr, size, dxpl_id, buf)<0) + if (H5F_contig_write(f, (hsize_t)size, addr, size, H5AC_ind_dxpl_id, buf)<0) HGOTO_ERROR(H5E_DATASET, H5E_CANTINIT, FAIL, "unable to write fill value to dataset"); } /* end if */ diff --git a/src/H5Distore.c b/src/H5Distore.c index 909007a..90b9168 100644 --- a/src/H5Distore.c +++ b/src/H5Distore.c @@ -2341,8 +2341,9 @@ H5F_istore_allocate(H5F_t *f, hid_t dxpl_id, const H5O_layout_t *layout, /* Check if this file is accessed with an MPI-capable file driver */ if(using_mpi) { /* Write the chunks out from only one process */ + /* !! Use the internal "independent" DXPL!! -QAK */ if(H5_PAR_META_WRITE==mpi_rank) { - if (H5F_block_write(f, H5FD_MEM_DRAW, udata.addr, udata.key.nbytes, dxpl_id, chunk)<0) + if (H5F_block_write(f, H5FD_MEM_DRAW, udata.addr, udata.key.nbytes, H5AC_ind_dxpl_id, chunk)<0) HGOTO_ERROR(H5E_IO, H5E_WRITEERROR, FAIL, "unable to write raw data to file"); } /* end if */ diff --git a/src/H5Fcontig.c b/src/H5Fcontig.c index 5f0c72d..777e7c6 100644 --- a/src/H5Fcontig.c +++ b/src/H5Fcontig.c @@ -251,8 +251,9 @@ H5F_contig_fill(H5F_t *f, hid_t dxpl_id, struct H5O_layout_t *layout, /* Check if this file is accessed with an MPI-capable file driver */ if(using_mpi) { /* Write the chunks out from only one process */ + /* !! Use the internal "independent" DXPL!! -QAK */ if(H5_PAR_META_WRITE==mpi_rank) { - if (H5F_contig_write(f, (hsize_t)size, addr, size, dxpl_id, buf)<0) + if (H5F_contig_write(f, (hsize_t)size, addr, size, H5AC_ind_dxpl_id, buf)<0) HGOTO_ERROR(H5E_DATASET, H5E_CANTINIT, FAIL, "unable to write fill value to dataset"); } /* end if */ diff --git a/src/H5Fistore.c b/src/H5Fistore.c index 909007a..90b9168 100644 --- a/src/H5Fistore.c +++ b/src/H5Fistore.c @@ -2341,8 +2341,9 @@ H5F_istore_allocate(H5F_t *f, hid_t dxpl_id, const H5O_layout_t *layout, /* Check if this file is accessed with an MPI-capable file driver */ if(using_mpi) { /* Write the chunks out from only one process */ + /* !! Use the internal "independent" DXPL!! -QAK */ if(H5_PAR_META_WRITE==mpi_rank) { - if (H5F_block_write(f, H5FD_MEM_DRAW, udata.addr, udata.key.nbytes, dxpl_id, chunk)<0) + if (H5F_block_write(f, H5FD_MEM_DRAW, udata.addr, udata.key.nbytes, H5AC_ind_dxpl_id, chunk)<0) HGOTO_ERROR(H5E_IO, H5E_WRITEERROR, FAIL, "unable to write raw data to file"); } /* end if */ |