summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorElena Pourmal <epourmal@hdfgroup.org>2003-04-08 23:16:40 (GMT)
committerElena Pourmal <epourmal@hdfgroup.org>2003-04-08 23:16:40 (GMT)
commitc319d5813a372e92ccfb3029878013d8b5cbb4ec (patch)
tree297d896dd374adf9583395c7bbecb049f41e399a
parent4c6122a53c39e953518ac663ea7eb6216034d437 (diff)
downloadhdf5-c319d5813a372e92ccfb3029878013d8b5cbb4ec.zip
hdf5-c319d5813a372e92ccfb3029878013d8b5cbb4ec.tar.gz
hdf5-c319d5813a372e92ccfb3029878013d8b5cbb4ec.tar.bz2
[svn-r6601]
Purpose: This a fix for bug #921 Description: On platforms where big test runs, it creates a set of "solid" 1GB files. Test will take forever (modi4) or will fail if quotas are exceeded. Solution: Default library behavior is to allocate dataset space earlier and to write fill values. I changed the test to use late space allocation and never write fill values. Platforms tested: True64 (PSC), modi4 (sequential and parallel), arabica with 64-bit option(test was skipped there). I also enabled szip and it passed :-) Misc. update:
-rw-r--r--test/big.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/test/big.c b/test/big.c
index 6821837..4765e8a 100644
--- a/test/big.c
+++ b/test/big.c
@@ -194,6 +194,7 @@ writer (hid_t fapl, int wrt_n)
int i, j;
FILE *out = fopen(DNAME, "w");
char filename[1024];
+ hid_t dcpl;
TESTING("large dataset write");
@@ -213,10 +214,26 @@ writer (hid_t fapl, int wrt_n)
}
/* Create the datasets */
+/*
+ * The fix below is provided for bug#921
+ * H5Dcreate with H5P_DEFAULT creation properties
+ * will create a set of solid 1GB files; test will crash if quotas are enforced
+ * or it will take some time to write a file.
+ * We should create a dataset allocating space late and never writing fill values.
+ * EIP 4/8/03
+
if ((d1=H5Dcreate (file, "d1", H5T_NATIVE_INT, space1, H5P_DEFAULT))<0 ||
(d2=H5Dcreate (file, "d2", H5T_NATIVE_INT, space2, H5P_DEFAULT))<0) {
goto error;
}
+*/
+ dcpl = H5Pcreate(H5P_DATASET_CREATE);
+ H5Pset_alloc_time(dcpl, H5D_ALLOC_TIME_LATE);
+ H5Pset_fill_time(dcpl, H5D_FILL_TIME_NEVER);
+ if ((d1=H5Dcreate (file, "d1", H5T_NATIVE_INT, space1, dcpl))<0 ||
+ (d2=H5Dcreate (file, "d2", H5T_NATIVE_INT, space2, dcpl))<0) {
+ goto error;
+ }
/* Write some things to them randomly */