Comments (6)
Hey thanks @sljeff - This looks like your node can't fetch the L1 block that contained Base genesis. Can you share what L1 RPC URL you are using? Or if you are running your L1 node yourself, what clients and configuration you have set up?
from node.
I'm using a paid blockpi node
It seems that the error 0x5c13d307623a926cd31415036c8b7fa14572f9dac64528e857a470511fc30771
is not a legal eth tx hash
from node.
That is the hash for the L1 block that included Base mainnet genesis info: https://etherscan.io/block/17481768
I wonder if the blockpi node is a full node and not an archive node?
from node.
What does this return?
curl -d '{"id":0,"jsonrpc":"2.0","method":"eth_getTransactionReceipt","params":["0xe080e65b2f599279599ba4c59b96bad843ec29a50490ab15cab330b9c945e1c4"]}' -H "Content-Type: application/json" <BLOCKPI_RPC_URL>
It should return a JSON blob containing "transactionIndex":"0x2"
within. If anything else, it seems like possibly your L1 node is malfunctioning.
from node.
Yes, this is an archive node.
Yes, it returned content does contain "transactionIndex":"0x2"
as you said.
I'm sorry, but I haven't tried starting a node myself anymore as the node provider I use, blockpi, already offers direct access to the base chain.
from node.
I have reproduced this on a blockpi node. It looks like sometimes their eth_getTransactionReceipt
returns an empty response. For example: {"jsonrpc":"2.0","id":26,"method":"eth_getTransactionReceipt","params":["0x2094a0de142cfebbcbdfc38d5c2410e6cdba0e81dad1e27e874fb69901484995"]}
normally works fine, but occasionally returns {"jsonrpc":"2.0","id":26,"result":null}
.
You can reproduce this with the following script. This will panic on the public-facing blockpi node, but succeed using another node. Would recommend using another provider for your L1 node.
package main
import (
"context"
"github.com/ethereum-optimism/optimism/op-node/client"
"github.com/ethereum-optimism/optimism/op-node/sources"
"github.com/ethereum/go-ethereum/ethclient"
"github.com/ethereum/go-ethereum/log"
"github.com/ethereum/go-ethereum/rpc"
"math/big"
"time"
)
func main() {
ctx := context.Background()
c, err := rpc.DialContext(ctx, "https://ethereum.blockpi.network/v1/rpc/public")
if err != nil {
panic(err)
}
r := client.NewBaseRPCClient(c)
e := ethclient.NewClient(c)
block, err := e.BlockByNumber(ctx, big.NewInt(17481768))
if err != nil {
panic(err)
}
testCfg := &sources.EthClientConfig{
// receipts and transactions are cached per block
ReceiptsCacheSize: 1000,
TransactionsCacheSize: 1000,
HeadersCacheSize: 1000,
PayloadsCacheSize: 1000,
MaxRequestsPerBatch: 20,
MaxConcurrentRequests: 10,
TrustRPC: true,
MustBePostMerge: false,
RPCProviderKind: sources.RPCKindBasic,
MethodResetDuration: time.Minute,
}
ec, err := sources.NewEthClient(r, log.Root(), nil, testCfg)
if err != nil {
panic(err)
}
_, _, err = ec.FetchReceipts(ctx, block.Hash())
if err != nil {
panic(err)
}
}
from node.
Related Issues (20)
- Are there new snapshots available? HOT 3
- Use the eth_sendRawTransaction RPC method and receive the response HOT 1
- Long re-sync period after resetting mainnet nodes HOT 9
- Application failed HOT 8
- L1.beacon question HOT 13
- Versions in machine-readable format? HOT 2
- Base always 12hours behind. Sync Issue HOT 2
- niv
- TEST HOT 1
- Awesome Development
- Integration with project
- please integration with polygon Zkevm HOT 1
- Synswap
- Base mainnet: failed to check L1 Beacon API version HOT 4
- # https://tea.xyz/what-is-this-file --- version: 1.0.0 codeOwners: - '0x7D3CC9b8e3033cBaCBB91eaAbE922f6F680B9887' quorum: 1
- updated to v0.7.0 after the error,cannot unmarshal hex number with leading zero digits into Go struct field StorageProofEntry.storageProof.value of type *hexutil.Big" HOT 1
- Node operator HOT 1
- Add codespell workflow
- URL format of L1 Beacon API endpoint
- Indexation stuck
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from node.