summaryrefslogtreecommitdiffstats
path: root/src/H5FPserver.c
diff options
context:
space:
mode:
authorBill Wendling <wendling@ncsa.uiuc.edu>2003-03-27 21:34:21 (GMT)
committerBill Wendling <wendling@ncsa.uiuc.edu>2003-03-27 21:34:21 (GMT)
commitfc295015d8500f495f5de9d6c9b007c45d21ca3e (patch)
treea083a96c2fbcfd2a3d26ff5cff69b829115c09fa /src/H5FPserver.c
parent5d51e5adebb7d20c132eab84ca5b3d16354d2acc (diff)
downloadhdf5-fc295015d8500f495f5de9d6c9b007c45d21ca3e.zip
hdf5-fc295015d8500f495f5de9d6c9b007c45d21ca3e.tar.gz
hdf5-fc295015d8500f495f5de9d6c9b007c45d21ca3e.tar.bz2
[svn-r6527] Purpose:
Bug Fix & Update Description: FPHDF5 was creating files which didn't have the EOA field in the superblock set correctly. It turns out that the SAP was keeping this information to itself instead of giving it to the client processes. Naughty SAP! Solution: Have the SAP send this information back to the clients so that they can update the superblock as necessary. This now creates a file (with just the root group) that looks correct! Only problem is that there's extra file space being allocated. Also, at program termination, there's an infinite loop... Platforms tested: H5committests (run by hand on burrwhite, arabica, and modi4) Misc. update:
Diffstat (limited to 'src/H5FPserver.c')
-rw-r--r--src/H5FPserver.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/H5FPserver.c b/src/H5FPserver.c
index dc85ad2..01848c7 100644
--- a/src/H5FPserver.c
+++ b/src/H5FPserver.c
@@ -1497,10 +1497,13 @@ H5FP_sap_handle_alloc_request(H5FP_request_t *req)
* Whatta pain.
*/
if ((sap_alloc.addr = H5FD_alloc((H5FD_t*)&info->file, req->mem_type, H5P_DEFAULT,
- req->meta_block_size)) == HADDR_UNDEF)
+ req->meta_block_size)) == HADDR_UNDEF)
HGOTO_ERROR(H5E_VFL, H5E_CANTINIT, FAIL,
"SAP unable to allocate file memory");
+ /* Get the EOA from the file. This call doesn't fail. */
+ sap_alloc.eoa = ((H5FD_t*)&info->file)->cls->get_eoa((H5FD_t*)&info->file);
+
if ((mrc = MPI_Send(&sap_alloc, 1, H5FP_alloc, (int)req->proc_rank,
H5FP_TAG_ALLOC, H5FP_SAP_COMM)) != MPI_SUCCESS)
HMPI_GOTO_ERROR(FAIL, "MPI_Send failed", mrc);