@@ -347,10 +347,9 @@ def check_pow(self, db=None, nonce=None):
347
347
348
348
# Grab current cache
349
349
current_cache_size = get_cache_size (self .number )
350
- cache = get_cache_memoized (db , seed , current_cache_size )
350
+ cache = get_cache_memoized (seed , current_cache_size )
351
351
current_full_size = get_full_size (self .number )
352
- mining_output = hashimoto_light (current_full_size , cache ,
353
- header_hash , nonce )
352
+ mining_output = hashimoto_light (current_full_size , cache , header_hash , nonce )
354
353
diff = self .difficulty
355
354
if mining_output ['mix digest' ] != self .mixhash :
356
355
return False
@@ -1242,30 +1241,9 @@ def __repr__(self):
1242
1241
def __structlog__ (self ):
1243
1242
return encode_hex (self .hash )
1244
1243
1245
-
1246
- cache_cache = {}
1247
-
1248
-
1249
- def peck_cache (db , seedhash , size ):
1250
- key = b'cache:' + seedhash + b',' + str_to_bytes (str (size ))
1251
- if key not in db :
1252
- cache = mkcache (size , seedhash )
1253
- cache_cache [key ] = cache
1254
- cache_serialized = serialize_cache (cache )
1255
- cache_hash = utils .sha3 (cache_serialized )
1256
- db .put (cache_hash , cache_serialized )
1257
- db .put (key , cache_hash )
1258
- elif key not in cache_cache :
1259
- o = db .get (db .get (key ))
1260
- cache_cache [key ] = o
1261
- return deserialize_cache (o )
1262
-
1263
-
1264
- def get_cache_memoized (db , seedhash , size ):
1265
- key = b'cache:' + seedhash + b',' + str_to_bytes (str (size ))
1266
- peck_cache (db , seedhash , size )
1267
- return cache_cache [key ]
1268
-
1244
+ @lru_cache (5 )
1245
+ def get_cache_memoized (seedhash , size ):
1246
+ return mkcache (size , seedhash )
1269
1247
1270
1248
# Gas limit adjustment algo
1271
1249
def calc_gaslimit (parent ):
0 commit comments