GithubHelp home page GithubHelp logo

Comments (6)

falense avatar falense commented on August 17, 2024

I know what this is. Somehow you or one of your applications have managed to try to access a file without first opening it and acquiring a file handle. This results in the error as you see here because it is attempting to read from a file that does not exist in B2Fuse's internal listing. The result is that the structure that B2Fuse uses internally to handle open files is trying to generate a "default" B2File. This will not work as the B2File constructor is not supplied with the proper arguments. It would be possible to handle this error in a more user friendly way but this should never happen in normal use.

from b2_fuse.

falense avatar falense commented on August 17, 2024

If I were you I would start looking at what programs and files you were using at that time. You should include anything that run in the background as a suspect as these may "walk" the B2Fuse mount without your knowledge. This is a not a major issue as it should not occur through normal use, but a better way of handling this error would be to refuse to do anything and return an access denied or similar to the application in question.

from b2_fuse.

Fibroblasto avatar Fibroblasto commented on August 17, 2024

I have found the way to reproduce the errors. It happens when I compress a file inside the bucket. For example:

/mnt/mnt$ zip compressed-file.zip somefile
adding: somefile
zip I/O error: Bad address
zip error: Input file read failure (was zipping somefile)

While in the console I had started b2fuse.py I got:

Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/fuse.py", line 495, in _wrapper
return func(*args, **kwargs) or 0
File "/usr/local/lib/python2.7/dist-packages/fuse.py", line 604, in write
offset, fh)
File "/usr/local/lib/python2.7/dist-packages/fuse.py", line 800, in call
return getattr(self, op)(*args)
File "/home/durr/b2/b2_fuse/b2fuse_main.py", line 431, in write
self.open_files[path].write(offset, data)
File "/home/durr/b2/b2_fuse/filetypes/B2SequentialFileMemory.py", line 72, in write
raise NotImplemented()
TypeError: 'NotImplementedType' object is not callable

When I compressed the file from Dolphin file manager the erros message was this:

Traceback
(most recent call last):
File "/usr/local/lib/python2.7/dist-packages/fuse.py", line 495, in _wrapper
return func(*args, **kwargs) or 0
File "/usr/local/lib/python2.7/dist-packages/fuse.py", line 604, in write
offset, fh)
File "/usr/local/lib/python2.7/dist-packages/fuse.py", line 800, in call
return getattr(self, op)(*args)
File "/home/durr/b2/b2_fuse/b2fuse_main.py", line 430, in write
self.open_files[path].set_dirty(True)
TypeError: init() takes at least 3 arguments (1 given)
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/fuse.py", line 495, in _wrapper
return func(*args, **kwargs) or 0
File "/usr/local/lib/python2.7/dist-packages/fuse.py", line 621, in flush
return self.operations('flush', self._decode_optional_path(path), fh)
File "/usr/local/lib/python2.7/dist-packages/fuse.py", line 800, in call
return getattr(self, op)(*args)
File "/home/durr/b2/b2_fuse/b2fuse_main.py", line 445, in flush
self.open_files[self._remove_start_slash(path)].upload()
TypeError: init() takes at least 3 arguments (1 given)
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/fuse.py", line 495, in _wrapper
return func(*args, **kwargs) or 0
File "/usr/local/lib/python2.7/dist-packages/fuse.py", line 629, in release
return self.operations('release', self._decode_optional_path(path), fh)
File "/usr/local/lib/python2.7/dist-packages/fuse.py", line 800, in call
return getattr(self, op)(*args)
File "/home/durr/b2/b2_fuse/b2fuse_main.py", line 451, in release
self.flush(self._remove_start_slash(path), fh)
File "/home/durr/b2/b2_fuse/b2fuse_main.py", line 445, in flush
self.open_files[self._remove_start_slash(path)].upload()
TypeError: init() takes at least 3 arguments (1 given)

from b2_fuse.

falense avatar falense commented on August 17, 2024

As in the other issue, this error is caused by using disk backed storage. Disk backed storage does not support random write, which apparently this application uses.

from b2_fuse.

Fibroblasto avatar Fibroblasto commented on August 17, 2024

Not sure if this is the right place or anothe issue should be opened, but the errors look to me quite similar to the former ones.

I've got this error deletting a folder from the command line with “rm -r”:

Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/fuse.py", line 495, in _wrapper
return func(*args, **kwargs) or 0
File "/usr/local/lib/python2.7/dist-packages/fuse.py", line 693, in readdir
fip.contents.fh):
File "/usr/local/lib/python2.7/dist-packages/fuse.py", line 800, in call
return getattr(self, op)(*args)
File "/home/durr/b2/b2_fuse/b2fuse_main.py", line 251, in readdir
online_files = map(lambda file_info: file_info['fileName'], directory.get_file_infos())
AttributeError: 'NoneType' object has no attribute 'get_file_infos'
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/fuse.py", line 495, in _wrapper
return func(*args, **kwargs) or 0
File "/usr/local/lib/python2.7/dist-packages/fuse.py", line 693, in readdir
fip.contents.fh):
File "/usr/local/lib/python2.7/dist-packages/fuse.py", line 800, in call
return getattr(self, op)(*args)
File "/home/durr/b2/b2_fuse/b2fuse_main.py", line 251, in readdir
online_files = map(lambda file_info: file_info['fileName'], directory.get_file_infos())
AttributeError: 'NoneType' object has no attribute 'get_file_infos'
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/fuse.py", line 495, in _wrapper
return func(*args, **kwargs) or 0
File "/usr/local/lib/python2.7/dist-packages/fuse.py", line 693, in readdir
fip.contents.fh):
File "/usr/local/lib/python2.7/dist-packages/fuse.py", line 800, in call
return getattr(self, op)(*args)
File "/home/durr/b2/b2_fuse/b2fuse_main.py", line 251, in readdir
online_files = map(lambda file_info: file_info['fileName'], directory.get_file_infos())
AttributeError: 'NoneType' object has no attribute 'get_file_infos'

The folder that was being deleted was 4.7 MB big with 6 subfolders and 94 files (many small files).

from b2_fuse.

falense avatar falense commented on August 17, 2024

This issue needs to be broken down, too many (unrelated) errors in one issue. Can we start with the rm bug first? Please open a new issue if you are able to reproduce it and report you config parameters (- application key) and preferably a list of filenames in the folder as given by the command line utility tree

from b2_fuse.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.