diff options
author | obscuren <geffobscura@gmail.com> | 2015-05-11 05:12:18 +0800 |
---|---|---|
committer | obscuren <geffobscura@gmail.com> | 2015-05-11 17:39:33 +0800 |
commit | a2919b5e17197afcb689b8f4144f255a5872f85d (patch) | |
tree | 7d2adf6b51bd2b54d13b177ee39dd9366ffbebc8 /eth | |
parent | 6674ea8d67012a8ad1227738c69b8997962fe141 (diff) | |
download | dexon-a2919b5e17197afcb689b8f4144f255a5872f85d.tar.gz dexon-a2919b5e17197afcb689b8f4144f255a5872f85d.tar.zst dexon-a2919b5e17197afcb689b8f4144f255a5872f85d.zip |
core, eth, miner: improved tx removal & fatal error on db sync err
* core: Added GasPriceChange event
* eth: When one of the DB flush methods error a fatal error log message
is given. Hopefully this will prevent corrupted databases from
occuring.
* miner: remove transactions with low gas price. Closes #906, #903
Diffstat (limited to 'eth')
-rw-r--r-- | eth/backend.go | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/eth/backend.go b/eth/backend.go index 8f0789467..cdbe35b26 100644 --- a/eth/backend.go +++ b/eth/backend.go @@ -451,6 +451,8 @@ func (s *Ethereum) Start() error { return nil } +// sync databases every minute. If flushing fails we exit immediatly. The system +// may not continue under any circumstances. func (s *Ethereum) syncDatabases() { ticker := time.NewTicker(1 * time.Minute) done: @@ -459,13 +461,13 @@ done: case <-ticker.C: // don't change the order of database flushes if err := s.extraDb.Flush(); err != nil { - glog.V(logger.Error).Infof("error: flush extraDb: %v\n", err) + glog.Fatalf("fatal error: flush extraDb: %v\n", err) } if err := s.stateDb.Flush(); err != nil { - glog.V(logger.Error).Infof("error: flush stateDb: %v\n", err) + glog.Fatalf("fatal error: flush stateDb: %v\n", err) } if err := s.blockDb.Flush(); err != nil { - glog.V(logger.Error).Infof("error: flush blockDb: %v\n", err) + glog.Fatalf("fatal error: flush blockDb: %v\n", err) } case <-s.shutdownChan: break done |