good morning!!!!

Skip to content
Snippets Groups Projects
  1. Mar 26, 2021
  2. Mar 25, 2021
  3. Mar 24, 2021
  4. Mar 22, 2021
    • Gary Rong's avatar
      all: add read-only option to database (#22407) · 0c70b83e
      Gary Rong authored
      * all: add read-only option to database
      
      * all: fixes tests
      
      * cmd/geth: migrate flags
      
      * cmd/geth: fix the compact
      
      * cmd/geth: fix the format
      
      * cmd/geth: fix log
      
      * cmd: add chain-readonly
      
      * core: add readonly notion to freezer
      
      * core/rawdb: add log
      
      * core/rawdb: fix freezer close
      
      * cmd: fix
      
      * cmd, core: construct db
      
      * core: update tests
      0c70b83e
  5. Mar 19, 2021
  6. Mar 17, 2021
  7. Mar 15, 2021
  8. Mar 14, 2021
  9. Mar 02, 2021
  10. Feb 26, 2021
  11. Feb 25, 2021
    • lightclient's avatar
      all: add support for EIP-2718, EIP-2930 transactions (#21502) · bbfb1e40
      lightclient authored
      
      This adds support for EIP-2718 typed transactions as well as EIP-2930
      access list transactions (tx type 1). These EIPs are scheduled for the
      Berlin fork.
      
      There very few changes to existing APIs in core/types, and several new APIs
      to deal with access list transactions. In particular, there are two new
      constructor functions for transactions: types.NewTx and types.SignNewTx.
      Since the canonical encoding of typed transactions is not RLP-compatible,
      Transaction now has new methods for encoding and decoding: MarshalBinary
      and UnmarshalBinary.
      
      The existing EIP-155 signer does not support the new transaction types.
      All code dealing with transaction signatures should be updated to use the
      newer EIP-2930 signer. To make this easier for future updates, we have
      added new constructor functions for types.Signer: types.LatestSigner and
      types.LatestSignerForChainID. 
      
      This change also adds support for the YoloV3 testnet.
      
      Co-authored-by: default avatarMartin Holst Swende <martin@swende.se>
      Co-authored-by: default avatarFelix Lange <fjl@twurst.com>
      Co-authored-by: default avatarRyan Schneider <ryanleeschneider@gmail.com>
      bbfb1e40
    • Gary Rong's avatar
      cmd, eth, les: enable serving light clients when non-synced (#22250) · 378e961d
      Gary Rong authored
      This PR adds a more CLI flag, so that the les-server can serve light clients even the local node is not synced yet.
      
      This functionality is needed in some testing environments(e.g. hive). After launching the les server, no more blocks will be imported so the node is always marked as "non-synced".
      378e961d
    • Péter Szilágyi's avatar
  12. Feb 23, 2021
  13. Feb 18, 2021
    • Martin Holst Swende's avatar
      eth: implement eth66 (#22241) · 6ec15610
      Martin Holst Swende authored
      * eth/protocols/eth: split up the eth protocol handlers
      
      * eth/protocols/eth: define eth-66 protocol messages
      
      * eth/protocols/eth: poc implement getblockheaders on eth/66
      
      * eth/protocols/eth: implement remaining eth-66 handlers
      
      * eth/protocols: define handler map for eth 66
      
      * eth/downloader: use protocol constants from eth package
      
      * eth/protocols/eth: add ETH66 capability
      
      * eth/downloader: tests for eth66
      
      * eth/downloader: fix error in tests
      
      * eth/protocols/eth: use eth66 for outgoing requests
      
      * eth/protocols/eth: remove unused error type
      
      * eth/protocols/eth: define protocol length
      
      * eth/protocols/eth: fix pooled tx over eth66
      
      * protocols/eth/handlers: revert behavioural change which caused tests to fail
      
      * eth/downloader: fix failing test
      
      * eth/protocols/eth: add testcases + fix flaw with header requests
      
      * eth/protocols: change comments
      
      * eth/protocols/eth: review fixes + fixed flaw in RequestOneHeader
      
      * eth/protocols: documentation
      
      * eth/protocols/eth: review concerns about types
      6ec15610
  14. Feb 17, 2021
  15. Feb 16, 2021
  16. Feb 10, 2021
  17. Feb 08, 2021
    • Gary Rong's avatar
      all: bloom-filter based pruning mechanism (#21724) · f566dd30
      Gary Rong authored
      
      * cmd, core, tests: initial state pruner
      
      core: fix db inspector
      
      cmd/geth: add verify-state
      
      cmd/geth: add verification tool
      
      core/rawdb: implement flatdb
      
      cmd, core: fix rebase
      
      core/state: use new contract code layout
      
      core/state/pruner: avoid deleting genesis state
      
      cmd/geth: add helper function
      
      core, cmd: fix extract genesis
      
      core: minor fixes
      
      contracts: remove useless
      
      core/state/snapshot: plugin stacktrie
      
      core: polish
      
      core/state/snapshot: iterate storage concurrently
      
      core/state/snapshot: fix iteration
      
      core: add comments
      
      core/state/snapshot: polish code
      
      core/state: polish
      
      core/state/snapshot: rebase
      
      core/rawdb: add comments
      
      core/rawdb: fix tests
      
      core/rawdb: improve tests
      
      core/state/snapshot: fix concurrent iteration
      
      core/state: run pruning during the recovery
      
      core, trie: implement martin's idea
      
      core, eth: delete flatdb and polish pruner
      
      trie: fix import
      
      core/state/pruner: add log
      
      core/state/pruner: fix issues
      
      core/state/pruner: don't read back
      
      core/state/pruner: fix contract code write
      
      core/state/pruner: check root node presence
      
      cmd, core: polish log
      
      core/state: use HEAD-127 as the target
      
      core/state/snapshot: improve tests
      
      cmd/geth: fix verification tool
      
      cmd/geth: use HEAD as the verification default target
      
      all: replace the bloomfilter with martin's fork
      
      cmd, core: polish code
      
      core, cmd: forcibly delete state root
      
      core/state/pruner: add hash64
      
      core/state/pruner: fix blacklist
      
      core/state: remove blacklist
      
      cmd, core: delete trie clean cache before pruning
      
      cmd, core: fix lint
      
      cmd, core: fix rebase
      
      core/state: fix the special case for clique networks
      
      core/state/snapshot: remove useless code
      
      core/state/pruner: capping the snapshot after pruning
      
      cmd, core, eth: fixes
      
      core/rawdb: update db inspector
      
      cmd/geth: polish code
      
      core/state/pruner: fsync bloom filter
      
      cmd, core: print warning log
      
      core/state/pruner: adjust the parameters for bloom filter
      
      cmd, core: create the bloom filter by size
      
      core: polish
      
      core/state/pruner: sanitize invalid bloomfilter size
      
      cmd: address comments
      
      cmd/geth: address comments
      
      cmd/geth: address comment
      
      core/state/pruner: address comments
      
      core/state/pruner: rename homedir to datadir
      
      cmd, core: address comments
      
      core/state/pruner: address comment
      
      core/state: address comments
      
      core, cmd, tests: address comments
      
      core: address comments
      
      core/state/pruner: release the iterator after each commit
      
      core/state/pruner: improve pruner
      
      cmd, core: adjust bloom paramters
      
      core/state/pruner: fix lint
      
      core/state/pruner: fix tests
      
      core: fix rebase
      
      core/state/pruner: remove atomic rename
      
      core/state/pruner: address comments
      
      all: run go mod tidy
      
      core/state/pruner: avoid false-positive for the middle state roots
      
      core/state/pruner: add checks for middle roots
      
      cmd/geth: replace crit with error
      
      * core/state/pruner: fix lint
      
      * core: drop legacy bloom filter
      
      * core/state/snapshot: improve pruner
      
      * core/state/snapshot: polish concurrent logs to report ETA vs. hashes
      
      * core/state/pruner: add progress report for pruning and compaction too
      
      * core: fix snapshot test API
      
      * core/state: fix some pruning logs
      
      * core/state/pruner: support recovering from bloom flush fail
      
      Co-authored-by: default avatarPéter Szilágyi <peterke@gmail.com>
      f566dd30
  18. Feb 05, 2021
  19. Feb 02, 2021
  20. Feb 01, 2021
  21. Jan 28, 2021
    • Sina Mahmoodi's avatar
      cmd,core,eth,params,tests: define yolov3 + enable EIP-2565 (#22213) · eb21c652
      Sina Mahmoodi authored
      Removes the yolov2 definition, adds yolov3, including EIP-2565. This PR also disables some of the erroneously generated blockchain and statetests, and adds the new genesis hash + alloc for yolov3. 
      This PR disables the CLI switches for yolo, since it's not complete until we merge support for 2930. 
      eb21c652
  22. Jan 25, 2021
    • Martin Holst Swende's avatar
      eth, p2p: reserve half peer slots for snap peers during snap sync (#22171) · d2779ed7
      Martin Holst Swende authored
      * eth, p2p: reserve half peer slots for snap peers during snap sync
      
      * eth: less logging
      
      * eth: rework the eth/snap peer reservation logic
      
      * eth: rework the eth/snap peer reservation logic (again)
      d2779ed7
    • Gary Rong's avatar
      eth/tracers: move tracing APIs into eth/tracers (#22161) · adf130de
      Gary Rong authored
      This moves the tracing RPC API implementation to package eth/tracers.
      By doing so, package eth no longer depends on tracing and the duktape JS engine.
      
      The change also enables tracing using the light client. All tracing methods work with the
      light client, but it's a lot slower compared to using a full node.
      adf130de
    • Martin Holst Swende's avatar
      eth/protocols/snap: snap sync testing (#22179) · 797b0812
      Martin Holst Swende authored
      
      * eth/protocols/snap: make timeout configurable
      
      * eth/protocols/snap: snap sync testing
      
      * eth/protocols/snap: test to trigger panic
      
      * eth/protocols/snap: fix race condition on timeouts
      
      * eth/protocols/snap: return error on cancelled sync
      
      * squashme: updates + test causing panic + properly serve accounts in order
      
      * eth/protocols/snap: revert failing storage response
      
      * eth/protocols/snap: revert on bad responses (storage, code)
      
      * eth/protocols/snap: fix account handling stall
      
      * eth/protocols/snap: fix remaining revertal-issues
      
      * eth/protocols/snap: timeouthandler for bytecode requests
      
      * eth/protocols/snap: debugging + fix log message
      
      * eth/protocols/snap: fix misspelliings in docs
      
      * eth/protocols/snap: fix race in bytecode handling
      
      * eth/protocols/snap: undo deduplication of storage roots
      
      * synctests: refactor + minify panic testcase
      
      * eth/protocols/snap: minor polishes
      
      * eth: minor polishes to make logs more useful
      
      * eth/protocols/snap: remove excessive logs from the test runs
      
      * eth/protocols/snap: stress tests with concurrency
      
      * eth/protocols/snap: further fixes to test cancel channel handling
      
      * eth/protocols/snap: extend test timeouts on CI
      
      Co-authored-by: default avatarPéter Szilágyi <peterke@gmail.com>
      797b0812
  23. Jan 21, 2021
  24. Jan 20, 2021
  25. Jan 19, 2021
    • Gary Rong's avatar
      eth, les: add new config field SyncFromCheckpoint (#22123) · 45cb1a58
      Gary Rong authored
      This PR introduces a new config field SyncFromCheckpoint for light client.
      
      In some special scenarios, it's required to start synchronization from some
      arbitrary checkpoint or even from the scratch. So this PR offers this
      flexibility to users so that the synchronization start point can be configured.
      
      There are two relevant configs: SyncFromCheckpoint and Checkpoint.
      
      - If the SyncFromCheckpoint is true, the light client will try to sync from the
        specified checkpoint.
      
      - If the Checkpoint is not configured, then the light client will sync from the
        scratch(from the latest header if the database is not empty)
      
      Additional notes: these two configs are not visible in the CLI flags but only
      accessable in the config file.
      
      Example Usage:
      
      [Eth]
      SyncFromCheckpoint = true
      
      [Eth.Checkpoint]
      SectionIndex = 100
      SectionHead = "0xabc"
      CHTRoot = "0xabc"
      BloomRoot = "0xabc"
      
      PS. Historical checkpoint can be retrieved from the synced full node or light
      client via les_getCheckpoint API.
      45cb1a58
  26. Jan 16, 2021
  27. Jan 12, 2021
  28. Jan 11, 2021
  29. Jan 10, 2021
    • Gary Rong's avatar
      core: persist bad blocks (#21827) · 5a1b3843
      Gary Rong authored
      * core: persist bad blocks
      
      * core, eth, internal: address comments
      
      * core/rawdb: add badblocks to inspector
      
      * core, eth: update
      
      * internal: revert
      
      * core, eth: only save 10 bad blocks
      
      * core/rawdb: address comments
      
      * core/rawdb: fix
      
      * core: address comments
      5a1b3843
  30. Jan 09, 2021
  31. Jan 07, 2021
Loading