good morning!!!!

Skip to content
Snippets Groups Projects
  1. Dec 10, 2020
  2. Aug 21, 2020
  3. Feb 25, 2020
  4. May 16, 2019
    • Gary Rong's avatar
      all: integrate the freezer with fast sync · 80469bea
      Gary Rong authored
      * all: freezer style syncing
      
      core, eth, les, light: clean up freezer relative APIs
      
      core, eth, les, trie, ethdb, light: clean a bit
      
      core, eth, les, light: add unit tests
      
      core, light: rewrite setHead function
      
      core, eth: fix downloader unit tests
      
      core: add receipt chain insertion test
      
      core: use constant instead of hardcoding table name
      
      core: fix rollback
      
      core: fix setHead
      
      core/rawdb: remove canonical block first and then iterate side chain
      
      core/rawdb, ethdb: add hasAncient interface
      
      eth/downloader: calculate ancient limit via cht first
      
      core, eth, ethdb: lots of fixes
      
      * eth/downloader: print ancient disable log only for fast sync
      80469bea
  5. Mar 06, 2019
  6. Feb 14, 2019
  7. Nov 26, 2018
    • Sheldon's avatar
      light: odrTrie tryUpdate should use update (#18107) · ca228569
      Sheldon authored
      TryUpdate does not call t.trie.TryUpdate(key, value) and calls t.trie.TryDelete
      instead. The update operation simply deletes the corresponding entry, though
      it could retrieve later by odr. However, it adds further network overhead.
      ca228569
  8. Feb 05, 2018
  9. Dec 18, 2017
  10. Jun 27, 2017
    • Felix Lange's avatar
      core/state: access trie through Database interface, track errors (#14589) · 9e5f03b6
      Felix Lange authored
      With this commit, core/state's access to the underlying key/value database is
      mediated through an interface. Database errors are tracked in StateDB and
      returned by CommitTo or the new Error method.
      
      Motivation for this change: We can remove the light client's duplicated copy of
      core/state. The light client now supports node iteration, so tracing and storage
      enumeration can work with the light client (not implemented in this commit).
      9e5f03b6
  11. Apr 18, 2017
    • Felix Lange's avatar
      trie: remove Key in MissingNodeError · a31d268b
      Felix Lange authored
      The key was constructed from nibbles, which isn't possible for all
      nodes. Remove the only use of Key in LightTrie by always retrying with
      the original key that was looked up.
      a31d268b
  12. Mar 22, 2017
    • Felix Lange's avatar
      all: import "context" instead of "golang.org/x/net/context" · c213fd1f
      Felix Lange authored
      There is no need to depend on the old context package now that the
      minimum Go version is 1.7. The move to "context" eliminates our weird
      vendoring setup. Some vendored code still uses golang.org/x/net/context
      and it is now vendored in the normal way.
      
      This change triggered new vet checks around context.WithTimeout which
      didn't fire with golang.org/x/net/context.
      c213fd1f
  13. Nov 09, 2016
  14. Oct 14, 2016
    • Felix Lange's avatar
      trie, core/state: improve memory usage and performance (#3135) · 40cdcf11
      Felix Lange authored
      * trie: store nodes as pointers
      
      This avoids memory copies when unwrapping node interface values.
      
      name      old time/op  new time/op  delta
      Get        388ns ± 8%   215ns ± 2%  -44.56%  (p=0.000 n=15+15)
      GetDB      363ns ± 3%   202ns ± 2%  -44.21%  (p=0.000 n=15+15)
      UpdateBE  1.57µs ± 2%  1.29µs ± 3%  -17.80%  (p=0.000 n=13+15)
      UpdateLE  1.92µs ± 2%  1.61µs ± 2%  -16.25%  (p=0.000 n=14+14)
      HashBE    2.16µs ± 6%  2.18µs ± 6%     ~     (p=0.436 n=15+15)
      HashLE    7.43µs ± 3%  7.21µs ± 3%   -2.96%  (p=0.000 n=15+13)
      
      * trie: close temporary databases in GetDB benchmark
      
      * trie: don't keep []byte from DB load around
      
      Nodes decoded from a DB load kept hashes and values as sub-slices of
      the DB value. This can be a problem because loading from leveldb often
      returns []byte with a cap that's larger than necessary, increasing
      memory usage.
      
      * trie: unload old cached nodes
      
      * trie, core/state: use cache unloading for account trie
      
      * trie: use explicit private flags (fixes Go 1.5 reflection issue).
      
      * trie: fixup cachegen overflow at request of nick
      
      * core/state: rename journal size constant
      40cdcf11
  15. Dec 17, 2015
Loading