Hi, This seems to be new behaviour from somewhere after sugar-0.84. (probably after 0.88 as well)
If you take an entry from the datastore, examine its file path, adjust metadata and save, you lose your data. Simple test case: Take a datastore ID of any item in your journal that you don't mind losing. Open Terminal activity, run "python" to launch python shell In shell: >>> from sugar.datastore import datastore >>> import dbus >>> import os Now lookup the datastore item >>> obj = datastore.get("fc3e2c72-0ea3-4ddf-977f-cb5299e4d972") >>> obj <sugar.datastore.datastore.DSObject object at 0x948c52c> Retreive its file path, check its size: >>> path = obj.file_path >>> path dbus.String(u'/home/olpc/.sugar/default/data/fc3e2c72-0ea3-4ddf-977f-cb5299e4d972_B1OFZW.png') >>> os.path.getsize(path) 10474L Change the metadata: >>> obj.metadata['title'] = dbus.ByteArray("my new title") Now save: >>> datastore.write(obj) Now observe truncated file: >>> os.path.getsize(path) 0L bye bye data :( The net effect of this is that if you change the title of a photo in record, you lose your photo. Daniel _______________________________________________ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel