Opened at 2011-01-18T22:36:19Z
Last modified at 2014-09-27T13:40:34Z
#1332 new defect
fails to start up on readonly filesystem when it tried to rmdir the incoming directory
Reported by: | zooko | Owned by: | zancas |
---|---|---|---|
Priority: | normal | Milestone: | soon |
Component: | code-storage | Version: | 1.8.1 |
Keywords: | easy availability error | Cc: | |
Launchpad Bug: |
Description (last modified by Lcstyle)
I just started a storage server node on a filesystem that was mounted read-only, and it failed to start, emitting:
owhiela5@ip-10-194-21-199:~/.tahoe$ tahoe start STARTING /home/owhiela5/.tahoe Traceback (most recent call last): File "/usr/lib/python2.6/dist-packages/twisted/application/app.py", line 626, in run runApp(config) File "/usr/lib/python2.6/dist-packages/twisted/scripts/twistd.py", line 23, in runApp _SomeApplicationRunner(config).run() File "/usr/lib/python2.6/dist-packages/twisted/application/app.py", line 374, in run self.application = self.createOrGetApplication() File "/usr/lib/python2.6/dist-packages/twisted/application/app.py", line 439, in createOrGetApplication application = getApplication(self.config, passphrase) --- <exception caught here> --- File "/usr/lib/python2.6/dist-packages/twisted/application/app.py", line 450, in getApplication application = service.loadApplication(filename, style, passphrase) File "/usr/lib/python2.6/dist-packages/twisted/application/service.py", line 390, in loadApplication application = sob.loadValueFromFile(filename, 'application', passphrase) File "/usr/lib/python2.6/dist-packages/twisted/persisted/sob.py", line 210, in loadValueFromFile exec fileObj in d, d File "tahoe-client.tac", line 10, in <module> c = client.Client() File "/usr/lib/pymodules/python2.6/allmydata/client.py", line 129, in __init__ self.init_storage() File "/usr/lib/pymodules/python2.6/allmydata/client.py", line 258, in init_storage expiration_sharetypes=expiration_sharetypes) File "/usr/lib/pymodules/python2.6/allmydata/storage/server.py", line 76, in __init__ self._clean_incomplete() File "/usr/lib/pymodules/python2.6/allmydata/storage/server.py", line 158, in _clean_incomplete fileutil.rm_dir(self.incomingdir) File "/usr/lib/pymodules/python2.6/allmydata/util/fileutil.py", line 215, in rm_dir raise excs[0] exceptions.OSError: [Errno 30] Read-only file system: '/home/owhiela5/.tahoe/storage/shares/incoming' Failed to load application: [Errno 30] Read-only file system: '/home/owhiela5/.tahoe/storage/shares/incoming' client node probably not started
I guess _clean_incomplete() should catch, log, and ignore any failure to clean the incoming directory.
Change History (6)
comment:1 Changed at 2011-01-30T16:20:50Z by davidsarah
- Milestone changed from undecided to 1.9.0
- Owner set to davidsarah
- Status changed from new to assigned
comment:2 Changed at 2011-07-16T21:10:45Z by zooko
- Milestone changed from 1.9.0 to soon
- Owner changed from davidsarah to arch_o_median
- Status changed from assigned to new
comment:3 Changed at 2011-07-26T04:13:05Z by arch_o_median
- Owner changed from arch_o_median to Zancas
comment:4 Changed at 2011-08-11T04:40:50Z by Zancas
- Owner changed from Zancas to zancas
comment:5 Changed at 2014-09-27T02:26:50Z by Lcstyle
- Description modified (diff)
sounds like an easy in for 1.11?
comment:6 Changed at 2014-09-27T13:40:34Z by daira
- Priority changed from major to normal
1.11 is frozen for work on new tickets, but it would be nice to have the the ability to run on a readonly filesystem for 1.12. I'm not sure this is the only bug preventing that, though.
Note: See
TracTickets for help on using
tickets.
Josh and I are going to fix this in our work on #999. Bumping it out of Milestone 1.9.0 and into Milestone "soon".