Skip to main content
83 votes
Accepted

What is Geth's "light" sync, and why is it so fast?

I'll take my shot. Experts, please correct me. "Full" Sync: Gets the block headers, the block bodies, and validates every element from genesis block. Fast Sync: Gets the block headers, the block ...
hhh's user avatar
  • 2,381
59 votes

How to check my sync status on Geth 1.5.5, Raspberry Pi 3

Continuing to research, need to enter the geth node console to enter special commands. The following works: geth attach Sends user to the geth node console. eth.syncing Produces a result like ...
Arthur D. Howland's user avatar
49 votes

How to check my sync status on Geth 1.5.5, Raspberry Pi 3

After running your normal geth --fast command you can open a new window and run the "geth attach" command as this will attach you to the javascript interface $ geth attach Then you can use this ...
Christoff X's user avatar
41 votes

How long is the first sync supposed to last?

Do following steps to check the sync state: 1.) open a new geth instance and type in geth attach 2.) now type in eth.syncing This shows you the "currentBlock" and the "highestBlock".
Kevin R.'s user avatar
  • 511
35 votes

Why is my node synchronization stuck/extremely slow at block 2,306,843?

Update Mar 5 2017 The state cleaning was announced by Vitalik Buterin in the tweet State clearing 100% complete dated 23:07 Nov 29 2016. This time corresponds to block 2,718,436. The Clearing ...
BokkyPooBah's user avatar
  • 40.4k
26 votes

How can i tell if geth is done running?

The way I check is: Find out what the last block is. https://etherchain.org Start geth with console (https://github.com/ethereum/go-ethereum/wiki/Command-Line-Options) When geth is running enter the ...
ServerGuy's user avatar
  • 361
20 votes
Accepted

What is Parity's “warp” sync, and why is it faster than Geth "fast"?

It's difficult to give an answer without just re-hashing the explanation on the Parity wiki... The pertinent part is as follows: These snapshots can be used to quickly get a full copy of the state at ...
Richard Horrocks's user avatar
12 votes
Accepted

What is knownStates?

during fast sync, web3.eth.syncing downloads the state trie. knownStates is the number of trie nodes that the sync algo knows about pulledStates is the number it already downloaded there's no way to ...
Badr Bellaj's user avatar
  • 18.8k
11 votes
Accepted

What's the proper way to wait for a transaction to be mined and get the results?

Use a filter in order to watch for changes. In this case, for example, you could: web3.eth.filter('latest', function(error, result){ if (!error) { thisJS.setState({contractFunds: web3....
Derek Tiffany's user avatar
11 votes
Accepted

How can I tell my progress and the number of peers I'm connected to when using geth to download blockchain?

You can use console in second terminal. geth attach and then in the console: > eth.syncing { currentBlock: 27832, highestBlock: 3520007, startingBlock: 26025 } > net.peerCount 9
NewTwoEth's user avatar
  • 270
10 votes

What is knownStates?

From the code: // SyncProgress gives progress indications when the node is synchronising with // the Ethereum network. type SyncProgress struct { StartingBlock uint64 // Block number where sync ...
Lee's user avatar
  • 8,618
10 votes

How long is the first sync supposed to last?

I think you should edit the question to ask, "How do I know when geth is done syncing?" The question you asked was vague, but I believe this is the answer you were after: Geth will continue running ...
Evan de la Cruz's user avatar
10 votes

How long is the first sync supposed to last?

Assuming you are using a Linux flavoured OS, you can check the sync status as well (run this as the user under which geth is running): $ geth --exec eth.syncing.currentBlock attach 3991639 If it's ...
tlex's user avatar
  • 146
9 votes

What's the proper way to wait for a transaction to be mined and get the results?

I created a Gist that polls the node until the transaction has been mined: web3.eth.getTransactionReceiptMined = function (txnHash, interval) { var transactionReceiptAsync; interval = ...
Xavier Leprêtre B9lab's user avatar
9 votes

Syncing keeps behind the blockchain

Syncing the Ethereum blockchain with Geth in --fast mode has two phases running in parallel: block sync and state trie download. Both phases need to be done in order to have a full node and switch to ...
Greg Jeanmart's user avatar
8 votes
Accepted

How do I find out how big the chain structure is for a particular block?

I experienced a similar issue while testing a clean local install of Mist Wallet and Ethereum. This is very likely the result of the large amount of spam-generated state from the recent attacks (...
Jamie Pitts's user avatar
8 votes

Why is my node synchronization stuck/extremely slow at block 2,306,843?

On a practical note, just remove your blockchain and synchronize again. The blockchain bloat has been removed already. Stop your node and/or close your Ethereum wallet. Remove the chaindata. for ...
q9f's user avatar
  • 33k
8 votes
Accepted

How to fix "address already in use" error when attempting to launch geth console?

The error is most likely because the geth is already running and when you are trying to start another geth process using the same 30303 default port. If you know the datadir of the geth process which ...
joifsi's user avatar
  • 1,019
8 votes
Accepted

Optimal sync mode for running an ethereum node that can process transactions

As per geth help document there are 3 ways you can do sync to network: --syncmode full: Geth client will download Block header + Block data + full Validation [Is called eth full node] --syncmode ...
Jitendra Kumar. Balla's user avatar
8 votes
Accepted

geth rewinds chain on every startup

If you kill the geth instance or it crashes, it won't write the latest status of the cache, and will be forced to drop the "fast" sync state and fall back to the last "full" state on next startup. ...
rustyx's user avatar
  • 910
8 votes
Accepted

Consensus Client vs Execution Client

The Execution Client listens and executes transactions and maintains the latest state and database of all Ethereum data, while the Consensus Client provides consensus (using PoS algorithm) from ...
Yongjian P.'s user avatar
  • 4,308
7 votes

Synchronisation failed, dropping peer

I received this error as well. I deleted everything in the folder /Users/name/Library/Ethereum/testnet/geth/chaindata and then restarted with the command geth --testnet --fast and it started working
Ben B's user avatar
  • 71
7 votes
Accepted

Full node sync only preserve the last 128 history states

The behavior has changed with the release of geth v1.8.0 Fromt the release notes Tracing and pruning: By default, state for the last 128 blocks kept in memory. Most states are garbage collected. ...
Ismael's user avatar
  • 30.3k
6 votes
Accepted

Is it safe to delete .ethash folder and its contents from system?

This file is part of the Ethereum mining computation and can be safely deleted from your machine. It is not part of the blockchain, but just a by-product of the blockchain. If you do ever want to run ...
BokkyPooBah's user avatar
  • 40.4k
6 votes

Ethereum wallet keeps redownloading entire blockchain

Please check the link below, someone else had the same issue : Downloading full blockchain again after using geth --fast on 0.7.4
Badr Bellaj's user avatar
  • 18.8k
6 votes
Accepted

Does installing geth download the entire blockchain?

It depends on the synchronization mode you choose. From this answer: "Full" Sync: Gets the block headers, the block bodies, and validate every element from genesis block. Fast Sync: Gets the block ...
hhh's user avatar
  • 2,381
6 votes
Accepted

Run mist without downloading blockchain

Using parity You can have parity emulate geth's IPC (ie, pretend to be geth), by running: parity --light --geth If you want to be lazy, you can add to your configuration file: [parity] light = ...
Tom Hale's user avatar
  • 3,107
6 votes

Web3ProviderEngine does not support synchronous requests while : Running migration: 2_deploy_contracts.js

web3.eth.blockNumber is synchronous. You need to change this to web3.eth.getBlockNumber((err, res) => {}) Alternatively you can restructure this chain with promises: const Promise = require('...
carlolm's user avatar
  • 2,316
6 votes
Accepted

Synchronisation failed, dropping peer; err="retrieved hash chain is invalid"; message loop

The problem was the signers does not recognize some past block became invalid. As a solution, first I have updated geth version of signer nodes to equal or above to v1.8.16. Later, I have rewind the ...
alper's user avatar
  • 8,404
5 votes

Is it safe to delete .ethash folder and its contents from system?

Yes, you can delete that file. 1. What is .ethash Ethash is Ethereum‘s Proof of Work hashing algorithm. The algorithm is GPU memory intensive to discourage CPU mining and future development of ...
niksmac's user avatar
  • 9,673

Only top scored, non community-wiki answers of a minimum length are eligible