I am running into the following runtime error when trying to index a specific event for the erc 4337 entrypoint v0.7.
Specifically the AccountDeployed event. I have the following config.json below.
config.json
{
"dashboard": {
"root_password": "$DASHBOARD_ROOT_PASSWORD"
},
"pg_url": "$DATABASE_URL",
"eth_sources": [
{
"name": "$BASE_NAME",
"url": "$BASE_RPC_URL",
"chain_id": "$BASE_CHAIN_ID",
"batch_size": 100
}
],
"integrations": [
{
"name": "account_deployed",
"enabled": true,
"block": [
{
"name": "block_time",
"column": "block_time"
},
{
"name": "log_addr",
"column": "log_addr",
"filter_op": "contains",
"filter_arg": [
"0x0000000071727De22E5E9d8BAf0edAc6f37da032"
]
}
],
"event": {
"type": "event",
"anonymous": false,
"inputs": [
{
"name": "userOpHash",
"type": "bytes32",
"indexed": true
},
{
"name": "sender",
"type": "address",
"indexed": true
},
{
"name": "factory",
"type": "address",
"indexed": false
},
{
"name": "paymaster",
"type": "address",
"indexed": false
}
],
"name": "AccountDeployed"
},
"table": {
"name": "send_account_deployed",
"columns": [
{
"name": "chain_id",
"type": "numeric"
},
{
"name": "log_addr",
"type": "bytea"
},
{
"name": "block_time",
"type": "numeric"
},
{
"name": "userOpHash",
"type": "bytea"
},
{
"name": "sender",
"type": "bytea"
},
{
"name": "factory",
"type": "bytea"
},
{
"name": "paymaster",
"type": "bytea"
}
]
},
"sources": [
{
"name": "$BASE_NAME",
"start": "$BASE_BLOCK_START"
}
]
}
]
}
I am running shovel like so.
docker run \
--rm \
--name shovel \
--add-host=host.docker.internal:host-gateway \
-p 8383:80 \
--env DATABASE_URL=postgresql://postgres:postgres@host.docker.internal:54322/postgres \
--env BASE_NAME=base \
--env BASE_RPC_URL=https://base-pokt.nodies.app \
--env BASE_CHAIN_ID=8453 \
--env BASE_BLOCK_START=11135065 \
--env DASHBOARD_ROOT_PASSWORD=shoveladmin \
-v ./config.json:/etc/shovel/config.json \
--entrypoint /usr/local/bin/shovel \
-w /usr/local/bin \
docker.io/indexsupply/shovel -l :80 -config /etc/shovel/config.json
p=1 v=5775 chain=08453 src=base dest=account_deployed msg=new-task
p=1 v=5775 n=0 msg=prune-task
p=1 v=5775 chain=08453 num=11135065 msg=start at config
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x8 pc=0x4ed750]
goroutine 100 [running]:
github.com/indexsupply/x/dig.(*logWithCtx).get(0x68df80?, {0x400000fb60?, 0x0?})
/app/dig/dig.go:834 +0x2c0
github.com/indexsupply/x/dig.Integration.processTx({{0x400000fb30, 0x10}, {0x0, {0x400000fbd0, 0xf}, {0x400000fb78, 0x5}, {0x4000258840, 0x4, 0x4}}, ...}, ...)
/app/dig/dig.go:849 +0x13c
github.com/indexsupply/x/dig.Integration.Insert({{0x400000fb30, 0x10}, {0x0, {0x400000fbd0, 0xf}, {0x400000fb78, 0x5}, {0x4000258840, 0x4, 0x4}}, ...}, ...)
/app/dig/dig.go:713 +0x438
github.com/indexsupply/x/shovel.(*Task).loadinsert.func1()
/app/shovel/task.go:471 +0x128
golang.org/x/sync/errgroup.(*Group).Go.func1()
/go/pkg/mod/golang.org/x/sync@v0.1.0/errgroup/errgroup.go:75 +0x58
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 18
/go/pkg/mod/golang.org/x/sync@v0.1.0/errgroup/errgroup.go:72 +0x98
Really racked my head on this one trying to ensure it wasn't me, but for the life of me I couldn't figure out why the log address is not set correctly for this event.
https://github.com/indexsupply/code/blob/57755b46c8566f8cc8626d13319297fab0c1310e/dig/dig.go#L833-L834
I am running into the following runtime error when trying to index a specific event for the erc 4337 entrypoint v0.7.
Specifically the
AccountDeployedevent. I have the following config.json below.config.json
{ "dashboard": { "root_password": "$DASHBOARD_ROOT_PASSWORD" }, "pg_url": "$DATABASE_URL", "eth_sources": [ { "name": "$BASE_NAME", "url": "$BASE_RPC_URL", "chain_id": "$BASE_CHAIN_ID", "batch_size": 100 } ], "integrations": [ { "name": "account_deployed", "enabled": true, "block": [ { "name": "block_time", "column": "block_time" }, { "name": "log_addr", "column": "log_addr", "filter_op": "contains", "filter_arg": [ "0x0000000071727De22E5E9d8BAf0edAc6f37da032" ] } ], "event": { "type": "event", "anonymous": false, "inputs": [ { "name": "userOpHash", "type": "bytes32", "indexed": true }, { "name": "sender", "type": "address", "indexed": true }, { "name": "factory", "type": "address", "indexed": false }, { "name": "paymaster", "type": "address", "indexed": false } ], "name": "AccountDeployed" }, "table": { "name": "send_account_deployed", "columns": [ { "name": "chain_id", "type": "numeric" }, { "name": "log_addr", "type": "bytea" }, { "name": "block_time", "type": "numeric" }, { "name": "userOpHash", "type": "bytea" }, { "name": "sender", "type": "bytea" }, { "name": "factory", "type": "bytea" }, { "name": "paymaster", "type": "bytea" } ] }, "sources": [ { "name": "$BASE_NAME", "start": "$BASE_BLOCK_START" } ] } ] }I am running shovel like so.
Really racked my head on this one trying to ensure it wasn't me, but for the life of me I couldn't figure out why the log address is not set correctly for this event.
https://github.com/indexsupply/code/blob/57755b46c8566f8cc8626d13319297fab0c1310e/dig/dig.go#L833-L834