better "addrmeta is None" fix

This commit is contained in:
tim
2025-03-16 21:17:19 -04:00
parent 1c0c2f0e63
commit 4492d23c47
3 changed files with 6 additions and 10 deletions

View File

@@ -19,7 +19,9 @@ class AddressMetadata (TypedDict):
def save_addrmeta(address: str, meta: AddressMetadata):
if meta['type'] == 'Token':
if meta is None:
pass
elif meta['type'] == 'Token':
meta: OldTokenDict
updated = Token.load(meta)
token = db.session.get(Token, (current_chain.get().id, address))

View File

@@ -27,16 +27,12 @@ async def get_pool(address: str) -> OldPoolDict:
# noinspection PyTypeChecker
result: OldPoolDict = address_metadata[address]
except KeyError:
result = await load_pool(address)
if result is not None:
address_metadata[address] = result
result = address_metadata[address] = await load_pool(address)
else:
if (result['exchange'] == Exchange.UniswapV3.value and
(result['base'] == ADDRESS_0 or result['quote'] == ADDRESS_0)):
log.warning(f'Repairing bad pool {address}')
result = await load_pool(address, use_db=False)
if result is not None:
address_metadata[address] = result
result = address_metadata[address] = await load_pool(address, use_db=False)
return result

View File

@@ -52,9 +52,7 @@ async def get_token(address) -> Optional[OldTokenDict]:
# noinspection PyTypeChecker
return address_metadata[address]
except KeyError:
result = await load_token(address)
if result is not None:
address_metadata[address] = result
result = address_metadata[address] = await load_token(address)
return result