Closed
Description
Problem
Geth 1.8.1 was released today. It contains many improvements that are important for us, and by upgrading to 1.8.1 we render some patches redundant (namely 0011-geth-17-whisperv6-70fbc87.patch
which ported Whisper v6 to our fork), making future maintenance easier.
Implementation
Investigate breaking changes in 1.8.1 to determine what work must be done as part of the upgrade. Perform upgrade.
Breaking changes checklist
- Discovery v4 and v5 have been merged to use the same UDP port (30303 by default). If you are doing manual peer management and using the light client, you may need to ensure your v1.8.0 clients are pointed to port 30303 and not 30304 as previously.
- Trie pruning is enabled on all
--syncmode
variations (including--syncmode=full
). If you are running an archive node where you would like to retain all historical data, you should disable pruning via--gcmode=archive
. - Only the latest 128 tries are kept in memory, most tries are garbage collected. If you are running a block explorer or other service relying on transaction tracing without an archive node (
--gcmode=archive
), you need to trace within this window! Alternatively, specify thereexec: 12345
tracer option to allow regenerating historical state; and ideally switch to chain tracing which amortizes overhead across all traced blocks. - Native events rely on modifications to internal go-ethereum types within generated code. If you are using wrappers generated prior to v1.8.0, you will need to regenerate them to be compatible with the new code base.
- The HTTP/WS RPC endpoint was extended with DNS rebind protection. If you are running an RPC endpoint addressed by name rather than IP, run with
--rpcvhost=your.domain
to continue accepting remote requests.
Acceptance Criteria
- The different
make
targets work as expected (e.g.make ci
,make statusgo-android
, etc) - TBD
Notes
This GHI only makes sense to start once #660 is merged.
TDB
Future Steps
- Upgrade bootnodes and mailserver cluster with new version.
- TBD
Metadata
Assignees
Labels
No labels