1. 30 Sep, 2015 2 commits
    • Felix Lange's avatar
      p2p/discover: remove unused lastLookup field · 631bf361
      Felix Lange authored
      631bf361
    • Felix Lange's avatar
      p2p/discover: fix race involving the seed node iterator · b4374436
      Felix Lange authored
      nodeDB.querySeeds was not safe for concurrent use but could be called
      concurrenty on multiple goroutines in the following case:
      
      - the table was empty
      - a timed refresh started
      - a lookup was started and initiated refresh
      
      These conditions are unlikely to coincide during normal use, but are
      much more likely to occur all at once when the user's machine just woke
      from sleep. The root cause of the issue is that querySeeds reused the
      same leveldb iterator until it was exhausted.
      
      This commit moves the refresh scheduling logic into its own goroutine
      (so only one refresh is ever active) and changes querySeeds to not use
      a persistent iterator. The seed node selection is now more random and
      ignores nodes that have not been contacted in the last 5 days.
      b4374436
  2. 25 Sep, 2015 1 commit
  3. 23 Sep, 2015 6 commits
  4. 22 Sep, 2015 3 commits
    • Felix Lange's avatar
      rpc/api: don't crash for unknown blocks · 90cd8ae9
      Felix Lange authored
      Most eth RPC calls that work with blocks crashed when the block was not
      found because they called Hash on a nil block. This is a regression
      introduced in cdc2662c (#1779).
      
      While here, remove the insane conversions in get*CountBy*. There is no
      need to construct a complete BlockRes and converting
      int->int64->*big.Int->[]byte->hexnum->string to format the length of a
      slice as hex.
      90cd8ae9
    • Felix Lange's avatar
      cmd/geth, core: make "geth blocktest" work again · 70b61747
      Felix Lange authored
      The test genesis block was not written properly, block insertion failed
      immediately.
      
      While here, fix the panic when shutting down "geth blocktest" with
      Ctrl+C. The signal handler is now installed automatically, causing
      ethereum.Stop to crash because everything is already stopped.
      70b61747
    • Gustav Simonsson's avatar
      bfde1a43
  5. 21 Sep, 2015 8 commits
  6. 18 Sep, 2015 6 commits
  7. 17 Sep, 2015 4 commits
  8. 16 Sep, 2015 6 commits
  9. 15 Sep, 2015 4 commits