[tahoe-lafs-trac-stream] [Tahoe-LAFS] #1652: pyfilesystem tahoe-lafs mounted with fuse does not handles fs.errors.StorageSpaceError

Tahoe-LAFS trac at tahoe-lafs.org
Thu Sep 11 22:41:25 UTC 2014


#1652: pyfilesystem tahoe-lafs mounted with fuse does not handles
fs.errors.StorageSpaceError
-------------------------------+-------------------------------------
     Reporter:  vrusinov       |      Owner:  nobody
         Type:  defect         |     Status:  new
     Priority:  major          |  Milestone:  undecided
    Component:  code-frontend  |    Version:  n/a
   Resolution:                 |   Keywords:  pyfilesystem fuse error
Launchpad Bug:                 |
-------------------------------+-------------------------------------
Changes (by warner):

 * component:  unknown => code-frontend


Old description:

> Linked issue: http://code.google.com/p/pyfilesystem/issues/detail?id=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?

New description:

 Linked issue: http://code.google.com/p/pyfilesystem/issues/detail?id=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?

--

--
Ticket URL: <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1652#comment:3>
Tahoe-LAFS <https://Tahoe-LAFS.org>
secure decentralized storage


More information about the tahoe-lafs-trac-stream mailing list