@@ -25,25 +25,23 @@ class LocalFileBlob(object):
2525 def __init__ (self , fullpath ):
2626 self .fullpath = fullpath
2727
28- def delete (self , silent = False ):
28+ def delete (self ):
2929 try :
3030 os .remove (self .fullpath )
3131 except Exception :
32- if not silent :
33- raise
32+ pass # keep silent
3433
35- def get (self , silent = False ):
34+ def get (self ):
3635 try :
3736 with open (self .fullpath , 'r' ) as file :
3837 return tuple (
3938 json .loads (line .strip ())
4039 for line in file .readlines ()
4140 )
4241 except Exception :
43- if not silent :
44- raise
42+ pass # keep silent
4543
46- def put (self , data , lease_period = 0 , silent = False ):
44+ def put (self , data , lease_period = 0 ):
4745 try :
4846 fullpath = self .fullpath + '.tmp'
4947 with open (fullpath , 'w' ) as file :
@@ -59,8 +57,7 @@ def put(self, data, lease_period=0, silent=False):
5957 os .rename (fullpath , self .fullpath )
6058 return self
6159 except Exception :
62- if not silent :
63- raise
60+ pass # keep silent
6461
6562 def lease (self , period ):
6663 timestamp = _now () + _seconds (period )
@@ -90,11 +87,11 @@ def __init__(
9087 self .maintenance_period = maintenance_period
9188 self .retention_period = retention_period
9289 self .write_timeout = write_timeout
93- self ._maintenance_routine (silent = False )
90+ # Run maintenance routine once upon instantiating
91+ self ._maintenance_routine ()
9492 self ._maintenance_task = PeriodicTask (
9593 interval = self .maintenance_period ,
9694 function = self ._maintenance_routine ,
97- kwargs = {'silent' : True },
9895 )
9996 self ._maintenance_task .daemon = True
10097 self ._maintenance_task .start ()
@@ -109,19 +106,18 @@ def __enter__(self):
109106 def __exit__ (self , type , value , traceback ):
110107 self .close ()
111108
112- def _maintenance_routine (self , silent = False ):
109+ def _maintenance_routine (self ):
113110 try :
114111 if not os .path .isdir (self .path ):
115112 os .makedirs (self .path )
116113 except Exception :
117- if not silent :
118- raise
114+ # Race case will throw OSError which we can ignore
115+ pass
119116 try :
120117 for blob in self .gets ():
121118 pass
122119 except Exception :
123- if not silent :
124- raise
120+ pass # keep silent
125121
126122 def gets (self ):
127123 now = _now ()
@@ -164,7 +160,7 @@ def get(self):
164160 pass
165161 return None
166162
167- def put (self , data , lease_period = 0 , silent = False ):
163+ def put (self , data , lease_period = 0 ):
168164 if not self ._check_storage_size ():
169165 return None
170166 blob = LocalFileBlob (os .path .join (
@@ -174,7 +170,7 @@ def put(self, data, lease_period=0, silent=False):
174170 '{:08x}' .format (random .getrandbits (32 )), # thread-safe random
175171 ),
176172 ))
177- return blob .put (data , lease_period = lease_period , silent = silent )
173+ return blob .put (data , lease_period = lease_period )
178174
179175 def _check_storage_size (self ):
180176 size = 0
0 commit comments