🐳Docker

Authors: [jLeopoldA]

System Requirements

CPU

OS

Ram

Disk

vCpu 4 min

Used: Debian / Ubuntu 22.04

16GB minimum

13.5 TB (SSD)

Archival Node size is 973GB as of 11/20/2024

Indexer Test for X Layer POI

Due to POI divergences found with X Layer, we created an initial test below for indexers that may indicate that their setup allows them to sync other subgraphs and be in majority consensus.

  • Sync the following subgraph: QmWHYMV9mPZ6zoomwWSZbN24sdGSEQhy1efritMiETpxqS

  • Query to grab the POI Note: Do not modify the query below - the indexer address in the query should be the 0x0 address.

{ "query": "{ proofOfIndexing(subgraph: "QmWHYMV9mPZ6zoomwWSZbN24sdGSEQhy1efritMiETpxqS", blockNumber: 3041190, blockHash: "0xa819924ad94bcf3295826d5ad916c9ef06fac8cb46a6273d3bcc7aec822e22e7", indexer: "0x0000000000000000000000000000000000000000") }" }

If there is a match for the Consensus POI provided below, it may indicate that the setup allows for syncing other subgraphs and being in majority consensus. If there is a match for the Divergent POI, this can be an indication of a data determinism issue. Consensus 0xa1223b5cbabf16d9896c2bd19099d08e5ce45c7ff308674b3ea7ada5367334bf

Divergent 0x411bf0293e96a1459167ef1828aa7d70cd6c2e1f8c4210e0edf0fa8827eeed69

  • Shell into your index node and run this curl command

curl -s -X POST -H "Content-Type: application/json" --data '{"query": "{ proofOfIndexing(subgraph: "QmWHYMV9mPZ6zoomwWSZbN24sdGSEQhy1efritMiETpxqS", blockNumber: 3041190, blockHash: "0xa819924ad94bcf3295826d5ad916c9ef06fac8cb46a6273d3bcc7aec822e22e7", indexer: "0x0000000000000000000000000000000000000000") }"}' "http://localhost:8030/graphql"

Required Installations

Requirements to create an X Layer node are Docker, Docker-Compose and an Ethereum L1 node.

Pre-Requisites

Update

sudo apt update -y && sudo apt upgrade -y && sudo apt autoremove -y

Setting up Firewall

Set explicit default UFW rules

Allow SSH

Allow remote RPC connections with X Layer node

Install Docker and Docker-Compose

Set up X Layer Node

Values for .env file

Restore latest Layer 2 snapshot

Restoring the Layer 2 snapshot database locally will allow synchronizing of Layer 2 data quickly.

Start X Layer Node

Query X Layer Node

Additional Commands

Access Logs

Last updated

Was this helpful?