aboutsummaryrefslogtreecommitdiffstats
path: root/core/database_util.go
Commit message (Collapse)AuthorAgeFilesLines
* core, core/state, trie: EIP158, reprice & skip empty account writeJeffrey Wilcke2016-11-131-3/+7
| | | | | | | | | | | | | | | This commit implements EIP158 part 1, 2, 3 & 4 1. If an account is empty it's no longer written to the trie. An empty account is defined as (balance=0, nonce=0, storage=0, code=0). 2. Delete an empty account if it's touched 3. An empty account is redefined as either non-existent or empty. 4. Zero value calls and zero value suicides no longer consume the 25k reation costs. params: moved core/config to params Signed-off-by: Jeffrey Wilcke <jeffrey@ethereum.org>
* core/types: remove header accessorsFelix Lange2016-11-091-6/+6
| | | | | | These accessors were introduced by light client changes, but the only method that is actually used is GetNumberU64. This commit replaces all uses of .GetNumberU64 with .Number.Uint64.
* light: light chain, VM env and tx poolZsolt Felfoldi2016-11-091-1/+43
|
* core: ensure the canonical block is written before the canonical hash is setBas van Kervel2016-08-161-1/+5
|
* core: improved chainDb using sequential keyszsfelfoldi2016-06-071-65/+114
|
* core, core/types, eth: add and use Block.BodyFelix Lange2016-04-151-1/+1
| | | | | This fixes a few uses of unkeyed Body literals which go vet was complaining about.
* core: added basic chain configurationJeffrey Wilcke2016-04-011-0/+34
| | | | | | | | | Added chain configuration options and write out during genesis database insertion. If no "config" was found, nothing is written to the database. Configurations are written on a per genesis base. This means that any chain (which is identified by it's genesis hash) can have their own chain settings.
* core, core/vm, crypto: fixes for homesteadJeffrey Wilcke2016-02-181-14/+0
| | | | | | * Removed some strange code that didn't apply state reverting properly * Refactored code setting from vm & state transition to the executioner * Updated tests
* parmas, crypto, core, core/vm: homestead consensus protocol changesGustav Simonsson2016-02-181-69/+14
| | | | | | | | * change gas cost for contract creating txs * invalidate signature with s value greater than secp256k1 N / 2 * OOG contract creation if not enough gas to store code * new difficulty adjustment algorithm * new DELEGATECALL op code
* common: remove old RLP implementation, Value and ExtPackageFelix Lange2015-12-181-0/+14
| | | | | In order to make this happen, kill all remaining trivial uses of common/{rlp,value}.go. The non-trivial ones have been updated earlier.
* core, eth, miner, xeth: clean up tx/receipt db accessorsPéter Szilágyi2015-11-191-0/+584