Merge pull request #1125 from moonstream-to/indexed-at-columns

Add indexed at columns for logs and transactions.
pull/1126/head moonstreamdbv3/v0.0.17
Andrey Dolgolev 2024-08-20 20:13:11 +03:00 zatwierdzone przez GitHub
commit 1472f57764
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: B5690EEEBB952194
3 zmienionych plików z 162 dodań i 1 usunięć

Wyświetl plik

@ -0,0 +1,159 @@
"""Add indexed_at logs and transactions
Revision ID: 48d2562504d1
Revises: b89a8affe2c3
Create Date: 2024-08-20 17:08:34.493114
"""
from typing import Sequence, Union
from alembic import op
import sqlalchemy as sa
# revision identifiers, used by Alembic.
revision: str = "48d2562504d1"
down_revision: Union[str, None] = "b89a8affe2c3"
branch_labels: Union[str, Sequence[str], None] = None
depends_on: Union[str, Sequence[str], None] = None
def upgrade() -> None:
# ### commands auto generated by Alembic - please adjust! ###
op.add_column(
"arbitrum_one_blocks",
sa.Column("transactions_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"arbitrum_one_blocks",
sa.Column("logs_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"arbitrum_sepolia_blocks",
sa.Column("transactions_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"arbitrum_sepolia_blocks",
sa.Column("logs_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"ethereum_blocks",
sa.Column("transactions_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"ethereum_blocks",
sa.Column("logs_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"game7_orbit_arbitrum_sepolia_blocks",
sa.Column("transactions_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"game7_orbit_arbitrum_sepolia_blocks",
sa.Column("logs_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"game7_testnet_blocks",
sa.Column("transactions_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"game7_testnet_blocks",
sa.Column("logs_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"imx_zkevm_blocks",
sa.Column("transactions_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"imx_zkevm_blocks",
sa.Column("logs_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"imx_zkevm_sepolia_blocks",
sa.Column("transactions_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"imx_zkevm_sepolia_blocks",
sa.Column("logs_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"mantle_blocks",
sa.Column("transactions_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"mantle_blocks",
sa.Column("logs_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"mantle_sepolia_blocks",
sa.Column("transactions_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"mantle_sepolia_blocks",
sa.Column("logs_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"polygon_blocks",
sa.Column("transactions_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"polygon_blocks",
sa.Column("logs_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"sepolia_blocks",
sa.Column("transactions_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"sepolia_blocks",
sa.Column("logs_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"xai_blocks",
sa.Column("transactions_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"xai_blocks",
sa.Column("logs_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"xai_sepolia_blocks",
sa.Column("transactions_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
op.add_column(
"xai_sepolia_blocks",
sa.Column("logs_indexed_at", sa.DateTime(timezone=True), nullable=True),
)
# ### end Alembic commands ###
def downgrade() -> None:
# ### commands auto generated by Alembic - please adjust! ###
op.drop_column("xai_sepolia_blocks", "logs_indexed_at")
op.drop_column("xai_sepolia_blocks", "transactions_indexed_at")
op.drop_column("xai_blocks", "logs_indexed_at")
op.drop_column("xai_blocks", "transactions_indexed_at")
op.drop_column("sepolia_blocks", "logs_indexed_at")
op.drop_column("sepolia_blocks", "transactions_indexed_at")
op.drop_column("polygon_blocks", "logs_indexed_at")
op.drop_column("polygon_blocks", "transactions_indexed_at")
op.drop_column("mantle_sepolia_blocks", "logs_indexed_at")
op.drop_column("mantle_sepolia_blocks", "transactions_indexed_at")
op.drop_column("mantle_blocks", "logs_indexed_at")
op.drop_column("mantle_blocks", "transactions_indexed_at")
op.drop_column("imx_zkevm_sepolia_blocks", "logs_indexed_at")
op.drop_column("imx_zkevm_sepolia_blocks", "transactions_indexed_at")
op.drop_column("imx_zkevm_blocks", "logs_indexed_at")
op.drop_column("imx_zkevm_blocks", "transactions_indexed_at")
op.drop_column("game7_testnet_blocks", "logs_indexed_at")
op.drop_column("game7_testnet_blocks", "transactions_indexed_at")
op.drop_column("game7_orbit_arbitrum_sepolia_blocks", "logs_indexed_at")
op.drop_column("game7_orbit_arbitrum_sepolia_blocks", "transactions_indexed_at")
op.drop_column("ethereum_blocks", "logs_indexed_at")
op.drop_column("ethereum_blocks", "transactions_indexed_at")
op.drop_column("arbitrum_sepolia_blocks", "logs_indexed_at")
op.drop_column("arbitrum_sepolia_blocks", "transactions_indexed_at")
op.drop_column("arbitrum_one_blocks", "logs_indexed_at")
op.drop_column("arbitrum_one_blocks", "transactions_indexed_at")
# ### end Alembic commands ###

Wyświetl plik

@ -53,6 +53,8 @@ class EvmBasedBlocks(Base):
parent_hash = Column(VARCHAR(256), nullable=False)
row_id = Column(BigInteger, nullable=False, index=False)
path = Column(Text, nullable=False)
transactions_indexed_at = Column(DateTime(timezone=True), nullable=True)
logs_indexed_at = Column(DateTime(timezone=True), nullable=True)
indexed_at = Column(
DateTime(timezone=True), server_default=utcnow(), nullable=False
)

Wyświetl plik

@ -1 +1 @@
0.0.16
0.0.17