good morning!!!!

Skip to content
Snippets Groups Projects
  1. Mar 14, 2021
  2. Mar 09, 2021
  3. Mar 03, 2021
  4. Mar 01, 2021
    • Zsolt Felföldi's avatar
      les: UDP pre-negotiation of available server capacity (#22183) · d9687042
      Zsolt Felföldi authored
      This PR implements the first one of the "lespay" UDP queries which
      is already useful in itself: the capacity query. The server pool is making
      use of this query by doing a cheap UDP query to determine whether it is
      worth starting the more expensive TCP connection process.
      d9687042
  5. Feb 26, 2021
  6. Feb 25, 2021
    • Zsolt Felföldi's avatar
      les: move server pool to les/vflux/client (#22377) · dc109cce
      Zsolt Felföldi authored
      * les: move serverPool to les/vflux/client
      
      * les: add metrics
      
      * les: moved ValueTracker inside ServerPool
      
      * les: protect against node registration before server pool is started
      
      * les/vflux/client: fixed tests
      
      * les: make peer registration safe
      dc109cce
    • 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
      les, light: improve txstatus retrieval (#22349) · 7a3c8900
      Gary Rong authored
      Transaction unindexing will be enabled by default as of 1.10, which causes tx status retrieval will be broken without this PR. 
      
      This PR introduces a retry mechanism in TxStatus retrieval.
      7a3c8900
    • 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
  7. Feb 23, 2021
  8. Feb 22, 2021
  9. Feb 20, 2021
  10. Feb 19, 2021
  11. Feb 12, 2021
  12. Feb 05, 2021
  13. Feb 02, 2021
  14. Jan 28, 2021
    • Zsolt Felföldi's avatar
      les/utils: UDP rate limiter (#21930) · 7a800f98
      Zsolt Felföldi authored
      * les/utils: Limiter
      
      * les/utils: dropped prior weight vs variable cost logic, using fixed weights
      
      * les/utils: always create node selector in addressGroup
      
      * les/utils: renamed request weight to request cost
      
      * les/utils: simplified and improved the DoS penalty mechanism
      
      * les/utils: minor fixes
      
      * les/utils: made selection weight calculation nicer
      
      * les/utils: fixed linter warning
      
      * les/utils: more precise and reliable probabilistic test
      
      * les/utils: fixed linter warning
      7a800f98
  15. Jan 26, 2021
    • Zsolt Felföldi's avatar
      les: switch to new discv5 (#21940) · a72fa88a
      Zsolt Felföldi authored
      
      This PR enables running the new discv5 protocol in both LES client
      and server mode. In client mode it mixes discv5 and dnsdisc iterators
      (if both are enabled) and filters incoming ENRs for "les" tag and fork ID.
      The old p2p/discv5 package and all references to it are removed.
      
      Co-authored-by: default avatarFelix Lange <fjl@twurst.com>
      a72fa88a
  16. Jan 25, 2021
    • 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
  17. Jan 21, 2021
  18. 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
  19. Jan 16, 2021
    • Gary Rong's avatar
      les: remove useless protocol defines (#22115) · 034ecc32
      Gary Rong authored
      This PR has two changes in the les protocol:
      
      - the auxRoot is not supported. See ethereum/devp2p#171 for more information
      - the empty response will be returned in GetHelperTrieProofsMsg request if the merkle
         proving is failed. note, for backward compatibility, the empty merkle proof as well as
         the request auxiliary data will still be returned in  les2/3 protocol no matter the proving
         is successful or not. the proving failure can happen e.g. request the proving for a
         non-included entry in helper trie (unstable header).
      034ecc32
  20. Jan 15, 2021
  21. Jan 07, 2021
  22. Dec 23, 2020
  23. Dec 15, 2020
  24. Dec 14, 2020
  25. Dec 11, 2020
  26. Dec 10, 2020
  27. Dec 08, 2020
    • Marius van der Wijden's avatar
      accounts/abi/bind: allow specifying signer on transactOpts (#21356) · ed0670cb
      Marius van der Wijden authored
      This commit enables users to specify which signer they want to use while creating their transactOpts.
      Previously all contract interactions used the homestead signer. Now a user can specify whether they
      want to sign with homestead or EIP155 and specify the chainID which adds another layer of security.
      
      Closes #16484
      ed0670cb
  28. Dec 07, 2020
  29. Dec 01, 2020
  30. Nov 25, 2020
  31. Nov 24, 2020
  32. Nov 23, 2020
  33. Nov 13, 2020
  34. Oct 30, 2020
    • Gary Rong's avatar
      les, p2p/simulations/adapters: fix issues found while simulating les (#21761) · b63bffe8
      Gary Rong authored
      This adds a few tiny fixes for les and the p2p simulation framework:
      
      LES Parts
      
      - Keep the LES-SERVER connection even it's non-synced
      
        We had this idea to reject the connections in LES protocol if the les-server itself is
        not synced. However, in LES protocol we will also receive the connection from another
        les-server. In this case even the local node is not synced yet, we should keep the tcp
        connection for other protocols(e.g. eth protocol).
      
      - Don't count "invalid message" for non-existing GetBlockHeadersMsg request
      
        In the eth syncing mechanism (full sync, fast sync, light sync), it will try to fetch
        some non-existent blocks or headers(to ensure we indeed download all the missing chain).
        In this case, it's possible that the les-server will receive the request for
        non-existent headers. So don't count it as the "invalid message" for scheduling
        dropping.
      
      - Copy the announce object in the closure
      
        Before the les-server pushes the latest headers to all connected clients, it will create
        a closure and queue it in the underlying request scheduler. In some scenarios it's
        problematic. E.g, in private networks, the block can be mined very fast. So before the
        first closure is executed, we may already update the latest_announce object. So actually
        the "announce" object we want to send is replaced.
      
        The downsize is the client will receive two announces with the same td and then drop the
        server.
      
      P2P Simulation Framework
      
      - Don't double register the protocol services in p2p-simulation "Start".
      
        The protocols upon the devp2p are registered in the "New node stage". So don't reigster
        them again when starting a node in the p2p simulation framework
      
      - Add one more new config field "ExternalSigner", in order to use clef service in the
        framework.
      b63bffe8
Loading