Regenerated local transaction journal transactions=0 accounts=0
When node is shut down, local txs are journaled to a file (default file name is transactions.rlp). When node is restarted with the journaled file, the local transactions can be regenerated based on the file.
- transactions: number of the regenerated local transaction.
- accounts: number of the regenerated accounts(==from)
Inserted a new block number=14 hash=13cbfc…f007fc txs=0 gas=0 elapsed=793.458µs processTxs=167ns finalize=157.708µs validateState=7.542µs totalWrite=443.417µs trieWrite=256.667µs
If the node is not a proposer at that block, and the consensus is successful, the node have executed(==validates) the block. In other words, a block is inserted.
- gas: total gas spent during tx execution.
This field is commonly used when testing the network to find the used gas per block.
[Dial] Add dial candidate from static nodes id=62a08a4b9f091c4b NodeType=0 ip=10.117.2.8 mainPort=32323 port=
A new P2P peer is connected, and it is a static node. A node added manually by using static-nodes.json or addpeer api is called static node. If it is a multichannel, it uses two ports. ex. [32323, 32324].
- id: dst peer id
- NodeType: dst node type(cn,pn,en,bn)
- ip: dst ip
- mainPort: dst TCP listening port number
- port: dst TCP listening port number including both the main port and sub port.
Added a multichannel P2P Peer id=28a6760472a078fb conn=staticdial peerID=28a6760472a078fb
A new peer is connected as a multichannel peer.
- id/peerID: my node’s peer id
- conn: type of connection
- inbound: somebody connects me
- staticdial: static connection, such as static-nodes.json or addPeer
- trusteddial: trusted connection, such as trust-nodes.json. it can be always reconnected and established even the number of connections exceeds max limit.
Disconnected a multichannel P2P Peer id=28a6760472a078fb conn=inbound peerID=28a6760472a078fb peerName=Klaytn/v1.7.3+acae89350c/darwin-arm64/go1.18.1 err=EOF
A multichannel peer is disconnected.
- peerName: It shows my node info
- err: The reason why the connection is disconnected
ProtocolManager.processConsensusMsg closed id=28a6760472a078fb conn=inbound PeerName=Klaytn/v1.7.3+acae89350c/darwin-arm64/go1.18.1
When a P2P node is disconnected, the consensus message channel between them is closed, too.
Persisted trie from memory database blockNum=23460 updated nodes=4 updated nodes size=499.00B time=539.959µs gcnodes=68 gcsize=10.55kB gctime=226.499µs livenodes=245 livesize=37.80kB
This log is printed to inform you that trie db has been committed. Here, commit means flushing db change to the actual db.
A commit is made periodically.
- Case 1. If the node is a full node, trie commit is made for every 128 block.
- Case 2. If the node is an archive node, trie commit is made for every block.
Commit is made at next circumstances, too.
- , A commit is made when a node is shut down.
- A commit is made when memory size exceeds the cap.
- gc stands for garbage collection. Here, garbage collection means flushing db writes of trie node change.
- A full node stores the information of every 128 cycle and the latest 128 blocks.
- Archive node stores the information of every block.
Commit new mining work number=14 hash=438ef7…68ca7f txs=0 elapsed=605.375µs commitTime=184.708µs finalizeTime=414.375µs
Every CN mines a block in preparation for round change
- number: block number
- hash: block hash (it is not a final version)
- txs: number of transactions in a block
- elapsed: total block mining time (commitTime + finalizeTime)
- commitTime: transactions execution time in a block
- finalizeTime: block finalize time
Successfully sealed new block number=14 hash=13cbfc…f007fc
[Only Proposer] Sealing a new block is successful. Sealing contains the next steps.
- Ibft consensus process for the block.
- Update timestamp and signatures of the block
Successfully wrote mined block num=14 hash=13cbfc…f007fc txs=0 elapsed=617.709µs
[Only Proposer] If the node is a proposer, and consensus is succeed, the proposer needs to store the block execution result in the db. This log means the storing was successful.
Mining too far in the future wait=1s
In order to maintain 1 second block creation period, the node sleeps for "1s - previous block generation/propagation/execution time".
- wait: how much time the node sleeps
Returning since the addr is not a program account addr=
Somebody tries to call a non-existent contract.
Tip. In Klaytn, program account is equivalent to contract account.