On Wed, 3 Dec 2014, Nikolaus Rath wrote:
severity 771969 important thanksThanks for the report! I'll set the severity to important for now, because the package still works nicely for many other users. Not sure why it's making so much trouble for you..
Because computers hate me :-) I actually have yet another problem with an sshfs mounted s3ql file system but was trying to get the issues with my S3 mount resolved first.
but I notice that (like the last bug you found) this seems related to the handling of unreliable network connections. In this case there seems to be a temporary problem with your DNS server which S3QL has trouble coping with.
From a high level perspective, the connection (generally) is pretty
reliable, but I wouldn't notice momentary network issues.
The raw_streamXXX files are from the patch that you applied to the debug the previous issue. I'd recommend to purge and reinstall both the s3ql and python3-dugong packages to make sure that you're in vanilla state again.
I forgot about the dugong patch, so I reinstalled both packages, using the Debian-unstable version for s3ql
If the file system still hangs (or the next time it hangs), could you follow the instructions at https://bitbucket.org/nikratio/s3ql/wiki/Providing%20Debugging%20Info to obtain a Python stacktrace, and attach it to this issue?
This time the file system didn't hang until I attempted to unmount it. Attached are two log files with the mount and stack trace information.
Shannon C. Dealy | DeaTech Research Inc. de...@deatech.com | - Custom Software Development - USA Phone: +1 800-467-5820 | - Natural Building Instruction - numbers : +1 541-929-4089 | www.deatech.com
2014-12-04 07:28:56.413 31144:MainThread (name)s.excepthook: Mountpoint does not exist. 2014-12-04 07:39:43.743 609:MainThread (name)s.determine_threads: Using 8 upload threads. 2014-12-04 07:39:43.746 609:MainThread (name)s.main: Autodetected 4040 file descriptors available for cache entries 2014-12-04 07:39:56.730 609:MainThread (name)s.get_metadata: Using cached metadata. 2014-12-04 07:39:56.734 609:MainThread (name)s.main: Mounting filesystem... 2014-12-04 07:39:56.821 626:MainThread (name)s.detach_process_context: Daemonizing, new PID is 630 2014-12-04 07:42:45.765 630:MainThread (name)s.main: FUSE main loop terminated. 2014-12-04 07:42:45.786 630:MainThread (name)s.unmount: Unmounting file system... 2014-12-04 07:42:46.272 630:MainThread (name)s.main: File system unchanged, not uploading metadata. 2014-12-04 07:42:46.309 630:MainThread (name)s.main: Cleaning up local metadata... 2014-12-04 07:42:51.966 630:MainThread (name)s.main: All done. 2014-12-04 07:42:58.936 3663:MainThread (name)s.determine_threads: Using 8 upload threads. 2014-12-04 07:42:58.938 3663:MainThread (name)s.main: Autodetected 4040 file descriptors available for cache entries 2014-12-04 07:43:05.572 3663:MainThread (name)s.get_metadata: Using cached metadata. 2014-12-04 07:43:05.582 3663:MainThread (name)s.main: Mounting filesystem... 2014-12-04 07:43:05.602 3669:MainThread (name)s.detach_process_context: Daemonizing, new PID is 3671 2014-12-04 07:43:12.769 3671:Dummy-22 (name)s.stacktrace: # ThreadID: 140042022409984 pyapi.py:504, in stacktrace for filename, lineno, name, line in traceback.extract_stack(frame): # ThreadID: 140042039195392 threading.py:888, in _bootstrap self._bootstrap_inner() threading.py:920, in _bootstrap_inner self.run() mount.py:66, in run_with_except_hook run_old(*args, **kw) threading.py:868, in run self._target(*self._args, **self._kwargs) queue.py:167, in get self.not_empty.wait() threading.py:290, in wait waiter.acquire() # ThreadID: 140043138082560 threading.py:888, in _bootstrap self._bootstrap_inner() threading.py:920, in _bootstrap_inner self.run() mount.py:66, in run_with_except_hook run_old(*args, **kw) threading.py:868, in run self._target(*self._args, **self._kwargs) block_cache.py:677, in _removal_loop tmp = self.to_remove.get(block=len(ids)==0) queue.py:167, in get self.not_empty.wait() threading.py:290, in wait waiter.acquire() # ThreadID: 140042576066304 threading.py:888, in _bootstrap self._bootstrap_inner() threading.py:920, in _bootstrap_inner self.run() mount.py:66, in run_with_except_hook run_old(*args, **kw) threading.py:868, in run self._target(*self._args, **self._kwargs) block_cache.py:677, in _removal_loop tmp = self.to_remove.get(block=len(ids)==0) queue.py:167, in get self.not_empty.wait() threading.py:290, in wait waiter.acquire() # ThreadID: 140043154867968 threading.py:888, in _bootstrap self._bootstrap_inner() threading.py:920, in _bootstrap_inner self.run() mount.py:66, in run_with_except_hook run_old(*args, **kw) threading.py:868, in run self._target(*self._args, **self._kwargs) block_cache.py:677, in _removal_loop tmp = self.to_remove.get(block=len(ids)==0) queue.py:167, in get self.not_empty.wait() threading.py:290, in wait waiter.acquire() # ThreadID: 140042525710080 threading.py:888, in _bootstrap self._bootstrap_inner() threading.py:920, in _bootstrap_inner self.run() mount.py:66, in run_with_except_hook run_old(*args, **kw) mount.py:799, in run self.stop_event.wait(5) threading.py:553, in wait signaled = self._cond.wait(timeout) threading.py:294, in wait gotit = waiter.acquire(True, timeout) # ThreadID: 140043572397824 threading.py:888, in _bootstrap self._bootstrap_inner() threading.py:920, in _bootstrap_inner self.run() mount.py:66, in run_with_except_hook run_old(*args, **kw) threading.py:868, in run self._target(*self._args, **self._kwargs) block_cache.py:399, in _upload_loop tmp = self.to_upload.get() block_cache.py:97, in get self.cv.wait() threading.py:290, in wait waiter.acquire() # ThreadID: 140043530172160 threading.py:888, in _bootstrap self._bootstrap_inner() threading.py:920, in _bootstrap_inner self.run() mount.py:66, in run_with_except_hook run_old(*args, **kw) threading.py:868, in run self._target(*self._args, **self._kwargs) block_cache.py:399, in _upload_loop tmp = self.to_upload.get() block_cache.py:97, in get self.cv.wait() threading.py:290, in wait waiter.acquire() # ThreadID: 140043538564864 threading.py:888, in _bootstrap self._bootstrap_inner() threading.py:920, in _bootstrap_inner self.run() mount.py:66, in run_with_except_hook run_old(*args, **kw) threading.py:868, in run self._target(*self._args, **self._kwargs) block_cache.py:399, in _upload_loop tmp = self.to_upload.get() block_cache.py:97, in get self.cv.wait() threading.py:290, in wait waiter.acquire() # ThreadID: 140043546957568 threading.py:888, in _bootstrap self._bootstrap_inner() threading.py:920, in _bootstrap_inner self.run() mount.py:66, in run_with_except_hook run_old(*args, **kw) threading.py:868, in run self._target(*self._args, **self._kwargs) block_cache.py:399, in _upload_loop tmp = self.to_upload.get() block_cache.py:97, in get self.cv.wait() threading.py:290, in wait waiter.acquire() # ThreadID: 140043146475264 threading.py:888, in _bootstrap self._bootstrap_inner() threading.py:920, in _bootstrap_inner self.run() mount.py:66, in run_with_except_hook run_old(*args, **kw) threading.py:868, in run self._target(*self._args, **self._kwargs) block_cache.py:677, in _removal_loop tmp = self.to_remove.get(block=len(ids)==0) queue.py:167, in get self.not_empty.wait() threading.py:290, in wait waiter.acquire() # ThreadID: 140043555612416 threading.py:888, in _bootstrap self._bootstrap_inner() threading.py:920, in _bootstrap_inner self.run() mount.py:66, in run_with_except_hook run_old(*args, **kw) threading.py:868, in run self._target(*self._args, **self._kwargs) block_cache.py:399, in _upload_loop tmp = self.to_upload.get() block_cache.py:97, in get self.cv.wait() threading.py:290, in wait waiter.acquire() # ThreadID: 140043673143040 mount.s3ql:9, in <module> load_entry_point('s3ql==2.11.1', 'console_scripts', 'mount.s3ql')() mount.py:215, in main llfuse.main(options.single) # ThreadID: 140042542495488 threading.py:888, in _bootstrap self._bootstrap_inner() threading.py:920, in _bootstrap_inner self.run() mount.py:66, in run_with_except_hook run_old(*args, **kw) threading.py:868, in run self._target(*self._args, **self._kwargs) block_cache.py:677, in _removal_loop tmp = self.to_remove.get(block=len(ids)==0) queue.py:167, in get self.not_empty.wait() threading.py:290, in wait waiter.acquire() # ThreadID: 140043129689856 threading.py:888, in _bootstrap self._bootstrap_inner() threading.py:920, in _bootstrap_inner self.run() mount.py:66, in run_with_except_hook run_old(*args, **kw) threading.py:868, in run self._target(*self._args, **self._kwargs) block_cache.py:677, in _removal_loop tmp = self.to_remove.get(block=len(ids)==0) queue.py:167, in get self.not_empty.wait() threading.py:290, in wait waiter.acquire() # ThreadID: 140042550888192 threading.py:888, in _bootstrap self._bootstrap_inner() threading.py:920, in _bootstrap_inner self.run() mount.py:66, in run_with_except_hook run_old(*args, **kw) threading.py:868, in run self._target(*self._args, **self._kwargs) block_cache.py:677, in _removal_loop tmp = self.to_remove.get(block=len(ids)==0) queue.py:167, in get self.not_empty.wait() threading.py:290, in wait waiter.acquire() # ThreadID: 140042559280896 threading.py:888, in _bootstrap self._bootstrap_inner() threading.py:920, in _bootstrap_inner self.run() mount.py:66, in run_with_except_hook run_old(*args, **kw) threading.py:868, in run self._target(*self._args, **self._kwargs) block_cache.py:677, in _removal_loop tmp = self.to_remove.get(block=len(ids)==0) queue.py:167, in get self.not_empty.wait() threading.py:290, in wait waiter.acquire() # ThreadID: 140042567673600 threading.py:888, in _bootstrap self._bootstrap_inner() threading.py:920, in _bootstrap_inner self.run() mount.py:66, in run_with_except_hook run_old(*args, **kw) threading.py:868, in run self._target(*self._args, **self._kwargs) block_cache.py:677, in _removal_loop tmp = self.to_remove.get(block=len(ids)==0) queue.py:167, in get self.not_empty.wait() threading.py:290, in wait waiter.acquire() # ThreadID: 140043180046080 threading.py:888, in _bootstrap self._bootstrap_inner() threading.py:920, in _bootstrap_inner self.run() mount.py:66, in run_with_except_hook run_old(*args, **kw) threading.py:868, in run self._target(*self._args, **self._kwargs) block_cache.py:399, in _upload_loop tmp = self.to_upload.get() block_cache.py:97, in get self.cv.wait() threading.py:290, in wait waiter.acquire() # ThreadID: 140042534102784 threading.py:888, in _bootstrap self._bootstrap_inner() threading.py:920, in _bootstrap_inner self.run() mount.py:66, in run_with_except_hook run_old(*args, **kw) mount.py:655, in run self.event.wait(self.interval) threading.py:553, in wait signaled = self._cond.wait(timeout) threading.py:294, in wait gotit = waiter.acquire(True, timeout) # ThreadID: 140043564005120 threading.py:888, in _bootstrap self._bootstrap_inner() threading.py:920, in _bootstrap_inner self.run() mount.py:66, in run_with_except_hook run_old(*args, **kw) threading.py:868, in run self._target(*self._args, **self._kwargs) block_cache.py:399, in _upload_loop tmp = self.to_upload.get() block_cache.py:97, in get self.cv.wait() threading.py:290, in wait waiter.acquire() # ThreadID: 140043163260672 threading.py:888, in _bootstrap self._bootstrap_inner() threading.py:920, in _bootstrap_inner self.run() mount.py:66, in run_with_except_hook run_old(*args, **kw) threading.py:868, in run self._target(*self._args, **self._kwargs) block_cache.py:677, in _removal_loop tmp = self.to_remove.get(block=len(ids)==0) queue.py:167, in get self.not_empty.wait() threading.py:290, in wait waiter.acquire() # ThreadID: 140043171653376 threading.py:888, in _bootstrap self._bootstrap_inner() threading.py:920, in _bootstrap_inner self.run() mount.py:66, in run_with_except_hook run_old(*args, **kw) threading.py:868, in run self._target(*self._args, **self._kwargs) block_cache.py:399, in _upload_loop tmp = self.to_upload.get() block_cache.py:97, in get self.cv.wait() threading.py:290, in wait waiter.acquire() 2014-12-04 07:46:48.332 3671:Thread-14 (name)s._parse_xml_response: Server did not provide Content-Type, assuming XML 2014-12-04 08:06:47.814 3671:Metadata-Upload-Thread (name)s.run: Dumping metadata... 2014-12-04 08:06:47.821 3671:Metadata-Upload-Thread (name)s.dump_metadata: ..objects.. 2014-12-04 08:06:48.482 3671:Metadata-Upload-Thread (name)s.dump_metadata: ..blocks.. 2014-12-04 08:06:49.704 3671:Metadata-Upload-Thread (name)s.dump_metadata: ..inodes.. 2014-12-04 08:06:52.859 3671:Metadata-Upload-Thread (name)s.dump_metadata: ..inode_blocks.. 2014-12-04 08:06:54.794 3671:Metadata-Upload-Thread (name)s.dump_metadata: ..symlink_targets.. 2014-12-04 08:06:54.840 3671:Metadata-Upload-Thread (name)s.dump_metadata: ..names.. 2014-12-04 08:06:55.483 3671:Metadata-Upload-Thread (name)s.dump_metadata: ..contents.. 2014-12-04 08:06:57.359 3671:Metadata-Upload-Thread (name)s.dump_metadata: ..ext_attributes.. 2014-12-04 08:06:57.832 3671:Metadata-Upload-Thread (name)s.run: Compressing and uploading metadata... 2014-12-04 08:07:31.003 3671:Metadata-Upload-Thread (name)s.run: Wrote 15 MiB of compressed metadata. 2014-12-04 08:07:31.004 3671:Metadata-Upload-Thread (name)s.run: Cycling metadata backups... 2014-12-04 08:07:31.004 3671:Metadata-Upload-Thread (name)s.cycle_metadata: Backing up old metadata... 2014-12-04 08:13:15.192 3671:MainThread (name)s.main: FUSE main loop terminated.
Thread 0x00007f5e33fff700 (most recent call first): File "/usr/lib/python3.4/ssl.py", line 804 in do_handshake File "/usr/lib/python3.4/ssl.py", line 577 in __init__ File "/usr/lib/python3.4/ssl.py", line 364 in wrap_socket File "/usr/lib/python3/dist-packages/dugong/__init__.py", line 413 in connect File "/usr/lib/python3/dist-packages/dugong/__init__.py", line 504 in co_send_request File "/usr/lib/python3/dist-packages/dugong/__init__.py", line 1361 in eval_coroutine File "/usr/lib/python3/dist-packages/dugong/__init__.py", line 477 in send_request File "/usr/lib/s3ql/s3ql/backends/s3c.py", line 638 in _send_request File "/usr/lib/s3ql/s3ql/backends/s3c.py", line 409 in _do_request File "/usr/lib/s3ql/s3ql/backends/s3.py", line 116 in _delete_multi File "/usr/lib/s3ql/s3ql/backends/common.py", line 46 in wrapped File "/usr/lib/s3ql/s3ql/backends/s3.py", line 81 in delete_multi File "/usr/lib/s3ql/s3ql/backends/comprenc.py", line 273 in delete_multi File "/usr/lib/s3ql/s3ql/block_cache.py", line 684 in _removal_loop File "/usr/lib/python3.4/threading.py", line 868 in run File "/usr/lib/s3ql/s3ql/mount.py", line 66 in run_with_except_hook File "/usr/lib/python3.4/threading.py", line 920 in _bootstrap_inner File "/usr/lib/python3.4/threading.py", line 888 in _bootstrap Current thread 0x00007f5e75640700 (most recent call first): File "/usr/lib/python3.4/threading.py", line 1076 in _wait_for_tstate_lock File "/usr/lib/python3.4/threading.py", line 1060 in join File "/usr/lib/s3ql/s3ql/block_cache.py", line 373 in destroy File "/usr/lib/python3.4/contextlib.py", line 267 in _exit_wrapper File "/usr/lib/python3.4/contextlib.py", line 321 in __exit__ File "/usr/lib/s3ql/s3ql/mount.py", line 230 in main File "/usr/bin/mount.s3ql", line 9 in <module> Fatal Python error: Aborted Thread 0x00007f5e33fff700 (most recent call first): File "/usr/lib/python3.4/ssl.py", line 804 in do_handshake File "/usr/lib/python3.4/ssl.py", line 577 in __init__ File "/usr/lib/python3.4/ssl.py", line 364 in wrap_socket File "/usr/lib/python3/dist-packages/dugong/__init__.py", line 413 in connect File "/usr/lib/python3/dist-packages/dugong/__init__.py", line 504 in co_send_request File "/usr/lib/python3/dist-packages/dugong/__init__.py", line 1361 in eval_coroutine File "/usr/lib/python3/dist-packages/dugong/__init__.py", line 477 in send_request File "/usr/lib/s3ql/s3ql/backends/s3c.py", line 638 in _send_request File "/usr/lib/s3ql/s3ql/backends/s3c.py", line 409 in _do_request File "/usr/lib/s3ql/s3ql/backends/s3.py", line 116 in _delete_multi File "/usr/lib/s3ql/s3ql/backends/common.py", line 46 in wrapped File "/usr/lib/s3ql/s3ql/backends/s3.py", line 81 in delete_multi File "/usr/lib/s3ql/s3ql/backends/comprenc.py", line 273 in delete_multi File "/usr/lib/s3ql/s3ql/block_cache.py", line 684 in _removal_loop File "/usr/lib/python3.4/threading.py", line 868 in run File "/usr/lib/s3ql/s3ql/mount.py", line 66 in run_with_except_hook File "/usr/lib/python3.4/threading.py", line 920 in _bootstrap_inner File "/usr/lib/python3.4/threading.py", line 888 in _bootstrap Current thread 0x00007f5e75640700 (most recent call first): File "/usr/lib/python3.4/threading.py", line 1076 in _wait_for_tstate_lock File "/usr/lib/python3.4/threading.py", line 1060 in join File "/usr/lib/s3ql/s3ql/block_cache.py", line 373 in destroy File "/usr/lib/python3.4/contextlib.py", line 267 in _exit_wrapper File "/usr/lib/python3.4/contextlib.py", line 321 in __exit__ File "/usr/lib/s3ql/s3ql/mount.py", line 230 in main File "/usr/bin/mount.s3ql", line 9 in <module>