Skip to content
This repository has been archived by the owner on Jun 6, 2024. It is now read-only.

Commit

Permalink
add separated db handlers for specimens
Browse files Browse the repository at this point in the history
Signed-off-by: Pranay Valson <[email protected]>
  • Loading branch information
noslav committed Mar 28, 2023
1 parent 2c34fff commit dfbb7b4
Showing 1 changed file with 13 additions and 11 deletions.
24 changes: 13 additions & 11 deletions src/dbmanager.py → src/dbmanspecimen.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,10 @@
import psycopg2
import logformat

from finalizationrequest import FinalizationRequest
from finalizationspecimenrequest import FinalizationSpecimenRequest


class DBManager(threading.Thread):
class DBManagerSpecimen(threading.Thread):
caught_up: bool = False
last_block_id: int
starting_point: int
Expand Down Expand Up @@ -36,7 +36,7 @@ def _process_outputs(self, outputs):
chainId = output[3]
deadline = output[5]
finalizationHash = output[6]
fr = FinalizationRequest(
fr = FinalizationSpecimenRequest(
chainId=chainId,
blockHeight=blockHeight,
deadline=deadline,
Expand All @@ -53,9 +53,9 @@ def _process_outputs(self, outputs):
self._update_cursor(fr.session_started_block_id)
c += 1
if fl > 0:
self.logger.info(f"Queued {fl} proof-sessions for finalization")
self.logger.info(f"Queued {fl} specimen proof-sessions for finalization")
if c > 0:
self.logger.info(f"Confirmed {c} proof-sessions")
self.logger.info(f"Confirmed {c} specimen proof-sessions")
if self.last_block_id > prev_last_block_id:
self.logger.info(f"Updated cursor position block_id={self.last_block_id}")

Expand All @@ -80,7 +80,7 @@ def __main_loop(self):
# we are catching up. So we only need to grab what we need to attempt for finalizing
if self.chain_table == "chain_moonbeam_moonbase_alpha":
cur.execute(
r'SELECT * FROM chain_moonbeam_moonbase_alpha."_proof_chain_events" WHERE observer_chain_session_start_block_id > %s AND observer_chain_finalization_tx_hash IS NULL AND origin_chain_block_height > 16864740;',
r'SELECT * FROM chain_moonbeam_moonbase_alpha."_proof_chain_events" WHERE observer_chain_session_start_block_id > %s AND observer_chain_finalization_tx_hash IS NULL AND origin_chain_block_height > 16921800;',
(self.last_block_id,),
)
else:
Expand All @@ -90,7 +90,9 @@ def __main_loop(self):
)
outputs = cur.fetchall()

self.logger.info(f"Processing {len(outputs)} proof-session records...")
self.logger.info(
f"Processing {len(outputs)} specimen proof-session records..."
)
self._process_outputs(outputs)

self.caught_up = True
Expand All @@ -105,7 +107,7 @@ def __main_loop(self):
# we need everything after last max block number
if self.chain_table == "chain_moonbeam_moonbase_alpha":
cur.execute(
r'SELECT * FROM chain_moonbeam_moonbase_alpha."_proof_chain_events" WHERE observer_chain_session_start_block_id > %s AND origin_chain_block_height > 16864740;',
r'SELECT * FROM chain_moonbeam_moonbase_alpha."_proof_chain_events" WHERE observer_chain_session_start_block_id > %s AND origin_chain_block_height > 16921800;',
(self.last_block_id,),
)
else:
Expand All @@ -117,7 +119,7 @@ def __main_loop(self):
outputs = cur.fetchall()

if self._process_outputs(outputs) == 0:
self.logger.info("No new proof-session records discovered")
self.logger.info("No new specimen proof-session records discovered")

time.sleep(40)

Expand Down Expand Up @@ -161,10 +163,10 @@ def __fetch_last_block(self):
self.logger.warning("".join(traceback.format_exception(ex)))

def _update_cursor(self, block_id):
for fr in FinalizationRequest.get_requests_to_be_confirmed():
for fr in FinalizationSpecimenRequest.get_requests_to_be_confirmed():
if fr.session_started_block_id < block_id:
return
for fr in FinalizationRequest.get_requests_to_be_finalized():
for fr in FinalizationSpecimenRequest.get_requests_to_be_finalized():
if fr.session_started_block_id < block_id:
return
self.last_block_id = block_id

0 comments on commit dfbb7b4

Please sign in to comment.