This commit replaces the deep-copy based state revert mechanism with a
linear complexity journal. This commit also hides several internal
StateDB methods to limit the number of ways in which calling code can
use the journal incorrectly.
As usual consultation and bug fixes to the initial implementation were
provided by @karalabe, @obscuren and @Arachnid. Thank you!
(cherry picked from commit 1f1ea18b54)
Merge continue 2
Fake commit to restart the build servers
Fake commit to hopefully fix the PPA issue.
update versionOracle address for expanse
Merge continue 3
Merge continue 4
cleaned up a few Eth stragglers
Merge continue 5
Not sure why the merge tool changed this file and removed that but it
did.
merge continue 6
fixing expanse.js
Again not sure why this one got edited from the last one but -shrug-
fixing rpc calls for eth_ for compatibility
rpc calls still acting crazy
more rpc fixes
make jsre console accept both exp and eth cmds
rpc fixes continued
adding eth api calls
rpc and js-console both have eth calls on by default now
The chain maker and the simulated backend now run with a homestead phase
beginning at block 0 (i.e. there's no frontier).
This commit also fixes up #2388
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.