good morning!!!!

Skip to content
Snippets Groups Projects
  1. Oct 02, 2019
  2. Sep 17, 2019
    • Zsolt Felföldi's avatar
      les: multiple server bugfixes (#20079) · 0ac9bbba
      Zsolt Felföldi authored
      * les: detailed relative cost metrics
      
      * les: filter txpool relative request statistic
      
      * les: initialize price factors
      
      * les: increased connected bias to lower churn rate
      
      * les: fixed clientPool.setLimits
      
      * core: do not use mutex in GetAncestor
      
      * les: bump factor db version again
      
      * les: add metrics
      
      * les, light: minor fixes
      0ac9bbba
  3. Aug 27, 2019
  4. Aug 21, 2019
  5. Aug 03, 2019
  6. Jul 09, 2019
  7. Jul 03, 2019
  8. Jun 28, 2019
    • Gary Rong's avatar
      all: on-chain oracle checkpoint syncing (#19543) · f7cdea2b
      Gary Rong authored
      * all: implement simple checkpoint syncing
      
      cmd, les, node: remove callback mechanism
      
      cmd, node: remove callback definition
      
      les: simplify the registrar
      
      les: expose checkpoint rpc services in the light client
      
      les, light: don't store untrusted receipt
      
      cmd, contracts, les: discard stale checkpoint
      
      cmd, contracts/registrar: loose restriction of registeration
      
      cmd, contracts: add replay-protection
      
      all: off-chain multi-signature contract
      
      params: deploy checkpoint contract for rinkeby
      
      cmd/registrar: add raw signing mode for registrar
      
      cmd/registrar, contracts/registrar, les: fixed messages
      
      * cmd/registrar, contracts/registrar: fix lints
      
      * accounts/abi/bind, les: address comments
      
      * cmd, contracts, les, light, params: minor checkpoint sync cleanups
      
      * cmd, eth, les, light: move checkpoint config to config file
      
      * cmd, eth, les, params: address comments
      
      * eth, les, params: address comments
      
      * cmd: polish up the checkpoint admin CLI
      
      * cmd, contracts, params: deploy new version contract
      
      * cmd/checkpoint-admin: add another flag for clef mode signing
      
      * cmd, contracts, les: rename and regen checkpoint oracle with abigen
      f7cdea2b
  9. Jun 11, 2019
  10. May 30, 2019
  11. May 26, 2019
  12. Apr 08, 2019
  13. Mar 25, 2019
  14. Feb 26, 2019
    • Zsolt Felföldi's avatar
      les, les/flowcontrol: improved request serving and flow control (#18230) · c2003ed6
      Zsolt Felföldi authored
      This change
      
      - implements concurrent LES request serving even for a single peer.
      - replaces the request cost estimation method with a cost table based on
        benchmarks which gives much more consistent results. Until now the
        allowed number of light peers was just a guess which probably contributed
        a lot to the fluctuating quality of available service. Everything related
        to request cost is implemented in a single object, the 'cost tracker'. It
        uses a fixed cost table with a global 'correction factor'. Benchmark code
        is included and can be run at any time to adapt costs to low-level
        implementation changes.
      - reimplements flowcontrol.ClientManager in a cleaner and more efficient
        way, with added capabilities: There is now control over bandwidth, which
        allows using the flow control parameters for client prioritization.
        Target utilization over 100 percent is now supported to model concurrent
        request processing. Total serving bandwidth is reduced during block
        processing to prevent database contention.
      - implements an RPC API for the LES servers allowing server operators to
        assign priority bandwidth to certain clients and change prioritized
        status even while the client is connected. The new API is meant for
        cases where server operators charge for LES using an off-protocol mechanism.
      - adds a unit test for the new client manager.
      - adds an end-to-end test using the network simulator that tests bandwidth
        control functions through the new API.
      c2003ed6
  15. Jan 24, 2019
  16. Aug 28, 2018
  17. Aug 17, 2018
    • Felix Lange's avatar
      les: fix crasher in NodeInfo when running as server (#17419) · 2695fa22
      Felix Lange authored
      * les: fix crasher in NodeInfo when running as server
      
      The ProtocolManager computes CHT and Bloom trie roots by asking the
      indexers for their current head. It tried to get the indexers from
      LesOdr, but no LesOdr instance is created in server mode.
      
      Attempt to fix this by moving the indexers, protocol creation and
      NodeInfo to a new lesCommons struct which is embedded into both server
      and client.
      
      All this setup code should really be cleaned up, but this is just a
      hotfix so we have to do that some other time.
      
      * les: fix commons protocol maker
      2695fa22
  18. Aug 15, 2018
  19. Jun 12, 2018
  20. May 07, 2018
  21. Feb 11, 2018
    • Péter Szilágyi's avatar
      les, light: fix CHT trie retrievals (#16039) · 7a0019c6
      Péter Szilágyi authored
      * les, light: fix CHT trie retrievals
      
      * les, light: minor polishes, test remote CHT retrievals
      
      * les, light: deterministic nodeset rlp, bloombits test skeleton
      
      * les: add an event emission to the les bloombits test
      
      * les: drop dead tester code
      7a0019c6
  22. Feb 10, 2018
  23. Feb 05, 2018
  24. Jan 22, 2018
    • Zsolt Felföldi's avatar
      p2p, p2p/discover, p2p/discv5: implement UDP port sharing (#15200) · 92580d69
      Zsolt Felföldi authored
      This commit affects p2p/discv5 "topic discovery" by running it on
      the same UDP port where the old discovery works. This is realized
      by giving an "unhandled" packet channel to the old v4 discovery
      packet handler where all invalid packets are sent. These packets
      are then processed by v5. v5 packets are always invalid when
      interpreted by v4 and vice versa. This is ensured by adding one
      to the first byte of the packet hash in v5 packets.
      
      DiscoveryV5Bootnodes is also changed to point to new bootnodes
      that are implementing the changed packet format with modified
      hash. Existing and new v5 bootnodes are both running on different
      ports ATM.
      92580d69
  25. Oct 24, 2017
    • Zsolt Felföldi's avatar
      les, light: LES/2 protocol version (#14970) · ca376ead
      Zsolt Felföldi authored
      This PR implements the new LES protocol version extensions:
      
      * new and more efficient Merkle proofs reply format (when replying to
        a multiple Merkle proofs request, we just send a single set of trie
        nodes containing all necessary nodes)
      * BBT (BloomBitsTrie) works similarly to the existing CHT and contains
        the bloombits search data to speed up log searches
      * GetTxStatusMsg returns the inclusion position or the
        pending/queued/unknown state of a transaction referenced by hash
      * an optional signature of new block data (number/hash/td) can be
        included in AnnounceMsg to provide an option for "very light
        clients" (mobile/embedded devices) to skip expensive Ethash check
        and accept multiple signatures of somewhat trusted servers (still a
        lot better than trusting a single server completely and retrieving
        everything through RPC). The new client mode is not implemented in
        this PR, just the protocol extension.
      ca376ead
  26. Aug 18, 2017
  27. Aug 08, 2017
  28. Jun 21, 2017
    • Zsolt Felföldi's avatar
      les: code refactoring (#14416) · a5d08c89
      Zsolt Felföldi authored
      This commit does various code refactorings:
      
      - generalizes and moves the request retrieval/timeout/resend logic out of LesOdr
        (will be used by a subsequent PR)
      - reworks the peer management logic so that all services can register with
        peerSet to get notified about added/dropped peers (also gets rid of the ugly
        getAllPeers callback in requestDistributor)
      - moves peerSet, LesOdr, requestDistributor and retrieveManager initialization
        out of ProtocolManager because I believe they do not really belong there and the
        whole init process was ugly and ad-hoc
      a5d08c89
  29. Apr 04, 2017
  30. Mar 23, 2017
    • Felix Lange's avatar
      core: refactor genesis handling · 37dd9086
      Felix Lange authored
      This commit solves several issues concerning the genesis block:
      
      * Genesis/ChainConfig loading was handled by cmd/geth code. This left
        library users in the cold. They could specify a JSON-encoded
        string and overwrite the config, but didn't get any of the additional
        checks performed by geth.
      * Decoding and writing of genesis JSON was conflated in
        WriteGenesisBlock. This made it a lot harder to embed the genesis
        block into the forthcoming config file loader. This commit changes
        things so there is a single Genesis type that represents genesis
        blocks. All uses of Write*Genesis* are changed to use the new type
        instead.
      * If the chain config supplied by the user was incompatible with the
        current chain (i.e. the chain had already advanced beyond a scheduled
        fork), it got overwritten. This is not an issue in practice because
        previous forks have always had the highest total difficulty. It might
        matter in the future though. The new code reverts the local chain to
        the point of the fork when upgrading configuration.
      
      The change to genesis block data removes compression library
      dependencies from package core.
      37dd9086
  31. Mar 03, 2017
  32. Feb 23, 2017
  33. Jan 26, 2017
  34. Dec 10, 2016
  35. Nov 15, 2016
  36. Nov 13, 2016
  37. Nov 09, 2016
Loading