diff --git a/flusher/flusher/db.py b/flusher/flusher/db.py index 3e8d3a3ad..8656c97a6 100644 --- a/flusher/flusher/db.py +++ b/flusher/flusher/db.py @@ -184,6 +184,7 @@ def Column(*args, **kwargs): Column("resolve_time", sa.Integer, nullable=True), Column("result", CustomBase64, nullable=True), sa.Index("ix_requests_oracle_script_id", "oracle_script_id", "id"), + sa.Index("ix_oracle_script_id_resolve_status_request_time", "oracle_script_id", "resolve_status", "request_time"), ) raw_requests = sa.Table( diff --git a/flusher/flusher/init.py b/flusher/flusher/init.py index 504fe2b42..19760730a 100644 --- a/flusher/flusher/init.py +++ b/flusher/flusher/init.py @@ -128,7 +128,7 @@ def init(chain_id, topic, replay_topic, db): FROM oracle_scripts join requests ON oracle_scripts.id = requests.oracle_script_id - WHERE TO_TIMESTAMP(requests.request_time) >= Now() - '1 day' :: interval + WHERE requests.request_time >= CAST(EXTRACT(epoch FROM NOW()) AS INT) - 86400 GROUP BY oracle_scripts.id, requests.resolve_status; """ @@ -144,7 +144,7 @@ def init(chain_id, topic, replay_topic, db): FROM oracle_scripts join requests ON oracle_scripts.id = requests.oracle_script_id - WHERE TO_TIMESTAMP(requests.request_time) >= Now() - '1 week' :: interval + WHERE requests.request_time >= CAST(EXTRACT(epoch FROM NOW()) AS INT) - 604800 GROUP BY oracle_scripts.id, requests.resolve_status; """ @@ -160,7 +160,7 @@ def init(chain_id, topic, replay_topic, db): FROM oracle_scripts join requests ON oracle_scripts.id = requests.oracle_script_id - WHERE TO_TIMESTAMP(requests.request_time) >= Now() - '1 month' :: interval + WHERE requests.request_time >= CAST(EXTRACT(epoch FROM NOW()) AS INT) - 2592000 GROUP BY oracle_scripts.id, requests.resolve_status; """ @@ -221,4 +221,3 @@ def init(chain_id, topic, replay_topic, db): COMMIT; """ ) -