Giter VIP home page Giter VIP logo

bsc's Introduction

BNB Smart Chain

The goal of BNB Smart Chain is to bring programmability and interoperability to BNB Beacon Chain. In order to embrace the existing popular community and advanced technology, it will bring huge benefits by staying compatible with all the existing smart contracts on Ethereum and Ethereum tooling. And to achieve that, the easiest solution is to develop based on go-ethereum fork, as we respect the great work of Ethereum very much.

BNB Smart Chain starts its development based on go-ethereum fork. So you may see many toolings, binaries and also docs are based on Ethereum ones, such as the name “geth”.

API Reference Discord

But from that baseline of EVM compatible, BNB Smart Chain introduces a system of 21 validators with Proof of Staked Authority (PoSA) consensus that can support short block time and lower fees. The most bonded validator candidates of staking will become validators and produce blocks. The double-sign detection and other slashing logic guarantee security, stability, and chain finality.

Cross-chain transfer and other communication are possible due to native support of interoperability. Relayers and on-chain contracts are developed to support that. BNB Beacon Chain DEX remains a liquid venue of the exchange of assets on both chains. This dual-chain architecture will be ideal for users to take advantage of the fast trading on one side and build their decentralized apps on the other side. The BNB Smart Chain will be:

  • A self-sovereign blockchain: Provides security and safety with elected validators.
  • EVM-compatible: Supports all the existing Ethereum tooling along with faster finality and cheaper transaction fees.
  • Interoperable: Comes with efficient native dual chain communication; Optimized for scaling high-performance dApps that require fast and smooth user experience.
  • Distributed with on-chain governance: Proof of Staked Authority brings in decentralization and community participants. As the native token, BNB will serve as both the gas of smart contract execution and tokens for staking.

More details in White Paper.

Key features

Proof of Staked Authority

Although Proof-of-Work (PoW) has been approved as a practical mechanism to implement a decentralized network, it is not friendly to the environment and also requires a large size of participants to maintain the security.

Proof-of-Authority(PoA) provides some defense to 51% attack, with improved efficiency and tolerance to certain levels of Byzantine players (malicious or hacked). Meanwhile, the PoA protocol is most criticized for being not as decentralized as PoW, as the validators, i.e. the nodes that take turns to produce blocks, have all the authorities and are prone to corruption and security attacks.

Other blockchains, such as EOS and Cosmos both, introduce different types of Deputy Proof of Stake (DPoS) to allow the token holders to vote and elect the validator set. It increases the decentralization and favors community governance.

To combine DPoS and PoA for consensus, BNB Smart Chain implement a novel consensus engine called Parlia that:

  1. Blocks are produced by a limited set of validators.
  2. Validators take turns to produce blocks in a PoA manner, similar to Ethereum's Clique consensus engine.
  3. Validator set are elected in and out based on a staking based governance on BNB Beacon Chain.
  4. The validator set change is relayed via a cross-chain communication mechanism.
  5. Parlia consensus engine will interact with a set of system contracts to achieve liveness slash, revenue distributing and validator set renewing func.

Light Client of BNB Beacon Chain

To achieve the cross-chain communication from BNB Beacon Chain to BNB Smart Chain, need introduce a on-chain light client verification algorithm. It contains two parts:

  1. Stateless Precompiled contracts to do tendermint header verification and Merkle Proof verification.
  2. Stateful solidity contracts to store validator set and trusted appHash.

Native Token

BNB will run on BNB Smart Chain in the same way as ETH runs on Ethereum so that it remains as native token for BSC. This means, BNB will be used to:

  1. pay gas to deploy or invoke Smart Contract on BSC
  2. perform cross-chain operations, such as transfer token assets across BNB Smart Chain and BNB Beacon Chain.

Building the source

Many of the below are the same as or similar to go-ethereum.

For prerequisites and detailed build instructions please read the Installation Instructions.

Building geth requires both a Go (version 1.21 or later) and a C compiler (GCC 5 or higher). You can install them using your favourite package manager. Once the dependencies are installed, run

make geth

or, to build the full suite of utilities:

make all

If you get such error when running the node with self built binary:

Caught SIGILL in blst_cgo_init, consult <blst>/bindinds/go/README.md.

please try to add the following environment variables and build again:

export CGO_CFLAGS="-O -D__BLST_PORTABLE__" 
export CGO_CFLAGS_ALLOW="-O -D__BLST_PORTABLE__"

Executables

The bsc project comes with several wrappers/executables found in the cmd directory.

Command Description
geth Main BNB Smart Chain client binary. It is the entry point into the BSC network (main-, test- or private net), capable of running as a full node (default), archive node (retaining all historical state) or a light node (retrieving data live). It has the same and more RPC and other interface as go-ethereum and can be used by other processes as a gateway into the BSC network via JSON RPC endpoints exposed on top of HTTP, WebSocket and/or IPC transports. geth --help and the CLI page for command line options.
clef Stand-alone signing tool, which can be used as a backend signer for geth.
devp2p Utilities to interact with nodes on the networking layer, without running a full blockchain.
abigen Source code generator to convert Ethereum contract definitions into easy to use, compile-time type-safe Go packages. It operates on plain Ethereum contract ABIs with expanded functionality if the contract bytecode is also available. However, it also accepts Solidity source files, making development much more streamlined. Please see our Native DApps page for details.
bootnode Stripped down version of our Ethereum client implementation that only takes part in the network node discovery protocol, but does not run any of the higher level application protocols. It can be used as a lightweight bootstrap node to aid in finding peers in private networks.
evm Developer utility version of the EVM (Ethereum Virtual Machine) that is capable of running bytecode snippets within a configurable environment and execution mode. Its purpose is to allow isolated, fine-grained debugging of EVM opcodes (e.g. evm --code 60ff60ff --debug run).
rlpdump Developer utility tool to convert binary RLP (Recursive Length Prefix) dumps (data encoding used by the Ethereum protocol both network as well as consensus wise) to user-friendlier hierarchical representation (e.g. rlpdump --hex CE0183FFFFFFC4C304050583616263).

Running geth

Going through all the possible command line flags is out of scope here (please consult our CLI Wiki page), but we've enumerated a few common parameter combos to get you up to speed quickly on how you can run your own geth instance.

Hardware Requirements

The hardware must meet certain requirements to run a full node on mainnet:

  • VPS running recent versions of Mac OS X, Linux, or Windows.
  • IMPORTANT 3 TB(Dec 2023) of free disk space, solid-state drive(SSD), gp3, 8k IOPS, 500 MB/S throughput, read latency <1ms. (if node is started with snap sync, it will need NVMe SSD)
  • 16 cores of CPU and 64 GB of memory (RAM)
  • Suggest m5zn.6xlarge or r7iz.4xlarge instance type on AWS, c2-standard-16 on Google cloud.
  • A broadband Internet connection with upload/download speeds of 5 MB/S

The requirement for testnet:

  • VPS running recent versions of Mac OS X, Linux, or Windows.
  • 500G of storage for testnet.
  • 4 cores of CPU and 16 gigabytes of memory (RAM).

Steps to Run a Fullnode

1. Download the pre-build binaries

# Linux
wget $(curl -s https://api.github.com/repos/bnb-chain/bsc/releases/latest |grep browser_ |grep geth_linux |cut -d\" -f4)
mv geth_linux geth
chmod -v u+x geth

# MacOS
wget $(curl -s https://api.github.com/repos/bnb-chain/bsc/releases/latest |grep browser_ |grep geth_mac |cut -d\" -f4)
mv geth_macos geth
chmod -v u+x geth

2. Download the config files

//== mainnet
wget $(curl -s https://api.github.com/repos/bnb-chain/bsc/releases/latest |grep browser_ |grep mainnet |cut -d\" -f4)
unzip mainnet.zip

//== testnet
wget $(curl -s https://api.github.com/repos/bnb-chain/bsc/releases/latest |grep browser_ |grep testnet |cut -d\" -f4)
unzip testnet.zip

3. Download snapshot

Download latest chaindata snapshot from here. Follow the guide to structure your files.

Note: If you encounter difficulties downloading the chaindata snapshot and prefer to synchronize from the genesis block on the Chapel testnet, remember to include the additional flag --chapel when initially launching Geth.

4. Start a full node

./geth --config ./config.toml --datadir ./node  --cache 8000 --rpc.allow-unprotected-txs --history.transactions 0

## It is recommend to run fullnode with `--tries-verify-mode none` if you want high performance and care little about state consistency
## It will run with Hash-Base Storage Scheme by default
./geth --config ./config.toml --datadir ./node  --cache 8000 --rpc.allow-unprotected-txs --history.transactions 0 --tries-verify-mode none

## It runs fullnode with Path-Base Storage Scheme. 
## It will enable inline state prune, keeping the latest 90000 blocks' history state by default.
./geth --config ./config.toml --datadir ./node  --cache 8000 --rpc.allow-unprotected-txs --history.transactions 0 --tries-verify-mode none --state.scheme path

5. Monitor node status

Monitor the log from ./node/bsc.log by default. When the node has started syncing, should be able to see the following output:

t=2022-09-08T13:00:27+0000 lvl=info msg="Imported new chain segment"             blocks=1    txs=177   mgas=17.317   elapsed=31.131ms    mgasps=556.259  number=21,153,429 hash=0x42e6b54ba7106387f0650defc62c9ace3160b427702dab7bd1c5abb83a32d8db dirty="0.00 B"
t=2022-09-08T13:00:29+0000 lvl=info msg="Imported new chain segment"             blocks=1    txs=251   mgas=39.638   elapsed=68.827ms    mgasps=575.900  number=21,153,430 hash=0xa3397b273b31b013e43487689782f20c03f47525b4cd4107c1715af45a88796e dirty="0.00 B"
t=2022-09-08T13:00:33+0000 lvl=info msg="Imported new chain segment"             blocks=1    txs=197   mgas=19.364   elapsed=34.663ms    mgasps=558.632  number=21,153,431 hash=0x0c7872b698f28cb5c36a8a3e1e315b1d31bda6109b15467a9735a12380e2ad14 dirty="0.00 B"

6. Interact with fullnode

Start up geth's built-in interactive JavaScript console, (via the trailing console subcommand) through which you can interact using web3 methods (note: the web3 version bundled within geth is very old, and not up to date with official docs), as well as geth's own management APIs. This tool is optional and if you leave it out you can always attach to an already running geth instance with geth attach.

7. More

More details about running a node and becoming a validator

Note: Although some internal protective measures prevent transactions from crossing over between the main network and test network, you should always use separate accounts for play and real money. Unless you manually move accounts, geth will by default correctly separate the two networks and will not make any accounts available between them.

Configuration

As an alternative to passing the numerous flags to the geth binary, you can also pass a configuration file via:

$ geth --config /path/to/your_config.toml

To get an idea of how the file should look like you can use the dumpconfig subcommand to export your existing configuration:

$ geth --your-favourite-flags dumpconfig

Programmatically interfacing geth nodes

As a developer, sooner rather than later you'll want to start interacting with geth and the BSC network via your own programs and not manually through the console. To aid this, geth has built-in support for a JSON-RPC based APIs (standard APIs and geth specific APIs). These can be exposed via HTTP, WebSockets and IPC (UNIX sockets on UNIX based platforms, and named pipes on Windows).

The IPC interface is enabled by default and exposes all the APIs supported by geth, whereas the HTTP and WS interfaces need to manually be enabled and only expose a subset of APIs due to security reasons. These can be turned on/off and configured as you'd expect.

HTTP based JSON-RPC API options:

  • --http Enable the HTTP-RPC server
  • --http.addr HTTP-RPC server listening interface (default: localhost)
  • --http.port HTTP-RPC server listening port (default: 8545)
  • --http.api API's offered over the HTTP-RPC interface (default: eth,net,web3)
  • --http.corsdomain Comma separated list of domains from which to accept cross origin requests (browser enforced)
  • --ws Enable the WS-RPC server
  • --ws.addr WS-RPC server listening interface (default: localhost)
  • --ws.port WS-RPC server listening port (default: 8546)
  • --ws.api API's offered over the WS-RPC interface (default: eth,net,web3)
  • --ws.origins Origins from which to accept WebSocket requests
  • --ipcdisable Disable the IPC-RPC server
  • --ipcapi API's offered over the IPC-RPC interface (default: admin,debug,eth,miner,net,personal,txpool,web3)
  • --ipcpath Filename for IPC socket/pipe within the datadir (explicit paths escape it)

You'll need to use your own programming environments' capabilities (libraries, tools, etc) to connect via HTTP, WS or IPC to a geth node configured with the above flags and you'll need to speak JSON-RPC on all transports. You can reuse the same connection for multiple requests!

Note: Please understand the security implications of opening up an HTTP/WS based transport before doing so! Hackers on the internet are actively trying to subvert BSC nodes with exposed APIs! Further, all browser tabs can access locally running web servers, so malicious web pages could try to subvert locally available APIs!

Operating a private network

  • BSC-Deploy: deploy tool for setting up both BNB Beacon Chain, BNB Smart Chain and the cross chain infrastructure between them.
  • BSC-Docker: deploy tool for setting up local BSC cluster in container.

Running a bootnode

Bootnodes are super-lightweight nodes that are not behind a NAT and are running just discovery protocol. When you start up a node it should log your enode, which is a public identifier that others can use to connect to your node.

First the bootnode requires a key, which can be created with the following command, which will save a key to boot.key:

bootnode -genkey boot.key

This key can then be used to generate a bootnode as follows:

bootnode -nodekey boot.key -addr :30311 -network bsc

The choice of port passed to -addr is arbitrary. The bootnode command returns the following logs to the terminal, confirming that it is running:

enode://3063d1c9e1b824cfbb7c7b6abafa34faec6bb4e7e06941d218d760acdd7963b274278c5c3e63914bd6d1b58504c59ec5522c56f883baceb8538674b92da48a96@127.0.0.1:0?discport=30311
Note: you're using cmd/bootnode, a developer tool.
We recommend using a regular node as bootstrap node for production deployments.
INFO [08-21|11:11:30.687] New local node record                    seq=1,692,616,290,684 id=2c9af1742f8f85ce ip=<nil> udp=0 tcp=0
INFO [08-21|12:11:30.753] New local node record                    seq=1,692,616,290,685 id=2c9af1742f8f85ce ip=54.217.128.118 udp=30311 tcp=0
INFO [09-01|02:46:26.234] New local node record                    seq=1,692,616,290,686 id=2c9af1742f8f85ce ip=34.250.32.100  udp=30311 tcp=0

Contribution

Thank you for considering helping out with the source code! We welcome contributions from anyone on the internet, and are grateful for even the smallest of fixes!

If you'd like to contribute to bsc, please fork, fix, commit and send a pull request for the maintainers to review and merge into the main code base. If you wish to submit more complex changes though, please check up with the core devs first on our discord channel to ensure those changes are in line with the general philosophy of the project and/or get some early feedback which can make both your efforts much lighter as well as our review and merge procedures quick and simple.

Please make sure your contributions adhere to our coding guidelines:

  • Code must adhere to the official Go formatting guidelines (i.e. uses gofmt).
  • Code must be documented adhering to the official Go commentary guidelines.
  • Pull requests need to be based on and opened against the master branch.
  • Commit messages should be prefixed with the package(s) they modify.
    • E.g. "eth, rpc: make trace configs optional"

Please see the Developers' Guide for more details on configuring your environment, managing project dependencies, and testing procedures.

License

The bsc library (i.e. all code outside of the cmd directory) is licensed under the GNU Lesser General Public License v3.0, also included in our repository in the COPYING.LESSER file.

The bsc binaries (i.e. all code inside of the cmd directory) is licensed under the GNU General Public License v3.0, also included in our repository in the COPYING file.

bsc's People

Contributors

aaronbuchwald avatar acud avatar arachnid avatar brilliant-lx avatar buddh0 avatar cjentzsch avatar debris avatar fjl avatar gavofyork avatar gballet avatar gluk256 avatar holiman avatar j75689 avatar janos avatar jsvisa avatar karalabe avatar lightclient avatar mariusvanderwijden avatar nathanbsc avatar nonsense avatar obscuren avatar renaynay avatar rjl493456442 avatar s1na avatar tgerring avatar ucwong avatar unclezoro avatar zelig avatar zsfelfoldi avatar zzzckck avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

bsc's Issues

[DOCS] mainnet.zip is a redirect HTML

I got this error by following the docs here.

mainnet.zip contents after wget --no-check-certificate $(curl -s https://api.github.com/repos/binance-chain/bsc/releases/latest |grep browser_ |grep mainnet |cut -d\" -f4):

<html><body>You are being <a href="https://github-releases.githubusercontent.com/265775217/74fc8080-67a2-11eb-8a62-6983aba4707b?X-Amz-Algorithm=AWS4-HMAC-SHA256&amp;X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20210205%2Fus-east-1%2Fs3%2Faws4_request&amp;X-Amz-Date=20210205T041227Z&amp;X-Amz-Expires=300&amp;X-Amz-Signature=df5041a15827ae96a54927edae79526531270a827f5c523dbd935ee6b821dcf5&amp;X-Amz-SignedHeaders=host&amp;actor_id=0&amp;key_id=0&amp;repo_id=265775217&amp;response-content-disposition=attachment%3B%20filename%3Dmainnet.zip&amp;response-content-type=application%2Foctet-stream">redirected</a>.</body></html>

BSC Chain not Starting - Freezes before anything happens

System information

Geth version: 1.06
OS & Version: Ubuntu 18.04

Expected behaviour

As per documentation:

https://docs.binance.org/smart-chain/developer/fullnode.html

./geth_linux --config ./config.toml --datadir ./node --pprofaddr 0.0.0.0 --metrics --pprof

Starting the node should start without any problems

Actual behaviour

Node does not start. Get stucks at "Starting Geth on Ethereum mainnet and then an error "Smartcard socket not found". After that nothing happens.

Steps to reproduce the behaviour

Follow instructions exactly as per documentation:

https://docs.binance.org/smart-chain/developer/fullnode.html

"geth" is replaced with "./geth_linux" otherwise it does not work

root@ugogvirginia2:~/bsc# ./geth_linux --config ./config.toml --datadir ./node --pprofaddr 0.0.0.0 --metrics --pprof
INFO [02-21|01:30:55.524] Starting pprof server addr=http://0.0.0.0:6060/debug/pprof
INFO [02-21|01:30:55.524] Starting Geth on Ethereum mainnet...
INFO [02-21|01:30:55.524] Bumping default cache on mainnet provided=1024 updated=4096
INFO [02-21|01:30:55.524] Enabling metrics collection
INFO [02-21|01:30:55.526] Maximum peer count ETH=200 LES=0 total=200
INFO [02-21|01:30:55.526] Smartcard socket not found, disabling err="stat /run/pcscd/pcscd.comm: no such file or directory"

Is there any interest in a ethstats-like system to track node performance?

Hi there,

Since this is more or less of an interest check I hope you forgive m for eschewing the template.

Out of frustration as available monitoring tools for comparison purposes to debug and diagnose issues I've forked the aleth.io set up clients to adapt it to BSC. Of course. Of course, 1 node (mine) isn't a great sample size. Is there a need in the community for this? On the eth side I've found great value for this but I literally cannot tell what the BSC lanscape is truly like since it's, frankly, not entirely transparent and albeit being a Chinese national who has been taught (brainwashed?) into thinking that the process doesn't matter, it does, and this is transparency and process at work. (And don't worry, I'm in the state with no plans to leave, have a law degree, and am thoroughly disgusted at what they do, particularly coming from a place of privilege over there that taught me that decentralized self-deployable small clusters of monitoring beats a.SAAS solution for privacy concerns.

But thre's no point in working on this if nobody care so this is an interest check really. There are bugs to be worked out and I'm admittedly much more a backend guy than a frontend guy. This is really a quick strawpoll to see what sentiments are out there. And my apologies in advance to the Chinese nationals still in China seeing this, but I don't think any of this is consider �敏感。 Comments in Chinese or English are both cool, thanks.

Problem with peers

Hi, i reproduced steps described at
https://docs.binance.org/smart-chain/developer/fullnode.html
and i have trouble trying to run full sync

t=2020-10-28T10:55:13+0100 lvl=info msg="Looking for peers" peercount=0 tried=110 static=8 t=2020-10-28T10:55:23+0100 lvl=info msg="Looking for peers" peercount=1 tried=63 static=8 t=2020-10-28T10:55:33+0100 lvl=info msg="Looking for peers" peercount=1 tried=159 static=8 t=2020-10-28T10:55:43+0100 lvl=info msg="Looking for peers" peercount=1 tried=90 static=8 t=2020-10-28T10:55:46+0100 lvl=info msg="Updated mining threads" threads=48 t=2020-10-28T10:55:46+0100 lvl=info msg="Updated mining threads" threads=8 t=2020-10-28T10:55:47+0100 lvl=info msg="Updated mining threads" threads=4 t=2020-10-28T10:55:47+0100 lvl=info msg="Updated mining threads" threads=2 t=2020-10-28T10:55:47+0100 lvl=info msg="Updated mining threads" threads=1

that is what i get last few days. Any solutions?

snapshot place

Hello, guys!
Where I can download actual snapshot for launch full node?

Time out error during Deployment in Binance Smart Chain

I got an error while deploying contract in Binance Smart Chain

plz help me if anybody knows it

error message looks like this

   Deploying 'WhitePaperInterestRateModel'
   ---------------------------------------
   > transaction hash:    0xa24026a456f81238422b262cc49bcb9ee494997b70ea8d41c092710f98b27d50
   ⠧ Blocks: 23           Seconds: 69Error [ERR_UNHANDLED_ERROR]: Unhandled error. ({
  code: -32603,
  message: 'ETIMEDOUT',
  data: { originalError: { code: 'ETIMEDOUT', connect: true } },
  stack: 'Error: ETIMEDOUT\n' +
    '    at Timeout.<anonymous> (/Users/hyunki/Desktop/compound/compound_test/truffle-compound-bsc/venus-protocol/node_modules/request/request.js:848:19)\n' +
    '    at listOnTimeout (node:internal/timers:556:17)\n' +
    '    at processTimers (node:internal/timers:499:7)'
})
    at new NodeError (node:internal/errors:329:5)
    at Web3ProviderEngine.emit (node:events:368:17)
    at /Users/hyunki/Desktop/compound/compound_test/truffle-compound-bsc/venus-protocol/node_modules/@trufflesuite/web3-provider-engine/index.js:57:14
    at afterRequest (/Users/hyunki/Desktop/compound/compound_test/truffle-compound-bsc/venus-protocol/node_modules/@trufflesuite/web3-provider-engine/index.js:151:21)
    at /Users/hyunki/Desktop/compound/compound_test/truffle-compound-bsc/venus-protocol/node_modules/@trufflesuite/web3-provider-engine/index.js:176:21
    at /Users/hyunki/Desktop/compound/compound_test/truffle-compound-bsc/venus-protocol/node_modules/@trufflesuite/web3-provider-engine/index.js:238:9
    at /Users/hyunki/Desktop/compound/compound_test/truffle-compound-bsc/venus-protocol/node_modules/async/internal/once.js:12:16
    at replenish (/Users/hyunki/Desktop/compound/compound_test/truffle-compound-bsc/venus-protocol/node_modules/async/internal/eachOfLimit.js:61:25)
    at /Users/hyunki/Desktop/compound/compound_test/truffle-compound-bsc/venus-protocol/node_modules/async/internal/eachOfLimit.js:71:9
    at eachLimit (/Users/hyunki/Desktop/compound/compound_test/truffle-compound-bsc/venus-protocol/node_modules/async/eachLimit.js:43:36)
    at /Users/hyunki/Desktop/compound/compound_test/truffle-compound-bsc/venus-protocol/node_modules/async/internal/doLimit.js:9:16
    at end (/Users/hyunki/Desktop/compound/compound_test/truffle-compound-bsc/venus-protocol/node_modules/@trufflesuite/web3-provider-engine/index.js:217:5)
    at Request._callback (/Users/hyunki/Desktop/compound/compound_test/truffle-compound-bsc/venus-protocol/node_modules/@trufflesuite/web3-provider-engine/subproviders/rpc.js:36:21)
    at self.callback (/Users/hyunki/Desktop/compound/compound_test/truffle-compound-bsc/venus-protocol/node_modules/request/request.js:185:22)
    at Request.emit (node:events:379:20)
    at Timeout.<anonymous> (/Users/hyunki/Desktop/compound/compound_test/truffle-compound-bsc/venus-protocol/node_modules/request/request.js:851:16)
    at listOnTimeout (node:internal/timers:556:17)
    at processTimers (node:internal/timers:499:7)

truffle-config.js

    testnet: {
      provider: () => new HDWalletProvider(mnemonic, `https://data-seed-prebsc-1-s2.binance.org:8545/`),
      network_id: 97,
      gas: 20000000,        // Ropsten has a lower block limit than mainnet
      gasPrice: 20000000000,  // 20 gwei (in wei) (default: 100 gwei)
      confirmations: 1,
      timeoutBlocks: 50000,
      skipDryRun: true
    },

Subscribing to pending transactions

Hi,
I'm trying to subscribe for pending transactions in Binance-Chain but getting method not found response.
Is there a way to make it work? In GitHub page I see there is an implementation of that method but not working.

REQUEST:
{"id":"31ee4287-2e45-433b-9ce6-610c1f4cca96","jsonrpc":"2.0","method":"eth_subscribe","params":["newPendingTransactions"]}

RESPONSE:

{
  "jsonrpc": "2.0",
  "id": "31ee4287-2e45-433b-9ce6-610c1f4cca96",
  "error": {
    "code": -32601,
    "message": "Method not found"
  }
}

IMPLEMENTATION:
https://github.com/search?q=org%3Abinance-chain+newPendingTransactions&type=code

Can't sync because of extra-data too long.

WARN [02-18|22:16:37.900] The flag --pprofaddr is deprecated and will be removed in the future, please use --pprof.addr
INFO [02-18|22:16:37.900] Starting pprof server addr=http://0.0.0.0:6060/debug/pprof
INFO [02-18|22:16:37.900] Starting Geth on Ethereum mainnet...
INFO [02-18|22:16:37.900] Bumping default cache on mainnet provided=1024 updated=4096
WARN [02-18|22:16:37.900] Sanitizing cache to Go's GC limits provided=4096 updated=2653
INFO [02-18|22:16:37.900] Enabling metrics collection
WARN [02-18|22:16:37.903] Deprecated whisper config detected. Whisper has been moved to github.com/ethereum/whisper
INFO [02-18|22:16:37.903] Maximum peer count ETH=200 LES=0 total=200
INFO [02-18|22:16:37.903] Smartcard socket not found, disabling err="stat /run/pcscd/pcscd.comm: no such file or directory"
INFO [02-18|22:16:37.904] Set global gas cap cap=25000000
INFO [02-18|22:16:37.904] Allocated trie memory caches clean=662.00MiB dirty=663.00MiB
INFO [02-18|22:16:37.904] Allocated cache and file handles database=/media/nodessd/bsc/node/geth/chaindata cache=1.29GiB handles=524288
INFO [02-18|22:16:37.972] Opened ancient database database=/media/nodessd/bsc/node/geth/chaindata/ancient
INFO [02-18|22:16:37.973] Initialised chain configuration config="{ChainID: 56 Homestead: 0 DAO: DAOSupport: false EIP150: 0 EIP155: 0 EIP158: 0 Byzantium: 0 Constantinople: 0 Petersburg: 0 Istanbul: 0, Muir Glacier: 0, YOLO v2: , Engine: unknown}"
INFO [02-18|22:16:37.973] Disk storage enabled for ethash caches dir=/media/nodessd/bsc/node/geth/ethash count=3
INFO [02-18|22:16:37.973] Disk storage enabled for ethash DAGs dir=/root/.ethash count=2
INFO [02-18|22:16:37.973] Initialising Ethereum protocol versions="[65 64 63]" network=56 dbversion=8
INFO [02-18|22:16:37.975] Loaded most recent local header number=0 hash="0d2184…d57b5b" td=1 age=10mo4d8h
INFO [02-18|22:16:37.975] Loaded most recent local full block number=0 hash="0d2184…d57b5b" td=1 age=10mo4d8h
INFO [02-18|22:16:37.975] Loaded most recent local fast block number=0 hash="0d2184…d57b5b" td=1 age=10mo4d8h
WARN [02-18|22:16:37.976] Sanitizing invalid gasprice oracle price cap provided= updated=500000000000
INFO [02-18|22:16:37.976] Starting peer-to-peer node instance=Geth/v1.9.25-stable-e7872729/linux-amd64/go1.15.6
INFO [02-18|22:16:38.029] New local node record seq=3 id=24d2f5160157cfdf ip=127.0.0.1 udp=30311 tcp=30311
INFO [02-18|22:16:38.031] Started P2P networking self=enode://d38be26472e2da01d1a3ba586688af1bc9919eddca427b9dcde2044f4dff226ed901d6ddadb14e46dcca6be82d70bc65dcce9bdea75c19c324b91e3d0fe9a4e1@127.0.0.1:30311
INFO [02-18|22:16:38.031] IPC endpoint opened url=/media/nodessd/bsc/node/geth.ipc
ERROR[02-18|22:16:38.031] Unavailable modules in HTTP API list unavailable=[parlia] available="[admin debug web3 eth txpool personal ethash miner net]"
INFO [02-18|22:16:38.032] HTTP server started endpoint=[::]:8545 cors= vhosts=*
WARN [02-18|22:16:38.090] Served eth_coinbase reqid=3 t="26.613µs" err="etherbase must be explicitly specified"
Welcome to the Geth JavaScript console!

instance: Geth/v1.9.25-stable-e7872729/linux-amd64/go1.15.6
at block: 0 (Mon Apr 20 2020 13:46:54 GMT+0000 (UTC))
datadir: /media/nodessd/bsc/node
modules: admin:1.0 debug:1.0 eth:1.0 ethash:1.0 miner:1.0 net:1.0 personal:1.0 rpc:1.0 txpool:1.0 web3:1.0

To exit, press ctrl-d

INFO [02-18|22:16:40.485] New local node record seq=4 id=24d2f5160157cfdf ip=167.71.35.59 udp=30311 tcp=30311
INFO [02-18|22:16:48.032] Block synchronisation started
INFO [02-18|22:16:48.045] Looking for peers peercount=3 tried=138 static=8
INFO [02-18|22:16:50.908] Downloader queue stats receiptTasks=0 blockTasks=22528 itemSize=642.27B throttle=8192
ERROR[02-18|22:16:50.925]
########## BAD BLOCK #########
Chain config: {ChainID: 56 Homestead: 0 DAO: DAOSupport: false EIP150: 0 EIP155: 0 EIP158: 0 Byzantium: 0 Constantinople: 0 Petersburg: 0 Istanbul: 0, Muir Glacier: 0, YOLO v2: , Engine: unknown}

Number: 1
Hash: 0x04055304e432294a65ff31069c4d3092ff8b58f009cdb50eba5351e0332ad0f6

Error: extra-data too long: 97 > 32
##############################

WARN [02-18|22:16:50.925] Synchronisation failed, dropping peer peer=cd64f7a331e4ac1a err="retrieved hash chain is invalid: extra-data too long: 97 > 32"
INFO [02-18|22:16:58.240] Looking for peers peercount=2 tried=64 static=8
ERROR[02-18|22:17:04.256]
########## BAD BLOCK #########
Chain config: {ChainID: 56 Homestead: 0 DAO: DAOSupport: false EIP150: 0 EIP155: 0 EIP158: 0 Byzantium: 0 Constantinople: 0 Petersburg: 0 Istanbul: 0, Muir Glacier: 0, YOLO v2: , Engine: unknown}

Number: 1
Hash: 0x04055304e432294a65ff31069c4d3092ff8b58f009cdb50eba5351e0332ad0f6

Error: extra-data too long: 97 > 32

Purging old data from geth/free up disk space, purge specific data

Hello BSC devs, I have been running a BSC node from a few weeks ago, and I have noticed that the disk usage is rapidly increasing. Upon initial sync, geth only used up ~50gb of disk space. Today it is using over 125gb of disk space. This could be a problem if it continues expanding at this rate. Is there a way to limit this usage or purge off unneeded data?

I've also noticed lately there has been loads of CHI Gastokens being minted at ~1 gwei gas price and filling up a lot of blocks. Is there a way to make my node purge all the data at a specific contract to free up space?

Readme port / sync clarification.

Readme states this.

Note: The default p2p port is 30311 and the RPC port is 8575 which is different from Ethereum.

However, i'm not too sure if this is specific for testnet?

  • (testnet config.toml states 30311 and 8575)
  • (mainnet config.toml states 30311 and 8545)

Writing this in issues as it needs clarity. (Though there is a header testnet right above the note, port 30311 reflects on mainnet too)


Additionally under https://docs.binance.org/smart-chain/developer/fullnode.html

Settings
Sync Mode
Fast Sync
The default sync mode. Synchronizes a full node doing a fast synchronization by downloading the entire state database, requesting the headers first, and filling in block bodies and receipts afterward. Once the fast sync reaches the best block of the Binance Smart Chain network, it switches to full sync mode.

The default mode in the toml is actually full sync. Not sure if its intended too.

Time to process

Using geth on a local node connected to mainnet, when I call a smart contract, no matter the gas price, it is not validated until 2-3 blocks laters.

Should this work this? I understand is a relay problem or something like that. Same problem happens if I connect via RPC to https://bsc-dataseed.binance.org/ and send the transaction there.

[New Feature Request] Add flag for binance network

Hi team,

If possible I would like to have a network flag for binance smart chain testnet network like geth --bsctestnet (like go-ethereum test network flags: geth --goerli or geth --rinkeby). User no need to download config.toml and genesis.json files to run. We just set up it before and check flag to switch network. It is easier to run a node on docker container.

Please comment on your thoughts. Thanks in advance!

validator failed to sync a block produced by itself

t=2020-06-01T12:27:21+0000 lvl=info msg="distribute to validator contract" block hash=0x2064d21afbcbf513884b9cd0f5d9338f5f65ea72c69531d92f0ecc0b511e68ee amount=9331250625000000
t=2020-06-01T12:27:21+0000 lvl=eror msg="\n########## BAD BLOCK #########\nChain config: {ChainID: 96 Homestead: 0 DAO: DAOSupport: false EIP150: 0 EIP155: 0 EIP158: 0 Byzantium: 0 Constantinople: 0 Petersburg: 0 Istanbul: 0, Muir Glacier: 0, Engine: parlia}\n\nNumber: 162402\nHash: 0x2064d21afbcbf513884b9cd0f5d9338f5f65ea72c69531d92f0ecc0b511e68ee\n\t 0: cumulative: 167740 gas: 167740 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0xc9328ad3d8ddb9ddea1262a4cb4030a1bc66cb0b583bbd048ed70b09dd2b2eaa logs: [0xc02469a840] bloom: 08000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000 state: \n\t 1: cumulative: 406611 gas: 238871 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x8f97b5fe82b6444fca61154981a64e609a446524407df79e31e97b2fd3550a00 logs: [0xc02469a8f0] bloom: 00000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000010000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000100000000000000000000000000 state: \n\t 2: cumulative: 450594 gas: 43983 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x2334f74049ffc258dd523f49164a4f8cff8faa8c4c3f90e52b32aaaacf77427e logs: [0xc02469a9a0] bloom: 00000000000000000000000000000000000000000000000000400000000000000000000008001000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040000000020010000000000000000000000000000000000001000000000008000008000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000004000000000000000000000000000000000000 state: \n\t 3: cumulative: 502438 gas: 51844 contract: 0x0000000000000000000000000000000000000000 status: 0 tx: 0xfa8531fcd266d9f9d334dc2cdf5e015f6846ea3cd4aa17433a8f7e8fc97f666d logs: [] bloom: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 state: \n\t 4: cumulative: 552963 gas: 50525 contract: 0x0000000000000000000000000000000000000000 status: 0 tx: 0x81dbdb2ca9963f1cd557817c36046a539a067afc36e36901bb71629336e10496 logs: [] bloom: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 state: \n\t 5: cumulative: 554479 gas: 1516 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0xc3c27f17674e1027ccb60e6a93d1693e33de623f00afd3bc40487c35482a2f30 logs: [0xc02469abb0] bloom: 00000000000000000000004000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000008000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000 state: \n\t 6: cumulative: 592227 gas: 37748 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x6a7ae90775f24bf2efc1b37a0078dde67fb502790246b1ba21bff022f09a2db7 logs: [0xc02469adc0] bloom: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000002010000000000000000000000000000000000020000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000 state: \n\n\nError: the length of systemTxs do not match\n##############################\n"

sync error

Hi, The configuration is 1.03, but the running error is as follows:

t=2020-11-10T14:19:28+0800 lvl=warn msg="Synchronisation failed, dropping peer" peer=8c391a82c7f6be45 err="retrieved hash chain is invalid"

Sync issue with possible fork

Hello, getting this problem while running geth.
I ran all of the commands required and applied the genesis.
Is this a known issue?

image

Can't get data from old block number

Hi there,

I'm trying to get the data in the old block number but has an issue.
This is my codes:
const pairAddress = '0xE2D1B285d83efb935134F644d00FB7c943e84B5B'
const web3 = new Web3('https://bsc-dataseed.binance.org/')
const contract = new web3.eth.Contract(ABI, pairAddress)
console.log(contract);
const reserves = await contract.methods.getReserves().call({}, '586960')
console.log(reserves);

Error: Returned error: missing trie node dd8f963b36947dc129b720bf69ff248b610931dfe51ce863507014b84e940b11 (path )

Sure the ABI includes the method getReserves().

Please check and tell me how to fix it.
Thanks a lot.

Fail to connect BSC testnet node

when I try to connect https://data-seed-prebsc-1-s1.binance.org:8545 by Go, the following error happens
" Post "https://18.182.214.188:8545": x509: cannot validate certificate for 18.182.214.188 because it doesn't contain any IP SANs"

but when I use curl to connect the same node, it works
curl -X POST -H 'content-type:application/json' --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' https://data-seed-prebsc-1-s1.binance.org:8545 {"jsonrpc":"2.0","id":1,"result":"0x65f8f5"}

What should I do to fix this problem?

A potential dead lock of BSC client which result in block syncing halt

System information

Geth version: 1.9.13
OS & Version: Linux

Expected behaviour

Client sync block normal

Actual behaviour

Client failed to sync block.

Steps to reproduce the behaviour

First change the code to make it easier to reproduce:

func (sub *Subscription) Unsubscribe() {
	sub.unsubOnce.Do(func() {
	uninstallLoop:
		for {
			select {
			case sub.es.uninstall <- sub.f:
                                // newly added line
				time.Sleep(3 * time.Second)
				break uninstallLoop
                        case ...
			}
		}
		<-sub.Err()
	})
}

Do request for multi times:

curl -X POST --data '{"jsonrpc":"2.0","method":"eth_newPendingTransactionFilter","params":[],"id":73}'

Backtrace

Here is the pprof of go routine:
goroutine.txt

  1. The lock here is not released:
    image

According to the pprof, the code is blocked on /server/bsc/event/feed.go:170.

1 @ 0x447b10 0x4573db 0x457eda 0x4b5630 0x6e90a4 0xcf0a5f 0xcf3800 0xcf2544 0xf68a60 0xf3aba5 0x475d61
#       0x457ed9        reflect.rselect+0x389                                                           /usr/lib/golang/src/runtime/select.go:542
#       0x4b562f        reflect.Select+0x16f                                                            /usr/lib/golang/src/reflect/value.go:2229
#       0x6e90a3        github.com/ethereum/go-ethereum/event.(*Feed).Send+0x593                        /server/bsc/event/feed.go:170
#       0xcf0a5e        github.com/ethereum/go-ethereum/core.(*BlockChain).writeBlockWithState+0xe2e    /server/bsc/core/blockchain.go:1470
#       0xcf37ff        github.com/ethereum/go-ethereum/core.(*BlockChain).insertChain+0x118f           /server/bsc/core/blockchain.go:1757
  1. The subscription may consume the channel so that block above select.
    As we checked, new NewPendingTransactionFilter calls are pending on fetching filtersMu lock.
#	0x4580a6	sync.runtime_SemacquireMutex+0x46									/usr/lib/golang/src/runtime/sema.go:71
#	0x49408b	sync.(*Mutex).lockSlow+0xfb										/usr/lib/golang/src/sync/mutex.go:138
#	0xf13256	sync.(*Mutex).Lock+0x296										/usr/lib/golang/src/sync/mutex.go:81
#	0xf130e1	github.com/ethereum/go-ethereum/eth/filters.(*PublicFilterAPI).NewPendingTransactionFilter.func1+0x121	/server/bsc/eth/filters/api.go:119
  1. The routine that holds filtersMu lock is timeoutLoop:
#	0xf142b3	github.com/ethereum/go-ethereum/eth/filters.(*Subscription).Unsubscribe.func1+0xf3	/server/bsc/eth/filters/filter_system.go:164
#	0x4944d2	sync.(*Once).doSlow+0xe2								/usr/lib/golang/src/sync/once.go:66
#	0xf0f704	sync.(*Once).Do+0x64									/usr/lib/golang/src/sync/once.go:57
#	0xf0f6bd	github.com/ethereum/go-ethereum/eth/filters.(*Subscription).Unsubscribe+0x1d		/server/bsc/eth/filters/filter_system.go:157
#	0xf09d47	github.com/ethereum/go-ethereum/eth/filters.(*PublicFilterAPI).timeoutLoop+0xf7		/server/bsc/eth/filters/api.go:88

The code is:

func (sub *Subscription) Unsubscribe() {
	sub.unsubOnce.Do(func() {
	uninstallLoop:
		for {
			// write uninstall request and consume logs/hashes. This prevents
			// the eventLoop broadcast method to deadlock when writing to the
			// filter event channel while the subscription loop is waiting for
			// this method to return (and thus not reading these events).
			select {
			case sub.es.uninstall <- sub.f:
				break uninstallLoop
			case <-sub.f.logs:
			case <-sub.f.hashes:
			case <-sub.f.headers:
			}
		}

		// wait for filter to be uninstalled in work loop before returning
		// this ensures that the manager won't use the event channel which
		// will probably be closed by the client asap after this method returns.
		<-sub.Err()
	})
}

Obvious it failed to do sub.es.uninstall <- sub.f.

  1. eventLoop is responsible for consuming the sub.es.uninstall channel.
    The routine is busy doing handleTxsEvent:
#	0xf1128b	github.com/ethereum/go-ethereum/eth/filters.(*EventSystem).handleTxsEvent+0x20b	/server/bsc/eth/filters/filter_system.go:350
#	0xf12f90	github.com/ethereum/go-ethereum/eth/filters.(*EventSystem).eventLoop+0xa60	/server/bsc/eth/filters/filter_system.go:461

It will push hashes to f.hashes channel, and now it is blocking by that channel.

func (es *EventSystem) handleTxsEvent(filters filterIndex, ev core.NewTxsEvent) {
	hashes := make([]common.Hash, 0, len(ev.Txs))
	for _, tx := range ev.Txs {
		hashes = append(hashes, tx.Hash())
	}
	for _, f := range filters[PendingTransactionsSubscription] {
		f.hashes <- hashes
	}
}
  1. What happened to f.hashes channel?
    That is because, in the above step 3, the Unsubscribe may not consume all the hashes and break out so that step4 stucked.

The deadlock dependency is:

Routine A:NewPendingTransactionFilter want to lock filtersMu to consume hashes;
Routine B: eventLoop is waiting Routine A to consume hashes so that it can push new hash to channel.
Routine C: Unsubscribe is holding lock filtersMu, but it is waiting for Routine B to consume uninstall channel.

Sync issues above block 5 millions.

This happened to me twice, first time deleted the whole db and had to restart. This time I hope I don't have to do it again.

System information

Geth version: 1.0.6
OS & Version: Linux
Commit hash : (if develop)

I'm using an AWS Instance, 4xlarge, and one thing that might be it, but I'm not seeing anyone reporting issues, is that I'm using an EFS service to store the blockchain, not an EBS.

Expected behaviour

It should sync the node, full, to the head.

Actual behaviour

It keeps failing with sync errors stating invalid blocks or hashes.

Steps to reproduce the behaviour

Create a new full node, and sync it over block 5 millions using EFS.

Backtrace

t=2021-03-03T14:27:37+0000 lvl=eror msg="\n########## BAD BLOCK #########\nChain config: {ChainID: 56 Homestead: 0 DAO: <nil> DAOSupport: false EIP150: 0 EIP155: 0 EIP158: 0 Byzantium: 0 Constantinople: 0 Petersburg: 0 Istanbul: 0, Muir Glacier: 0, Ramanujan: 0, Niels: 0, MirrorSync: 5184000, Engine: parlia}\n\nNumber: 5035669\nHash: 0x7634de8484a730145644fbb141a62486c419c090570be1073becd7013a648d9a\n\t 0: cumulative: 44022 gas: 44022 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0xbbb5dcbb14ff57664385b0744b9d661c8d833e7e33c75d20a436c098c0e4d7a1 logs: [0xc02f315290] bloom: 00000000001000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000010000000200000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000800000000000000000000000000020000000000040000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000 state: \n\t 1: cumulative: 65022 gas: 21000 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x42540384b84c8901c02142b779484a95959fbf26cbbd5c5a9707728223b4d5b0 logs: [] bloom: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 state: \n\t 2: cumulative: 177592 gas: 112570 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x70c705ac85f3195a74e4c580521b81f0159f67101c9d2215a42213e97b2d6e3a logs: [0xc02f315340 0xc02f3153f0 0xc02f3154a0 0xc02f315550 0xc02f315600] bloom: 00200000000000000000000080000000000000000000000000021000004000001000000000000000000000000000000200080000000000000000000000000010000000000000000000000009000000200000000000000000000400008000000040000000000000000000000000000000000000000000000000000010800000000000000000000000000000000000000000040001000000080000004000004020000000000000000000000000010000000000000000000000000000000000000000000002000000000000000000000008000000000000001000000000000080000000000000000000000000000000000000000000000000400000000000200000 state: \n\t 3: cumulative: 366706 gas: 189114 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x2927bd3d353256ab5ed972f88140ffbecc5f8aae7f99ad4cf482e848e04db1c4 logs: [0xc02f3156b0 0xc02f315760 0xc02f315810 0xc02f3158c0 0xc02f315970 0xc02f315a20 0xc02f315ad0 0xc02f315b80] bloom: 00200000000000100000000080020000000000080000000008020000000000000000000000000000000000000000000000000000000001000000000000020000000000200000000100000028000000200800000000400000000400000000000000000000000000000004000000000000040000000000040000010010000000000000000000000000000000000000000000060000000000080080004000004020000000000000000000000800000000000000000000000000000000000000000000000002000000020000000000801000000000000000001000000002000080000000000000000000000000000000000000040000000000000800000000000000 state: \n\t 4: cumulative: 526112 gas: 159406 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x62a57b512e05da5b4fb67139ec6f0b2611fc4e761645cbeeeaa071b77d6655bc logs: [0xc02f315c30 0xc02f315ce0 0xc02f315d90 0xc02f315e40 0xc02f315ef0 0xc030ccc000 0xc030ccc0b0 0xc030ccc160] bloom: 00200000000000120000000080000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000200000000000000000000200000008000000200000400000000000000400002000000000000000000000400100000000000000000000000080000000000010000000000000000000000000001000400000000000040000000000080000004000000000020000000000000000000000000080000000000000000000002000000000000000000006000000020000000000001200000100000000001000100000000080000010000004000000004800000000002000000000000000000000000000000000 state: \n\t 5: cumulative: 570230 gas: 44118 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x445fc42d2825347fafce66f7c30d6d664abda1bf0dae4550b62a52a9ad72029b logs: [0xc030ccc210] bloom: 00004000000000000000000000000000000000000000000000000001000080000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000002000000010000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000002000000000000000020000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000008000000000000000000000000 state: \n\t 6: cumulative: 756014 gas: 185784 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0xdbd527c69fe6c699f66a10adf7e6e7926eff18ec3dcbd901630540af5c4ef449 logs: [0xc030ccc2c0 0xc030ccc370 0xc030ccc420 0xc030ccc4d0 0xc030ccc580 0xc030ccc630] bloom: 00000000000000000000000000000000000000000600002000000000000000000000000000000000000000000000000008000000000400000000000000200000000122000000000000000008000004000000000000006000000000000000000000000000020000000000000800000800000000000000000000000010000004000000000400020000000000000000000000000008000000040000000000000000020000000000000000000800000000000000000000000000002000080000000000000002000000008000000000000000080000000000000000000080000020040810000000000000000000000000000000000000408000000000000000000000 state: \n\t 7: cumulative: 777141 gas: 21127 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x5488a4cad34b609f65f5e395cfa7e5fc840a1a2552a165b9052da1037a2ae0ba logs: [0xc030ccc6e0] bloom: 00000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000002100000020000000000001000000000008000000000000000000000000000000000000000001000000000000000000000000000000000000000000000 state: \n\t 8: cumulative: 900410 gas: 123269 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0xccc4bf90e87166cfe1f2c2d097c3797985c93c0fcf475115cfd826fb5e3cde5e logs: [0xc030ccc790 0xc030ccc840 0xc030ccc8f0 0xc030ccc9a0] bloom: 00000000000000000000000000010000000000000400000000000000000000000000000040000000000000000000000008000000000080000000004000004000000000000000000000000008000100000080000000000000000000000000000000000000020000000000000000000800000000000040000000000010000000000080000000000000001000000000000000000000000008000000800002000000000000000080000000000000000000000000000000000000000000000000000040000002000000000000000000000000000000000000000001000000000020080000000000000000000000000000000000000000400000000000000001000000 state: \n\t 9: cumulative: 944817 gas: 44407 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x9bb20b98a1ec48d30676d653bfd6e79cf9eb8b640afa22ffa4140a5aede3cbd8 logs: [0xc030ccca50] bloom: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000010000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000200010000000000000000000000000000000000100000000000000000000000000000000000000000000000040000000000000000000002000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000010000000000000000000000000000000000000000000400000000000000000 state: \n\t 10: cumulative: 988935 gas: 44118 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x86037daef75d38f39677d9177d96d67f4add7d5c8a54ab56cca5fdcf8bfd6665 logs: [0xc030cccb00] bloom: 00004000000000000000000000000000000000000000000000000001000080000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000002000000000000000020000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000008000002000000000000000000 state: \n\t 11: cumulative: 1139541 gas: 150606 contract: 0x0000000000000000000000000000000000000000 status: 0 tx: 0x4112200f31de1321ab7f886141b0d3e7c7b2b298f98f01aa3fbd661613686a5b logs: [] bloom: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 state: \n\t 12: cumulative: 1160541 gas: 21000 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x4752684afc1920424a31a743cda8799c9292a88abbab96089ab62077ec1be330 logs: [] bloom: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 state: \n\t 13: cumulative: 1319217 gas: 158676 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0xebb8066f2e94375ffabec19bde34641577623726219e80894fb65cbb9999bd76 logs: [0xc0289b0bb0 0xc0289b0c60 0xc0289b0d10 0xc0289b0dc0 0xc0289b0e70 0xc0289b0f20 0xc0289b0fd0] bloom: 00000000000000000000000000000000000000000400000000000000000000000100000000000000000000000000010008000000000000000004000000220040000000000000000000000008000000000000000000000000000000000000000000000000030800000000000000200800000000040800100000000010000000000040000000000000200000000000000000000000000040000001000000000000020000000000000000000000800000000000000000000000000000000000000000080002000000000000000000000000000000000000000000000000002020000010000000000000000000001000000000000000400100002000000000000000 state: \n\t 14: cumulative: 1340217 gas: 21000 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0xde4a9de213e5514bdba9cc3401a3eac393dc9c978d27c9453bc365e3f910ed50 logs: [] bloom: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 state: \n\t 15: cumulative: 1512921 gas: 172704 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x9a55f3a5dfcd05650d00faa41fba1d7e1f1c9ed214b160446eab36384c103e6b logs: [0xc030ccdef0 0xc030f88000 0xc030f880b0 0xc030f88160 0xc030f88210 0xc030f882c0 0xc030f88370] bloom: 01000000000000000000000000000000000000000400000000000000008000000000000000000000000000000008000008000000000000000000000000200000001000000000000000000008000000000000000010000002000000000010000000000000020002800000000000000800000000000000020000000010000000000000000000000000000000000000000000200000000080003000000000000000020000000040000000000000000200000000000000000000000000000000000000010002000000000000000000000000000000000000000000000000000020000010000000000000002000000000000000000008400200000000000000000000 state: \n\t 16: cumulative: 1534036 gas: 21115 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0xde8529ac556c49fd046ee453ded13bb9384e71bb2c98418120137289500467fe logs: [0xc030f88420] bloom: 00000000000000000000008000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000400000000000002000000000000000000000000000000000000000000000000000000000000000000000000020000000000002000000000000000000000000000000000000000000000000000000000080000000000000001000000000000000000008000000000000000000000000 state: \n\t 17: cumulative: 1645442 gas: 111406 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x427b5362320e5af51b143a11491ca0911100c4e4e8d50a50040f4c781870cf6a logs: [0xc030f884d0 0xc030f88580 0xc030f88630 0xc030f886e0 0xc030f88790] bloom: 002000000000001000000010c0000000000000000000000000000000000000000000000000000000000000000000010000000400000000000000000000200000000000010000000000000008000000200000000004000000000000000000000000000000010000000000000000000000000000000000100000000010000000000000000000020000000000000000000000000000000000080000004401000000020000000000000000000000000000000000000000000000000000000000000000000002000000020000000000001000000040000000001000000000000000000010000000000000000000000000000000010000000000000000000000000000 state: \n\t 18: cumulative: 1771464 gas: 126022 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0xa10079b5959775ccd55c2a8aa5cb6cb11e7f5bf32850ca63888e8c11e4c8e309 logs: [0xc030f88840 0xc030f888f0 0xc030f889a0 0xc030f88a50 0xc030f88b00] bloom: 04200000000000000000000080000000000000000000000000000000800000000000000000000000000010000000000000000000000000000000000000000000000000000000000200000008000000200000000000000002020480008000000000000004000000000000000000000000000000000080000000000010000000000000001000000000000000000040000000040001000000082000004000000000000000000000000000000000000000000000000000000000000000000000000400000002000000000000000200000000000000000000001000000000000080000000000000000000000000000000000000000008000000400000000000000000 state: \n\t 19: cumulative: 1988847 gas: 217383 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x8d97991837c1567576f768056f77205b1303f0b70bdb75ca5a8e4035d698b006 logs: [0xc030f88bb0 0xc030f88c60 0xc030f88d10 0xc030f88dc0 0xc030f88e70 0xc030f88f20 0xc030f88fd0 0xc030f89080 0xc030f89130 0xc030f891e0] bloom: 00200000000000100000000080010000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000008000002200080000000000000000400000000000000000000000000000100000000000000000000000000000000000010000001000000000000000000000000000000000000040000800008080000404000000000000000000000000000000000000000000000000010000000002000000000000000000002040002020000000000001000000100000000081000100000000080010000040044000000000000000000002000010000000000000080001000000000 state: \n\t 20: cumulative: 2080750 gas: 91903 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x3a3e1652e41c536fb175130f937e3cd25ea1322afba7d5cc7f7c27e9362a7ef4 logs: [0xc030f89290] bloom: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000004000000000000000000000000000400000000000000000000000000000000000000000000010000000000000000000400000000000000000000000000100000002000000000001000000400000000000000000000040000000000000000010000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 state: \n\t 21: cumulative: 2124817 gas: 44067 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x11475756556e2b050217f5ab6cba7bfd2338c2989bd7c63ab1c6c3af802d59b3 logs: [0xc030f89340] bloom: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000200000000000000000000000000000000008000000400000000000000080000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000008000000000000000000020000000000000000000000000000000001000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000010000000000000 state: \n\t 22: cumulative: 2216720 gas: 91903 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0xf70044123c0a84cb93fee364a388833a172b82a8bc516ae8de5d730c3d016afa logs: [0xc030f893f0] bloom: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000004000000000000000000000000000400000000000000000000000000000000000000000000010000000000000000000400000000000000000000000000108000000000000000001000000000000000000000000000000000000000000000010000000000000000000000000000002000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000040000000000 state: \n\t 23: cumulative: 2341539 gas: 124819 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x4df094d6406558c833162cf58b2edcd6646ada408cddbf930e13aeaf6c250e87 logs: [0xc030f894a0 0xc030f89550 0xc030f89600 0xc030f896b0 0xc030f89760] bloom: 00200000000000000000000080000000000000004000000000000000000000000000000000040000020000001000000000000000000000020000000000000000000000040000000000000008000000200800000000000010000420008000000000000000000000000000000000000000000008000000000000000010000000000000000080000000000840000000000000240001000000080000004000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000001000000000000080000000000000000000000000000000000080000000000000400000000000000000 state: \n\t 24: cumulative: 2385945 gas: 44406 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0xc1a9618753864e493d852b92db394ab9baf722fbd0391f0ff9d5a053a5f33348 logs: [0xc030f89810] bloom: 00000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000200000000000000000000200000000000000040000000000000000000000000000000008000000000000000000000000000000000000000080000000000000000000020000000000000000000000000000000000000000000000000000000000000008020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000400000200000000000000000000000000000000000000000 state: \n\t 25: cumulative: 2560907 gas: 174962 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0xfe6dfd38545567de77ef0f0ed68e380b9f4705a04f18ca62d6476320f54aaeab logs: [0xc030f898c0 0xc030f89970 0xc030f89a20 0xc030f89ad0 0xc030f89b80 0xc030f89c30 0xc030f89ce0 0xc030f89d90] bloom: 00000000000000100000000080010000000000000000000000000000800001000200000000000000000000000000000000000000000000000000000000200000000000000000000200000008000002000080000000000000000000000000000000000000020000000000000000000800000000000088000000000010002000000000000000000000001000000000000000000000000008080000000000000000020000000000000000000000000000000000000010000000000000000000000000040002040000020000000000021000000000000000081000000000000020002010040040000000000000000000000000000000000000000000008000000000 state: \n\t 26: cumulative: 2663857 gas: 102950 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x746f8518347d722aefcf18ce4fd9028c038f984ded9fc86af9969dd9256a7a3e logs: [0xc030f89e40 0xc030f89ef0 0xc031212000 0xc0312120b0 0xc031212160] bloom: 00200000000000000000000080010000000000000000000000000000800000000000000000000000000000010000000000000000000000000000000000200000000000000000000200000008000000200080000000000000000400000000000000000000000000000000000000000000000000000080000000000010000001000000000000000000000000000000000000040000800408080000404000000000020000000000000000000000000000000000000000000000000000000000000000000002000002000000000000000000000000000000001000040000000080010010000000000000000000000000000000010000000000000000000000000000 state: \n\t 27: cumulative: 2698512 gas: 34655 contract: 0x0000000000000000000000000000000000000000 status: 0 tx: 0x31c8eb9440350d363d7fab6baa99b61fb70c08ca9c14b7cd2ced540f9bcf227b logs: [] bloom: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 state: \n\t 28: cumulative: 2712980 gas: 14468 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x01fd1c546c05ca2ed75846a13903c79a625dd27368f46b085af79c47d9c7105b logs: [0xc031212210] bloom: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000008000000000020000000000000000a00000000008000000000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000100010000000000000000000000000000000000000000000000000000000000000 state: \n\t 29: cumulative: 2830438 gas: 117458 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x4c54893eb3b1fdaa8bed5588cddace8e2c3b5c828f932a7975a9fb669e95fef2 logs: [0xc0312122c0 0xc031212370 0xc031212420 0xc0312124d0 0xc031212580] bloom: 00000000000000000000000000010000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000008000100000080000000000000000000000000000000000000020000000000000000000800000000000040000000000010000000000000000000000000001000000000040000000000000008000000800002000810000000000000000000000000000000000000000000000000100000000000000000000002040000000000000000000000000000000000080001000000000020080000040040000000000000000000000000000000000000000000000001000000 state: \n\t 30: cumulative: 2881565 gas: 51127 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x8290d031e3d90538cf60de19deca947b1a5e85b196104b8539b4f018cdc1d0ee logs: [0xc031212630] bloom: 00000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000008000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000002000000000000000000000000200000000000000000000000400000000008000000000000001000000000000000000000000000000000000000000000 state: \n\t 31: cumulative: 2902680 gas: 21115 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x99f0533bd949c3d5feda1da95af9fcd29d0e0a4da95fe29c709e55e6cc6fac80 logs: [0xc0312126e0] bloom: 00000000000000100000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000008000000000000000000000000000000800000000000000000000000000000000000000000000010000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000002000000020000000000001000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000 state: \n\t 32: cumulative: 2923680 gas: 21000 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0xf1567af051640d5502d76ef5c020a7a7069ee746e7f4d2f055de2c4e99f9b324 logs: [] bloom: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 state: \n\t 33: cumulative: 2968183 gas: 44503 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x2781e4bf3ea42e497856eda84274c57c24fa623ba5b5754008b57a5f5c19e850 logs: [0xc031212790] bloom: 00000000000000000000000000010000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000204000000000000000000000000000000100000080000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000001010000000000000000000000000000000000000000000000000000000000000 state: \n\t 34: cumulative: 3097164 gas: 128981 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0xa117ce50e64e068ed251c86c61bca6ff31739ca1ce515f91386785adc1bfe15b logs: [0xc031212840 0xc0312128f0 0xc0312129a0 0xc031212a50] bloom: 0000000040000000000000000000000000000000040000000000000000000000000000000000000002000000000000001800000000040000000000000800000000000008000000000000000800000000000000000000080000000000c000000000000000020000000000000400000800000000000000000000000010001000000000000400000000000000000000000000000000000000000000000000000000000000000000000080800000000008000000000000000000000000080000000000100002000000000000000000000000001400000000000000000000000020100004000000000000000000000000000000000000400000000000000000000000 state: \n\t 35: cumulative: 3155472 gas: 58308 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0xdf90f3683f75edd2acf2972f750a4d6dd68adfbb05caf73152add151f83ec637 logs: [0xc031212b00 0xc031212bb0] bloom: 00000000000000000000000000010000000000000400000000000000000000000000000000000000000000000000000008000000000080000000000000004000000000000000000000040008000100000080000000000000000000000000000000000000000000000000000000000000000000000040000000000010000000000080000000000000001000000000000000000100000008000000000002000000000000000000000000000000000000000000000000000000000000000000000040000002000000000000000000000000000000000000000001000000000000000000008000000000000000000000000000000000400000000000000000000000 state: \n\t 36: cumulative: 3322490 gas: 167018 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x1867f10324a9039d1d77bac9aeaa20de63ddf2da296c6d99aed3f69983d4c87a logs: [0xc031212c60 0xc031212d10 0xc031212dc0 0xc031212e70 0xc031212f20 0xc031212fd0 0xc031213080] bloom: 00000000000000100000000080000000000000000000000000000000800001000000000000000000000000000001000000000000000000000800000000a00000000000000000000200000008000400000000100000000000000000000000000000000000020000000000000000000800000000000088000000000010002000000000000000000000001000000008000000000000000000080000000000800010020000000000000000000000000000000000000000000000000000000000000000000002000000020000000000021000000000040000001000100000000020002010000000000000000000000000000200000000000000000000000000000000 state: \n\t 37: cumulative: 3429245 gas: 106755 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x31eeffee2cc97e2bb4766fce27dd88b3e0f6e5fbccc2aca9c82079392c3a292d logs: [0xc031213130 0xc0312131e0 0xc031213290 0xc031213340 0xc0312133f0] bloom: 00200000000000100000000080000000000004000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000008000000200000000000000000000400008000000000000000000000000100000000000000000000000080000000008010000000000000000000000000000000000000000000040001000200080000004000000000000000000000000000000000000000000000000000000000002000000000000000000002000000020000000000001000000100000000001000100000000080000000000004000000000000000000002000000000000000400000000000000000 state: \n\t 38: cumulative: 3450245 gas: 21000 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x346952fa59dbf278bb3793706a82f17bd639304c157bfdaaacac89d0ffb80c54 logs: [] bloom: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 state: \n\t 39: cumulative: 3579817 gas: 129572 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x5afa3ac5d557bb93b85bc333e893aaf08b93f8a0fef4fc57c3de57c16e4d1c2d logs: [0xc0312134a0 0xc031213550 0xc031213600 0xc0312136b0 0xc031213760] bloom: 002000000000008000000000a0000000000000000000000000000000800000000000000000800000000000000000000000000000000000000000000000000000000000000000000200000009000000200000000000000000000400008000000000000000000000080000000000000000000000000080000000000010000000000000000000000000000000000200000000040001000000080000004000000000000010000000000000000000000000000400000000000000000000000020001000000002000000000000000000000000000000000000001000000000000080000000000000000000010000004000000000000000000000400000000000000000 state: \n\t 40: cumulative: 3624148 gas: 44331 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x3fc7779eb61802fd23fbc627b9277a13b4eb66f1aa3c251548fce3eb3d27b4b0 logs: [0xc031213810] bloom: 00000000000000000000000000000000000004000000000000000000000000000000000000100000000000000000000000000000000000000008000080200000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000020000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000010000000000000000000000000000000000000000000000000000000000020 state: \n\t 41: cumulative: 3645263 gas: 21115 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x05b04c92a264defe7e57bbef5e696d40ce4afa4cf3de02d2a812e0f33bac40a6 logs: [0xc0312138c0] bloom: 00000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000400000000000002000000000000000000000000000000000000000000000000000000000000000000000000020000000000002000000000000000000000000000000000000000000000000000000000000000080000000001200000000000000000008000000000000000000000000 state: \n\t 42: cumulative: 3689561 gas: 44298 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0xee8b8a59621fa18005bdfeed9c27179d9bb6f9c0e369abb65887fdb10cd5a165 logs: [0xc031213970] bloom: 00000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000001000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000200000008000000000000000000000040810000000000000000000000000000000000000000000000000000000000000 state: \n\t 43: cumulative: 3733571 gas: 44010 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x50948b440dc3c9066a8632c96c5f0b1d8ab2b4534f2d987c1856f895b59d1d3e logs: [0xc0289b1080] bloom: 00000000000080000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000008200000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000800000000000200000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000010000000000000004000000000000000400000000000000000000000000000 state: \n\t 44: cumulative: 3817336 gas: 83765 contract: 0x0000000000000000000000000000000000000000 status: 0 tx: 0xee2fedb78a4981401fed6595faf0643904df8920d4d1174c726f14023a2b0f30 logs: [] bloom: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 state: \n\t 45: cumulative: 3985420 gas: 168084 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0xc4534237eeea3d8eaf201e7b36a8f9133e852644d72f95976ee5975c8e2bd87f logs: [0xc0289b1290 0xc0289b1340 0xc0289b13f0 0xc0289b14a0 0xc0289b1550 0xc0289b1600 0xc0289b16b0] bloom: 00000000000000000000020080000000000000000000000000000000800001080000000000004000010000000000000200000000000000000000000000200000000000000000080200000008000000000000000000000000000000000000000000000000020000000000000008000800000000000088000000000010000000000040000000000000000000000000000020000000000000080000000000020001020000000000000000000000000000000000000000000000800000040000000000000002000000000000000000820000000000000000001000000000000020000010000000000000000000000000000000000000000000000000000000000001 state: \n\t 46: cumulative: 4084258 gas: 98838 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0xbd39662691d91b456af755cfe9204e5a5636d51a1aa4191e588096a9d3c6bc2c logs: [0xc0289b1760 0xc0289b1810 0xc0289b18c0 0xc0289b1970 0xc0289b1a20] bloom: 04200000000000000000000080000000000000000000000000000000800000400000000000000000000000000000040000000000000000000000000000000000000000000000000200000008000000200000000000000002020400008000000000000004000000000000000000000000000000000080000000000010000000000000001000000000000400000000000000040001000000082000004000000000000000000000000000000000000000000000000000000000000000000000000400000002000000000000000200000000000000000000001000000000000080000000000000000000000000000000000000000008000000400000000000000000 state: \n\t 47: cumulative: 4239582 gas: 155324 contract: 0x0000000000000000000000000000000000000000 status: 0 tx: 0x3d5e516a93bdcc64d596bc9c28f120ae5fed703e7d18eaf074ea2dd8cfcf7d87 logs: [] bloom: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 state: \n\t 48: cumulative: 16962203 gas: 12722621 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x43a2c5ea4027cdc35540d3a2ad3c25d076fc144fe8f8792bca942fbabb9ce791 logs: [0xc031213a20] bloom: 00004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000100000000000000000000000000020000000000000000008800000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000002000000000000000000040000000000000000000000000000000020000000000000000000000000000000000000000000004000000000000000000000 state: \n\t 49: cumulative: 16979353 gas: 17150 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x53d7aca3b02f71eedcfa51f6c4d381c63aea3e0d02239df1077351a7814e93a1 logs: [0xc031213ad0] bloom: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002010000000000000000000000000000000000020000200000000000000000000000000000000800000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000010000000000000000000000000000000000000000000000 state: \n\n\nError: invalid merkle root (remote: 83179da3063cb9853a62719f08d99c3c68d8e3447ad77cc1c88679e737e16ee4 local: f05f34f0f67942c2670c57792448e86d6ae9846547204ecb8df5a9986d67108f)\n##############################\n"
t=2021-03-03T14:27:37+0000 lvl=warn msg="Synchronisation failed, dropping peer" peer=d58941fd4b983fc4 err="retrieved hash chain is invalid"

Out of date nodes

The initial nodes provided in the mainnet.zip are more then 4-5 months out of sync. How do we get the latest chain data

Thanks

发出交易(sendTransaction),挖矿后无法验证

你好:
在Ubuntu18 上搭建单节点链,发出转账(生成新区块后),转账失败[余额没有改变]。

   在centos7上编译源码出现错误如下:

env GO111MODULE=on go run build/ci.go install ./cmd/geth

/opt/go/bin/go install -ldflags -X main.gitCommit=5cc893a5e4727e34095b8a5c9c283306f99327ff -X main.gitDate=20200728 -v ./cmd/geth
go: downloading github.com/btcsuite/btcd v0.20.0-beta
go: downloading google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55
verifying github.com/btcsuite/[email protected]: checksum mismatch
downloaded: h1:DnZGUjFbRkpytojHWwy6nfUSA7vFrzWXDLpFNzt74ZA=
go.sum: h1:PamBMopnHxO2nEIsU89ibVVnqnXR2yFTgGNc+PdG68o=

SECURITY ERROR
This download does NOT match an earlier download recorded in go.sum.
The bits may have been replaced on the origin server, or an attacker may
have intercepted the download attempt.

For more information, see 'go help module-auth'.
util.go:45: exit status 1
exit status 1
make: *** [geth] 错误 1

Curious about the PoSA

As far as i can read from the BSC whitepaper,

the the block finality time is > 5s * (1/2 * 21), because we are using clique like algorithm for consensus,

my question is, why not using a variant of PBFT to reach a better finality time?

number of pending tx is larger than txs in blocks

We have noticed that the pending tx on tx pool is about 300-400, while tx in block is about 80-100.

For tx pool:

// when receive new block header, will do:
func (pool *TxPool) runReorg(...)...{
pool.mu.Lock()
...
// Will clean up low nonce transaction
promoted := pool.promoteExecutables(promoteAddrs)
...
pool.mu.Unlock()
}

For miner:

// when receive new block header
func (w *worker) commitNewWork(interrupt *int32, noempty bool, timestamp int64) {
... 
// will lock mux of tx pool first
pending, err := w.eth.TxPool().Pending()
...
}

Miner can do mine work before tx pool run runReorg, so that pending pool size may larger than the final tx in the block.

Geth panics on sync

I downloaded the snapshot (because it would've taken ages to sync from genesis on my won) but I get this error after syncing from the snapshot, most likely a problem in one block.
How could I go about fixing this:

panic: expected tx hash 0x887ef2b7f0de6de806ac22c812a7ab3904fa2b781d905b57df8a2fe85b5e9a88, get 0x377b07685bf80d4375669b17423a244366a09b316e65877afdc6a8f3c0060c58

Fatal: ./config.toml, line 46: field 'omitempty' is not defined in node.Config

I follow the instruction to set-up a node on https://docs.binance.org/smart-chain/developer/fullnode.html and get the following fatal error:

Fatal: ./config.toml, line 46: field 'omitempty' is not defined in node.Config, see https://godoc.org/github.com/ethereum/go-ethereum/node#Config for available fields

Here are the steps that I follow from the website:

Install BSC node

git clone https://github.com/binance-chain/bsc

Enter the folder bsc was cloned into

cd bsc

Compile and install bsc

make geth

mainet

wget --no-check-certificate $(curl -s https://api.github.com/repos/binance-chain/bsc/releases/latest |grep browser_ |grep mainnet |cut -d" -f4)
unzip mainnet.zip
geth --datadir node init genesis.json

start a full node

geth --config ./config.toml --datadir ./node --pprofaddr 0.0.0.0 --metrics --pprof
Here the error occurs.

System information

Get Version: 1.9.24-stable
Git Commit: cc05b05
Architecture: amd64
Protocol Versions: [65 64 63]
Go Version: go1.15.5
Operating System: linux
GOPATH=/home/aber/go
GOROOT=/usr/local/go

Build Failed Dockerfile

Hi there,

I cloned and built image with master branch but got this error

System information

Docker
Commit hash : master

Expected behaviour

Actual behaviour

Build Failed

Steps to reproduce the behaviour

Backtrace

➜  bsc git:(master) docker build -t bsc:master .
Sending build context to Docker daemon  159.6MB
Step 1/13 : FROM golang:1.15-alpine as builder
 ---> 85ad54a21c4a
Step 2/13 : RUN apk add --no-cache make gcc musl-dev linux-headers git bash
 ---> Using cache
 ---> d32c67b99b78
Step 3/13 : ADD https://golang.org/dl/go1.15.5.src.tar.gz /tmp/go.tar.gz
Downloading [==================================================>]  23.02MB/23.02MB

 ---> Using cache
 ---> 09046ce9e194
Step 4/13 : RUN (cd /tmp && tar -xf go.tar.gz)
 ---> Using cache
 ---> 66569d5b620e
Step 5/13 : RUN (cd /tmp/go/src && ./make.bash)
 ---> Using cache
 ---> 01333524b051
Step 6/13 : ENV PATH="/tmp/go/bin:${PATH}"
 ---> Using cache
 ---> 36c443be8130
Step 7/13 : ADD . /go-ethereum
 ---> 2dc43cb20800
Step 8/13 : RUN cd /go-ethereum && make geth
 ---> Running in 86f87ff05483
env GO111MODULE=on go run build/ci.go install ./cmd/geth
go: github.com/btcsuite/[email protected]: reading github.com/btcsuite/btcd/go.mod at revision v0.20.0-beta: unknown revision v0.20.0-beta
make: *** [Makefile:16: geth] Error 1
The command '/bin/sh -c cd /go-ethereum && make geth' returned a non-zero code: 2

Syncing won't start because of BAD BLOCK

Hi there,

Please note that this is an issue tracker reserved for bug reports and feature requests.

For general questions please use discord or the Ethereum stack exchange at https://ethereum.stackexchange.com.

System information

Geth version: geth version v1.0.6
OS & Version: Ubuntu 20.04
Commit hash : (if develop)

Expected behaviour

Node starts syncing

Actual behaviour

ERROR[02-18|20:06:02.803]
########## BAD BLOCK #########
Chain config: {ChainID: 56 Homestead: 0 DAO: DAOSupport: false EIP150: 0 EIP155: 0 EIP158: 0 Byzantium: 0 Constantinople: 0 Petersburg: 0 Istanbul: 0, Muir Glacier: 0, YOLO v2: , Engine: unknown}

Number: 1
Hash: 0x04055304e432294a65ff31069c4d3092ff8b58f009cdb50eba5351e0332ad0f6

Error: extra-data too long: 97 > 32
##############################

WARN [02-18|20:06:02.804] Synchronisation failed, dropping peer peer=4cd4232e722a2cd6 err="retrieved hash chain is invalid: extra-data too long: 97 > 32"
INFO [02-18|20:06:07.304] Looking for peers peercount=5 tried=123 static=8
ERROR[02-18|20:06:12.528]
########## BAD BLOCK #########
Chain config: {ChainID: 56 Homestead: 0 DAO: DAOSupport: false EIP150: 0 EIP155: 0 EIP158: 0 Byzantium: 0 Constantinople: 0 Petersburg: 0 Istanbul: 0, Muir Glacier: 0, YOLO v2: , Engine: unknown}

Number: 1
Hash: 0x04055304e432294a65ff31069c4d3092ff8b58f009cdb50eba5351e0332ad0f6

Error: extra-data too long: 97 > 32
##############################

WARN [02-18|20:06:12.576] Synchronisation failed, dropping peer peer=44487db85567dc28 err="retrieved hash chain is invalid: extra-data too long: 97 > 32"
INFO [02-18|20:06:17.608] Downloader queue stats receiptTasks=0 blockTasks=22528 itemSize=761.51B throttle=8192
ERROR[02-18|20:06:17.609]
########## BAD BLOCK #########
Chain config: {ChainID: 56 Homestead: 0 DAO: DAOSupport: false EIP150: 0 EIP155: 0 EIP158: 0 Byzantium: 0 Constantinople: 0 Petersburg: 0 Istanbul: 0, Muir Glacier: 0, YOLO v2: , Engine: unknown}

Number: 1
Hash: 0x04055304e432294a65ff31069c4d3092ff8b58f009cdb50eba5351e0332ad0f6

Error: extra-data too long: 97 > 32
##############################

WARN [02-18|20:06:17.609] Synchronisation failed, dropping peer peer=71fd22d8cb7e4cae err="retrieved hash chain is invalid: extra-data too long: 97 > 32"
INFO [02-18|20:06:17.609] Looking for peers peercount=4 tried=117 static=8
ERROR[02-18|20:06:23.496]
########## BAD BLOCK #########
Chain config: {ChainID: 56 Homestead: 0 DAO: DAOSupport: false EIP150: 0 EIP155: 0 EIP158: 0 Byzantium: 0 Constantinople: 0 Petersburg: 0 Istanbul: 0, Muir Glacier: 0, YOLO v2: , Engine: unknown}

Number: 1
Hash: 0x04055304e432294a65ff31069c4d3092ff8b58f009cdb50eba5351e0332ad0f6

Error: extra-data too long: 97 > 32
##############################

WARN [02-18|20:06:23.496] Synchronisation failed, dropping peer peer=b84139a1ce52b6f2 err="retrieved hash chain is invalid: extra-data too long: 97 > 32"
INFO [02-18|20:06:27.987] Looking for peers peercount=5 tried=68 static=8
ERROR[02-18|20:06:34.668]
########## BAD BLOCK #########
Chain config: {ChainID: 56 Homestead: 0 DAO: DAOSupport: false EIP150: 0 EIP155: 0 EIP158: 0 Byzantium: 0 Constantinople: 0 Petersburg: 0 Istanbul: 0, Muir Glacier: 0, YOLO v2: , Engine: unknown}

Number: 1
Hash: 0x04055304e432294a65ff31069c4d3092ff8b58f009cdb50eba5351e0332ad0f6

Error: extra-data too long: 97 > 32
##############################

WARN [02-18|20:06:34.687] Synchronisation failed, dropping peer peer=b49a8e88f94dd286 err="retrieved hash chain is invalid: extra-data too long: 97 > 32"
INFO [02-18|20:06:37.990] Looking for peers peercount=4 tried=92 static=8
ERROR[02-18|20:06:45.803]
########## BAD BLOCK #########
Chain config: {ChainID: 56 Homestead: 0 DAO: DAOSupport: false EIP150: 0 EIP155: 0 EIP158: 0 Byzantium: 0 Constantinople: 0 Petersburg: 0 Istanbul: 0, Muir Glacier: 0, YOLO v2: , Engine: unknown}

Number: 1
Hash: 0x04055304e432294a65ff31069c4d3092ff8b58f009cdb50eba5351e0332ad0f6

Error: extra-data too long: 97 > 32
##############################

WARN [02-18|20:06:45.803] Synchronisation failed, dropping peer peer=cc0a1a26d9e3f1d3 err="retrieved hash chain is invalid: extra-data too long: 97 > 32"
INFO [02-18|20:06:48.121] Looking for peers peercount=2 tried=112 static=8
INFO [02-18|20:06:58.303] Looking for peers peercount=2 tried=89 static=8

Steps to reproduce the behaviour

Backtrace

[backtrace]

Incorrect gas price in mainnet geth config.toml

Expected behaviour

The mainnet config.toml file included in the release linked here https://docs.binance.org/smart-chain/developer/fullnode.html#steps-to-run-a-fullnode includes a minimum gas price of 20 gwei, making it reject any transactions priced lower. It appears that BSC mainnet has started using 15 gwei gas prices this past weekend, along with an extended outage of the RPC endpoint https://bsc-dataseed.binance.org/

Actual behaviour

Put the actual minimum gas price in config.toml. Consider additionally providing an API tool similar to EGS that provides the current gas prices

Error while decode transaction with Web3

I tried decode transaction from block but got a error

Number can only safely store up to 53 bits
	at assert ./node_modules/number-to-bn/node_modules/bn.js/lib/bn.js:6
	at BN.toNumber ./node_modules/number-to-bn/node_modules/bn.js/lib/bn.js:506
	at Object.hexToNumber ./node_modules/web3-core-helpers/node_modules/web3-utils/lib/utils.js:208
	at Method.outputTransactionFormatter [as outputFormatter] ./node_modules/web3-core-helpers/lib/formatters.js:204
	at Method.formatOutput ./node_modules/web3-core-method/lib/index.js:147
	at sendTxCallback ./node_modules/web3-core-method/lib/index.js:523
	at ./node_modules/web3-core-requestmanager/lib/index.js:293
	at XMLHttpRequest.request.onreadystatechange ./node_modules/web3-providers-http/lib/index.js:98
	at XMLHttpRequestEventTarget.dispatchEvent ./node_modules/xhr2-cookies/xml-http-request-event-target.ts:44
	at XMLHttpRequest._setReadyState ./node_modules/xhr2-cookies/xml-http-request.ts:219
	at XMLHttpRequest._onHttpResponseEnd ./node_modules/xhr2-cookies/xml-http-request.ts:345
	at IncomingMessage.<anonymous> ./node_modules/xhr2-cookies/xml-http-request.ts:311
	at IncomingMessage.emit events.js:326
	at endReadableNT _stream_readable.js:1252
	at processTicksAndRejections internal/process/task_queues.js:80

error occur with tx id 0xe0db32759810271eec05326a4c96fbb42a185139134e16b4581f77456df226a9

if look closely on https://bscscan.com/tx/0xe0db32759810271eec05326a4c96fbb42a185139134e16b4581f77456df226a9

we can see that gas equal 9,223,372,036,854,775,807, so web3 js can't convert this string to number

Anyone has idea how resolve this problem?

import Web3 from 'web3';

async function main() {
  const web3 = new Web3('https://bsc-dataseed1.binance.org:443');

  const res = await web3.eth.getBlock(1365710);

  await Promise.all(
    res.transactions.map(async (txId) => {
      try {
        const tx = await web3.eth.getTransaction(txId);

        console.log(`decode ${txId}`);
      } catch (error) {
        console.error(`error decode ${txId}`);
      }
    }),
  );
}

main();

Unable to connect to testnet peers

I started a node using this guide
https://docs.binance.org/smart-chain/developer/fullnode.html
Node has started, but doesn't sync because it can't connect to peers up to 7 hours

INFO [02-18|17:23:46.386] Looking for peers                        peercount=0 tried=61  static=0
INFO [02-18|17:23:56.580] Looking for peers                        peercount=0 tried=126 static=0
INFO [02-18|17:24:07.110] Looking for peers                        peercount=0 tried=85  static=0
INFO [02-18|17:24:17.245] Looking for peers                        peercount=0 tried=100 static=0
INFO [02-18|17:24:27.358] Looking for peers                        peercount=0 tried=64  static=0
INFO [02-18|17:24:38.583] Looking for peers                        peercount=0 tried=119 static=0
INFO [02-18|17:24:48.692] Looking for peers                        peercount=0 tried=87  static=0
INFO [02-18|17:24:58.836] Looking for peers                        peercount=0 tried=52  static=0
INFO [02-18|17:25:09.015] Looking for peers                        peercount=0 tried=78  static=0
INFO [02-18|17:25:19.097] Looking for peers                        peercount=0 tried=81  static=0
INFO [02-18|17:25:30.234] Looking for peers                        peercount=0 tried=86  static=0

启动节点报错

0|geth | INFO [09-14|16:13:31.014] Starting Geth on Ethereum mainnet...
0|geth | INFO [09-14|16:13:31.015] Bumping default cache on mainnet provided=1024 updated=4096
0|geth | INFO [09-14|16:13:31.019] Maximum peer count ETH=200 LES=0 total=200
0|geth | INFO [09-14|16:13:31.019] Smartcard socket not found, disabling err="stat /run/pcscd/pcscd.comm: no such file or directory"

Can not start geth

Hi. I have a problem starting geth of bsc on testnet.(same problem at mainnet config) Installation looks find but execution is stuck. please help me.

System information

Geth version:
Version: 1.0.6
Git Commit: b7cff76
Git Commit Date: 20210225
Architecture: amd64
Protocol Versions: [65 64 63]
Go Version: go1.16
Operating System: linux

OS & Version: windows wsl2 ubuntu 20.4

Expected behaviour

showing log of syncing of blocks.

Actual behaviour

syncing block and working well.

Steps to reproduce the behaviour

I read installation of fullnode guide(https://docs.binance.org/smart-chain/developer/fullnode.html). I followed the indication. All process was fine till facing the error.

Backtrace

ubuntu1@DESKTOP-EBK4HLR:~/bsc$ ./build/bin/geth --config ./config.toml --datadir ./node --pprofaddr 0.0.0.0 --metrics --pprof --verbosity 5
INFO [03-02|18:19:41.831] Starting pprof server                    addr=http://0.0.0.0:6060/debug/pprof
INFO [03-02|18:19:41.832] Starting Geth on Ethereum mainnet...
INFO [03-02|18:19:41.832] Bumping default cache on mainnet         provided=1024 updated=4096
DEBUG[03-02|18:19:41.832] Sanitizing Go's GC trigger               percent=25
INFO [03-02|18:19:41.832] Enabling metrics collection
INFO [03-02|18:19:41.833] Maximum peer count                       ETH=50 LES=0 total=50
INFO [03-02|18:19:41.833] Smartcard socket not found, disabling    err="stat /run/pcscd/pcscd.comm: no such file or directory"
DEBUG[03-02|18:19:41.834] FS scan times                            list=11.4µs set=200ns diff=700ns
DEBUG[03-02|18:19:41.834] FS scan times                            list=5.7µs  set=200ns diff=200ns
TRACE[03-02|18:19:41.834] Started watching keystore folder         path=/home/ubuntu1/bsc/node/keystore

but process is not going.

Logger does not log to console when a logfile is set

When using the geth setup from https://docs.binance.org/smart-chain/developer/fullnode.html with the "console" command attached to the process, nothing logs. I can access data by running net.peerCount on the console, or look at sync stats on eth.syncing from the console but it will not output to console. Logs are being sent to the log file at /node/bsc.log. Is this intentional? And how can I make it output to console and file at the same time

金额足够但是发不出去

我的这个地址0xD79964bC1C1aeAc8EE5B7B8a43c59B5adbcfAF85拥有0.03111111个BNB,我发送0.02111111个BNB,gasPrice是20000000000,gasLimit提高到了400000,但是我发送入链的时候返回【insufficient funds for gas * price + value】,但实际上 0.02111111+(20000000000*400000)/1000000000000000000的值=0.02911111是小于0.03111111的,请问这是什么情况?

the finality of parlia is different from ethash

In mainnet, bsc will have 21 validators. It will reach finality after 11 blocks not 7 blocks.
Following Parameters should be changed :

  1. BlockFetcher: block fetcher will ignore block who's num is before currentNum-maxUncleDist.
  2. staleThreshold: miner module will clean works that before currentNum-staleThreshold.
  3. miningLogAtDepth: will report finality when one block is miningLogAtDepth before currentNum.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.