plugeth/core
AusIV 069a7e1f8a
core/rawdb: stop freezer process as part of freezer.Close() (#21010)
* core/rawdb: Stop freezer process as part of freezer.Close()

When you call db.Close(), it was closing the leveldb database first,
then closing the freezer, but never stopping the freezer process.
This could cause the freezer to attempt to write to leveldb after
leveldb had been closed, leading to a crash with a non-zero exit code.

This change adds a quit channel to the freezer, and freezer.Close()
will not return until the freezer process has stopped.

Additionally, when you call freezerdb.Close(), it will close the
AncientStore before closing leveldb, to ensure that the freezer goroutine
will be stopped before leveldb is closed.

* core/rawdb: Fix formatting for golint

* core/rawdb: Use backoff flag to avoid repeating select

* core/rawdb: Include accidentally omitted backoff
2020-05-11 15:11:17 +03:00
..
asm core/asm: allow numbers in labels (#20362) 2019-11-23 12:52:17 +01:00
bloombits core/bloombits, light: fix typos (#17235) 2018-07-24 11:24:27 +03:00
forkid cmd: deprecate --testnet, use named networks instead (#20852) 2020-04-09 12:09:58 +03:00
rawdb core/rawdb: stop freezer process as part of freezer.Close() (#21010) 2020-05-11 15:11:17 +03:00
state core/state: make GetCodeSize mirror GetCode implementation wise 2020-05-11 10:28:56 +03:00
types core/types: remove BlockBy sorting code (#20355) 2019-11-21 16:35:22 +02:00
vm all: seperate consensus error and evm internal error (#20830) 2020-04-22 11:25:36 +03:00
.gitignore Renamed chain => core 2014-12-04 10:28:02 +01:00
bench_test.go core, light, params: implement eip2028 (#19931) 2019-08-14 15:53:21 +03:00
block_validator_test.go all: clean up and proerly abstract database access 2019-03-06 13:35:03 +02:00
block_validator.go core: use headers only where blocks are unnecessary 2019-03-13 12:32:47 +02:00
blockchain_insert.go all: simplify timestamps to uint64 (#19372) 2019-04-02 23:28:48 +03:00
blockchain_test.go core: improve TestLogRebirth (#20961) 2020-04-28 10:06:49 +02:00
blockchain.go snapshotter/tests: verify snapdb post-state against trie (#20812) 2020-03-31 10:25:41 +02:00
blocks.go core: typos and comments improve 2017-05-25 17:14:33 +03:00
chain_indexer_test.go core: fix chain indexer unit test (#20506) 2020-01-20 10:38:08 +02:00
chain_indexer.go core: add check in AddChildIndexer to avoid double lock (#20982) 2020-04-27 15:16:30 +02:00
chain_makers_test.go all: clean up and proerly abstract database access 2019-03-06 13:35:03 +02:00
chain_makers.go core: initial version of state snapshots 2020-02-25 12:51:04 +02:00
dao_test.go all: clean up and proerly abstract database access 2019-03-06 13:35:03 +02:00
error.go all: seperate consensus error and evm internal error (#20830) 2020-04-22 11:25:36 +03:00
events.go eth/filters: remove use of event.TypeMux for pending logs (#20312) 2019-12-10 12:39:14 +01:00
evm.go core/evm: less iteration in blockhash (#20589) 2020-02-04 12:32:31 +02:00
gaspool.go miner: avoid unnecessary work (#15883) 2018-01-15 12:57:06 +02:00
gen_genesis_account.go all: regenerate codecs with gencodec commit 90983d99de (#15830) 2018-01-08 15:13:22 +02:00
gen_genesis.go all: regenerate codecs with gencodec commit 90983d99de (#15830) 2018-01-08 15:13:22 +02:00
genesis_alloc.go cmd: deprecate --testnet, use named networks instead (#20852) 2020-04-09 12:09:58 +03:00
genesis_test.go cmd: deprecate --testnet, use named networks instead (#20852) 2020-04-09 12:09:58 +03:00
genesis.go cmd, core: remove override muir glacier and override istanbul (#20942) 2020-04-20 12:46:38 +03:00
headerchain.go core: mirror full node reorg logic in light client too (#20931) 2020-04-22 11:27:47 +03:00
mkalloc.go core/vm: 64 bit memory and gas calculations (#19210) 2019-03-12 11:40:05 +02:00
state_prefetcher.go all: seperate consensus error and evm internal error (#20830) 2020-04-22 11:25:36 +03:00
state_processor.go all: seperate consensus error and evm internal error (#20830) 2020-04-22 11:25:36 +03:00
state_transition.go all: seperate consensus error and evm internal error (#20830) 2020-04-22 11:25:36 +03:00
tx_cacher.go Comment error (#18303) 2018-12-14 11:15:31 +01:00
tx_journal.go core: fix typos in comment (#17531) 2018-08-28 10:04:33 +03:00
tx_list_test.go all: switch gas limits from big.Int to uint64 2018-01-03 14:45:35 +02:00
tx_list.go core: count tx size in slots, bump max size ot 4x32KB (#20352) 2020-01-10 11:40:03 +02:00
tx_noncer.go core: fix write concurrency in txpool (#19835) 2019-07-17 13:39:41 +03:00
tx_pool_test.go core: avoid double-lock in tx_pool_test (#20984) 2020-05-06 15:47:59 +02:00
tx_pool.go all: seperate consensus error and evm internal error (#20830) 2020-04-22 11:25:36 +03:00
types.go core: prefetch next block state concurrently 2019-04-01 11:06:15 +03:00