Skip to content

Releases: pinax-network/substreams-raw-blocks

solana-v1.0.1

09 Jan 18:14
Compare
Choose a tag to compare

Add the following fields:

instruction_calls table

  • fee
  • compute_units_consumed
  • program_id

transactions table

  • fee
  • compute_units_consumed

v1.0.0

06 Dec 01:48
Compare
Choose a tag to compare

Raw Blockchain Data Substreams optimize for parquet file storage.

BlockType Support

Status BlockType Chains
EVM Ethereum, Base, Arbitrum One, Polygon, BNB, Avalanche...
Antelope WAX, EOS, Ultra, Telos...
Solana Solana
Cosmos CosmosHub, Injective, Osmosis...
Beacon Ethereum 2.0 Beacon Chain
Bitcoin Bitcoin, Litecoin, Dogecoin...
Starknet Starknet
Arweave Arweave

evm-v0.6.0

04 Nov 15:59
Compare
Choose a tag to compare
  • upgrade to latest Substreams Rust release v0.6.0
  • remove network: Mainnet from package

antelope-v0.3.0

18 Sep 20:45
99d8116
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.2.3...v0.3.0

antelope-v0.2.4

09 Sep 17:59
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.2.3...antelope-v0.2.4

SQL

CREATE TABLE IF NOT EXISTS auth_sequences
(
    -- clock --
    block_time                  DateTime64(3, 'UTC'),
    block_number                UInt64,
    block_hash                  String,
    block_date                  Date,

    -- transaction --
    tx_hash                     String,

    -- action --
    action_index                UInt32,

    -- auth_sequence --
    account_name                String,
    sequence                    UInt64
)
    ENGINE = ReplacingMergeTree()
        PRIMARY KEY (block_date, block_number)
        ORDER BY (block_date, block_number, tx_hash, action_index, account_name, sequence)
        COMMENT 'Antelope action authorization sequences';
image image

v0.2.3

07 Sep 02:54
Compare
Choose a tag to compare
  • removal of params fields for packages

Antelope

  • add authorizations TABLE

evm-v0.2.1

21 Aug 21:49
Compare
Choose a tag to compare

Changes

  • add block_hash to primary keys #4

antelope-v0.1.0

21 Aug 21:50
Compare
Choose a tag to compare
  • initial release of Antelope Raw Blocks

SQL Schema

CREATE TABLE IF NOT EXISTS blocks
(
    -- clock --
    time                                    DateTime64(3, 'UTC'),
    number                                  UInt64,
    date                                    Date,
    hash                                    String COMMENT 'Hash',

    -- header --
    parent_hash                             String COMMENT 'Hash',
    producer                                String COMMENT 'Address',
    confirmed                               UInt32,
    schedule_version                        UInt32,

    -- block --
    version                                 UInt32,
    producer_signature                      String COMMENT 'Signature',
    dpos_proposed_irreversible_blocknum     UInt32,
    dpos_irreversible_blocknum              UInt32,

    -- block roots --
    transaction_mroot                       String COMMENT 'Hash',
    action_mroot                            String COMMENT 'Hash',
    -- blockroot_merkle_active_nodes           Array(String) COMMENT 'A blockroot Merkle tree uses hashes to verify blockchain data integrity. Leaf nodes hash data blocks, non-leaf nodes hash child nodes. The root hash efficiently verifies all data.',
    blockroot_merkle_node_count             UInt32,

    -- counters --
    size                                    UInt64 COMMENT 'Block size estimate in bytes',
    total_transactions                      UInt64,
    successful_transactions                 UInt64,
    failed_transactions                     UInt64,
    total_actions                           UInt64,
    total_db_ops                            UInt64,
)
    ENGINE = ReplacingMergeTree()
        PRIMARY KEY (date, number)
        ORDER BY (date, number, hash)
        COMMENT 'Antelope block header';

CREATE TABLE IF NOT EXISTS transactions
(
    -- block --
    block_time                  DateTime64(3, 'UTC'),
    block_number                UInt64,
    block_hash                  String COMMENT 'Hash',
    block_date                  Date,

    -- transaction --
    hash                        String COMMENT 'Hash',
    `index`                     UInt64,
    elapsed                     Int64,
    net_usage                   UInt64,
    scheduled                   Bool,

    -- header --
    cpu_usage_micro_seconds     UInt32,
    net_usage_words             UInt32,
    status                      LowCardinality(String) COMMENT 'Status',
    status_code                 UInt8,
    success                     Bool,

    -- block roots --
    transaction_mroot           String COMMENT 'Hash',
)
    ENGINE = ReplacingMergeTree()
        PRIMARY KEY (block_date, block_number)
        ORDER BY (block_date, block_number, block_hash, hash)
        COMMENT 'Antelope transactions';

CREATE TABLE IF NOT EXISTS actions
(
    -- block --
    block_time                  DateTime64(3, 'UTC'),
    block_number                UInt64,
    block_hash                  String COMMENT 'Hash',
    block_date                  Date,

    -- transaction --
    tx_hash                     String COMMENT 'Hash',
    tx_index                    UInt64,
    tx_status                   LowCardinality(String),
    tx_status_code              UInt8,
    tx_success                  Bool,

    -- receipt --
    abi_sequence                UInt64,
    code_sequence               UInt64,
    digest                      String,
    global_sequence             UInt64,
    receipt_receiver            String COMMENT 'Address',
    recv_sequence               UInt64,

    -- action --
    account                     String COMMENT 'Address',
    name                        String COMMENT 'Address',
    json_data                   String COMMENT 'JSON',
    raw_data                    String COMMENT 'Hex',

    -- trace --
    `index`                                         UInt32 COMMENT 'Action Ordinal',
    receiver                                        String,
    context_free                                    Bool,
    elapsed                                         Int64,
    console                                         String,
    raw_return_value                                String,
    json_return_value                               String,
    creator_action_ordinal                          UInt32,
    closest_unnotified_ancestor_action_ordinal      UInt32,
    execution_index                                 UInt32,

    -- block roots --
    action_mroot                                    String COMMENT 'Hash',
)
    ENGINE = ReplacingMergeTree()
        PRIMARY KEY (block_date, block_number)
        ORDER BY (block_date, block_number, block_hash, tx_hash, tx_index, `index`)
        COMMENT 'Antelope actions';

CREATE TABLE IF NOT EXISTS db_ops
(
    -- block --
    block_time                  DateTime64(3, 'UTC'),
    block_number                UInt64,
    block_hash                  String COMMENT 'EVM Hash',
    block_date                  Date,

    -- transaction --
    tx_hash                     String COMMENT 'Hash',
    tx_index                    UInt64,
    tx_status                   LowCardinality(String),
    tx_status_code              UInt8,
    tx_success                  Bool,

    -- storage change --
    `index`                     UInt32,
    operation                   LowCardinality(String) COMMENT 'Operation',
    operation_code              UInt8,
    action_index                UInt32,
    code                        String,
    scope                       String,
    table_name                  String,
    primary_key                 String,
    old_payer                   String,
    new_payer                   String,
    old_data                    String,
    new_data                    String,
    old_data_json               String,
    new_data_json               String,
)
    ENGINE = ReplacingMergeTree()
        PRIMARY KEY (block_date, block_number)
        ORDER BY (block_date, block_number, block_hash, tx_hash, `index`)
        COMMENT 'Antelope database operations';

v0.2.0

18 Aug 04:06
Compare
Choose a tag to compare

Changes

  • Update Block schemas #1
  • add map_blocks (only provides blocks headers as DatabaseChanges, nothing else)
  • logs support when using DetailLevel: BASE
  • Replace FixedString to String types 5c0e794 (to make Polars scan compatible)
  • block_balance_changes have been moved to balance_changes

SQL changes

Fields removed:

  • transactions.public_key (empty field)
  • transactions.return_data (only calls return data)

Fields added:

  • block roots
    • transactions.transactions_root
    • transactions.receipts_root
  • transaction receipt
    • blob_gas_price
    • blob_gas_used
    • cumulative_gas_used
    • logs_bloom
    • state_root
  • block detail levels
    • detail_level
    • detail_level_code
  • add logs.block_index

Fields renamed:

  • logs
    • from => tx_from
    • to => tx_to

Data Types modified

  • modified block_time (all tables) from DateTime to DateTime64

v0.1.2

07 Aug 15:32
Compare
Choose a tag to compare
  • Fixed optional fields from bigint to String (default to 0 or "" empty) 8c140c2