Another test run later...
What I did:
1. # rm ~/.s3ql/local:=2F=2F=2Fhome=2Froot=2Fs3ql=2Fs3qlbucket_via_sshfs*
2. # fsck.s3ql local:///home/root/s3ql/s3qlbucket_via_sshfs
3. mount local:///home/root/s3ql/s3qlbucket_via_sshfs ...
4. rsync --checksum --dry-run ...
Remember: /home/root/s3ql/s3qlbucket_via_sshfs is a locally mounted filesystem without any network layer involved. The path /home/root/s3ql/s3qlbucket_via_sshfs might give a wrong impression, as the system is intended to run via sshfs.
So, here's the error log:
2012-12-12 21:59:08.082 [12384] Dummy-22: [fs] Backend returned malformed data for block 51 of inode 29258561 (HMAC mismatch)
2012-12-12 21:59:08.744 [12384] Dummy-23: [fs] Backend returned malformed data for block 51 of inode 29258561 (HMAC mismatch)
2012-12-12 21:59:08.745 [12384] Dummy-23: [fuse] Exception after kill:
Traceback (most recent call last):
File "handlers.pxi", line 296, in llfuse.fuse_read (src/llfuse.c:6832)
File "handlers.pxi", line 297, in llfuse.fuse_read (src/llfuse.c:6776)
File "/usr/lib64/python2.7/site-packages/s3ql/fs.py", line 932, in read
tmp = self._read(fh, offset, length)
File "/usr/lib64/python2.7/site-packages/s3ql/fs.py", line 964, in _read
with self.cache.get(id_, blockno) as fh:
File "/usr/lib64/python2.7/contextlib.py", line 17, in __enter__
return self.gen.next()
File "/usr/lib64/python2.7/site-packages/s3ql/block_cache.py", line 538, in get
el = backend.perform_read(do_read, 's3ql_data_%d' % obj_id)
File "/usr/lib64/python2.7/site-packages/s3ql/backends/common.py", line 61, in wrapped
return fn(self, *a, **kw)
File "/usr/lib64/python2.7/site-packages/s3ql/backends/common.py", line 224, in perform_read
return fn(fh)
File "/usr/lib64/python2.7/site-packages/s3ql/block_cache.py", line 533, in do_read
shutil.copyfileobj(fh, el, BUFSIZE)
File "/usr/lib64/python2.7/shutil.py", line 49, in copyfileobj
buf = fsrc.read(length)
File "/usr/lib64/python2.7/site-packages/s3ql/backends/common.py", line 619, in read
buf = self._read(BUFSIZE)
File "/usr/lib64/python2.7/site-packages/s3ql/backends/common.py", line 703, in _read
buf = self.fh.read(size)
File "/usr/lib64/python2.7/site-packages/s3ql/backends/common.py", line 619, in read
buf = self._read(BUFSIZE)
File "/usr/lib64/python2.7/site-packages/s3ql/backends/common.py", line 870, in _read
raise ChecksumError('HMAC mismatch')
ChecksumError: HMAC mismatch
2012-12-12 21:59:09.267 [12384] MainThread: [mount] Encountered exception, trying to clean up...
2012-12-12 21:59:09.269 [12384] MainThread: [mount] Unmounting file system...
2012-12-12 22:00:50.243 [12384] MainThread: [mount] Exception during cleanup:
Traceback (most recent call last):
File "/usr/lib64/python2.7/site-packages/s3ql/mount.py", line 187, in main
op()
File "/usr/lib64/python2.7/site-packages/s3ql/block_cache.py", line 275, in destroy
os.rmdir(self.path)
OSError: [Errno 39] Directory not empty: '/home/root/.s3ql/local:=2F=2F=2Fhome=2Froot=2Fs3ql=2Fs3qlbucket_via_sshfs-cache'
2012-12-12 22:00:50.287 [12384] MainThread: [root] Uncaught top-level exception:
Traceback (most recent call last):
File "/usr/bin/mount.s3ql-2.7", line 9, in <module>
load_entry_point('s3ql==1.12', 'console_scripts', 'mount.s3ql')()
File "/usr/lib64/python2.7/site-packages/s3ql/mount.py", line 139, in main
llfuse.main(options.single)
File "fuse_api.pxi", line 213, in llfuse.main (src/llfuse.c:18034)
File "handlers.pxi", line 296, in llfuse.fuse_read (src/llfuse.c:6832)
File "handlers.pxi", line 297, in llfuse.fuse_read (src/llfuse.c:6776)
File "/usr/lib64/python2.7/site-packages/s3ql/fs.py", line 932, in read
tmp = self._read(fh, offset, length)
File "/usr/lib64/python2.7/site-packages/s3ql/fs.py", line 964, in _read
with self.cache.get(id_, blockno) as fh:
File "/usr/lib64/python2.7/contextlib.py", line 17, in __enter__
return self.gen.next()
File "/usr/lib64/python2.7/site-packages/s3ql/block_cache.py", line 538, in get
el = backend.perform_read(do_read, 's3ql_data_%d' % obj_id)
File "/usr/lib64/python2.7/site-packages/s3ql/backends/common.py", line 61, in wrapped
return fn(self, *a, **kw)
File "/usr/lib64/python2.7/site-packages/s3ql/backends/common.py", line 224, in perform_read
return fn(fh)
File "/usr/lib64/python2.7/site-packages/s3ql/block_cache.py", line 533, in do_read
shutil.copyfileobj(fh, el, BUFSIZE)
File "/usr/lib64/python2.7/shutil.py", line 49, in copyfileobj
buf = fsrc.read(length)
File "/usr/lib64/python2.7/site-packages/s3ql/backends/common.py", line 619, in read
buf = self._read(BUFSIZE)
File "/usr/lib64/python2.7/site-packages/s3ql/backends/common.py", line 703, in _read
buf = self.fh.read(size)
File "/usr/lib64/python2.7/site-packages/s3ql/backends/common.py", line 619, in read
buf = self._read(BUFSIZE)
File "/usr/lib64/python2.7/site-packages/s3ql/backends/common.py", line 870, in _read
raise ChecksumError('HMAC mismatch')
ChecksumError: HMAC mismatch