Hi Andrew,
This looks to me like the pickle for your objects has a null
terminated string. It's possible the newest h5py could fix this, or
that you could specify a string length when pickling to h5py, but the
easier solution might be to pickle the object to a file by itself:
import cPickle
cPIckle.dump(obj, open("my_file.cpkl", "wb"), protocol=-1)
Let us know if that works!
-Matt
On Sun, Jan 20, 2013 at 12:48 PM, Andrew Myers
Dear yt users,
I've generated some clumps, and would like to save them to look at later. When I try
pf.h.save_object(master_clump, 'Clumps')
I get the following error, which looks like it's coming fron hdf5. Has anybody seen this before?
Thanks, Andrew
--------------------------------------------------------------------------- ValueError Traceback (most recent call last) <ipython-input-13-0bda0f3d0b42> in <module>() ----> 1 pf.h.save_object(master_clump, 'Clumps')
/indirect/o/atmyers/yt-x86_64/src/yt-hg/yt/data_objects/hierarchy.pyc in save_object(self, obj, name) 299 """ 300 s = cPickle.dumps(obj, protocol=-1) --> 301 self.save_data(s, "/Objects", name, force = True) 302 303 def load_object(self, name):
/indirect/o/atmyers/yt-x86_64/src/yt-hg/yt/data_objects/hierarchy.pyc in _save_data(self, array, node, name, set_attr, force, passthrough) 274 for q in node.split('/'): 275 if q: myGroup = myGroup.require_group(q) --> 276 arr = myGroup.create_dataset(name,data=array) 277 if set_attr is not None: 278 for i, j in set_attr.items(): arr.attrs[i] = j
/o/atmyers/yt-x86_64/lib/python2.7/site-packages/h5py/_hl/group.pyc in create_dataset(self, name, shape, dtype, data, **kwds) 69 """ 70 ---> 71 dsid = dataset.make_new_dset(self, shape, dtype, data, **kwds) 72 dset = dataset.Dataset(dsid) 73 if name is not None:
/o/atmyers/yt-x86_64/lib/python2.7/site-packages/h5py/_hl/dataset.pyc in make_new_dset(parent, shape, dtype, data, chunks, compression, shuffle, fletcher32, maxshape, compression_opts, fillvalue) 92 93 if data is not None: ---> 94 dset_id.write(h5s.ALL, h5s.ALL, data) 95 96 return dset_id
/o/atmyers/yt-x86_64/lib/python2.7/site-packages/h5py/h5d.so in h5py.h5d.DatasetID.write (h5py/h5d.c:2866)()
/o/atmyers/yt-x86_64/lib/python2.7/site-packages/h5py/_proxy.so in h5py._proxy.dset_rw (h5py/_proxy.c:1766)()
/o/atmyers/yt-x86_64/lib/python2.7/site-packages/h5py/defs.so in h5py.defs.H5Tconvert (h5py/defs.c:18439)()
/o/atmyers/yt-x86_64/lib/python2.7/site-packages/h5py/_errors.so in h5py._errors.set_exception (h5py/_errors.c:711)()
/o/atmyers/yt-x86_64/lib/python2.7/site-packages/h5py/_conv.so in h5py._conv.str2vlen (h5py/_conv.c:3382)()
/o/atmyers/yt-x86_64/lib/python2.7/site-packages/h5py/_conv.so in h5py._conv.generic_converter (h5py/_conv.c:1302)()
/o/atmyers/yt-x86_64/lib/python2.7/site-packages/h5py/_conv.so in h5py._conv.conv_str2vlen (h5py/_conv.c:2158)()
ValueError: VLEN strings do not support embedded NULLs
_______________________________________________ yt-users mailing list yt-users@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org