go-ethereum/core
AusIV 3ebfeb09fe
core/rawdb: fix high memory usage in freezer (#21243)
The ancients variable in the freezer is a list of hashes, which
identifies all of the hashes to be frozen. The slice is being allocated
with a capacity of `limit`, which is the number of the last block
this batch will attempt to add to the freezer. That means we are
allocating memory for all of the blocks in the freezer, not just
the ones to be added.

If instead we allocate `limit - f.frozen`, we will only allocate
enough space for the blocks we're about to add to the freezer. On
mainnet this reduces usage by about 320 MB.
2020-06-19 10:51:37 +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 core: fix typo in comments (#21181) 2020-06-08 10:53:56 +03:00
rawdb core/rawdb: fix high memory usage in freezer (#21243) 2020-06-19 10:51:37 +03:00
state core/state: avoid escape analysis fault when accessing cached state 2020-06-08 16:11:37 +03:00
types core/types: remove BlockBy sorting code (#20355) 2019-11-21 16:35:22 +02:00
vm core, eth, internal: include read storage entries in structlog output (#21204) 2020-06-10 11:46:13 +02:00
.gitignore Renamed `chain` => `core` 2014-12-04 10:28:02 +01:00
bench_test.go cmd, core, eth: background transaction indexing (#20302) 2020-05-11 18:58:43 +03:00
block_validator.go core: use headers only where blocks are unnecessary 2019-03-13 12:32:47 +02:00
block_validator_test.go cmd, core, eth: background transaction indexing (#20302) 2020-05-11 18:58:43 +03:00
blockchain.go eth: interrupt chain insertion on shutdown (#21114) 2020-05-26 21:37:37 +02:00
blockchain_insert.go all: simplify timestamps to uint64 (#19372) 2019-04-02 23:28:48 +03:00
blockchain_test.go all: fix typos in comments (#21118) 2020-05-25 10:21:28 +02:00
blocks.go core: typos and comments improve 2017-05-25 17:14:33 +03:00
chain_indexer.go core: add check in AddChildIndexer to avoid double lock (#20982) 2020-04-27 15:16:30 +02:00
chain_indexer_test.go core: fix chain indexer unit test (#20506) 2020-01-20 10:38:08 +02:00
chain_makers.go core: initial version of state snapshots 2020-02-25 12:51:04 +02:00
chain_makers_test.go cmd, core, eth: background transaction indexing (#20302) 2020-05-11 18:58:43 +03:00
dao_test.go cmd, core, eth: background transaction indexing (#20302) 2020-05-11 18:58:43 +03:00
error.go all: fix typos in comments (#21118) 2020-05-25 10:21:28 +02: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.go all: regenerate codecs with gencodec commit 90983d99de (#15830) 2018-01-08 15:13:22 +02:00
gen_genesis_account.go all: regenerate codecs with gencodec commit 90983d99de (#15830) 2018-01-08 15:13:22 +02:00
genesis.go cmd, core, params: inital support for yolo-v1 testnet (#21154) 2020-06-03 12:05:15 +03:00
genesis_alloc.go cmd, core, params: inital support for yolo-v1 testnet (#21154) 2020-06-03 12:05:15 +03:00
genesis_test.go cmd, core, eth: background transaction indexing (#20302) 2020-05-11 18:58:43 +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
rlp_test.go cmd, core, eth: background transaction indexing (#20302) 2020-05-11 18:58:43 +03: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.go core: count tx size in slots, bump max size ot 4x32KB (#20352) 2020-01-10 11:40:03 +02:00
tx_list_test.go all: switch gas limits from big.Int to uint64 2018-01-03 14:45:35 +02:00
tx_noncer.go core: fix write concurrency in txpool (#19835) 2019-07-17 13:39:41 +03:00
tx_pool.go core: filter out txs with invalid signatures as soon as possible 2020-06-04 10:37:21 +08:00
tx_pool_test.go core: avoid double-lock in tx_pool_test (#20984) 2020-05-06 15:47:59 +02:00
types.go core: prefetch next block state concurrently 2019-04-01 11:06:15 +03:00