#1652 new defect

pyfilesystem tahoe-lafs mounted with fuse does not handles fs.errors.StorageSpaceError

Reported by: vrusinov Owned by: nobody
Priority: major Milestone: undecided
Component: code-frontend Version: n/a
Keywords: pyfilesystem fuse error Cc: zooko
Launchpad Bug:

Description (last modified by exarkun)

Linked issue: https://github.com/PyFilesystem/pyfilesystem/issues/101

Please, take a look to it. Pyfileystsem seems to be great way of using tahoe-lafs like regular filesystem, but currently there's no way to ensure that files you are writing to it are being saved.

What steps will reproduce the problem?

  1. Mount tahoe-lafs filesystem via fuse expose
  2. Copy lots of files, until there are not enough storage nodes accepting shares
  3. Next files are silently copied, producing 0-byte files on tahoe lafs instead of full ones. There is no indication of it on any tool.

Part of log file:

(Overwriting 59-byte djvu file with the new one):

(11174160) Opening file /documents/books/FL Studio 3rd Edition.djvu in mode r+
(11174160) Opening existing file /documents/books/FL Studio 3rd Edition.djvu for reading
(11174160) Opening file /documents/books/FL Studio 3rd Edition.djvu in mode w
(11174160) Reading meta for /documents/books/FL Studio 3rd Edition.djvu
(11174160) Creating empty file /documents/books/FL Studio 3rd Edition.djvu
(11174160) Uploading file /documents/books/FL Studio 3rd Edition.djvu
(11174160) Reading meta for /documents/books/FL Studio 3rd Edition.djvu
(11174160) Uploading file /documents/books/FL Studio 3rd Edition.djvu
(11174160) Reading meta for /documents/books/FL Studio 3rd Edition.djvu
(11174160) Listing directory (listdirinfo) /documents/books
(11174160) Path /documents/books/FL Studio 3rd Edition.djvu is directory: 0

Copy process finished with no errors. Directory listing shows full size. I've waited for some time and executed umount:

(11174160) Uploading file /documents/books/FL Studio 3rd Edition.djvu
Exception fs.errors.StorageSpaceError: StorageSpaceError() in <bound method _CacheInvalidatingFile.__del__ of <fs.remote._CacheInvalidatingFile object at 0xabd050>> ignored
(11174160) Uploading file /documents/books/FL Studio 3rd Edition.djvu

How can I ensure that all files are really written to tahoe before returning success to cp/mc/whatever?

Change History (4)

comment:1 Changed at 2012-01-19T21:19:57Z by zooko

  • Cc zooko added

comment:2 Changed at 2012-01-19T21:21:07Z by zooko

  • Keywords pyfilesystem fuse error added

comment:3 Changed at 2014-09-11T22:41:25Z by warner

  • Component changed from unknown to code-frontend
  • Description modified (diff)

comment:4 Changed at 2019-07-25T18:25:54Z by exarkun

  • Description modified (diff)
Note: See TracTickets for help on using tickets.