434 Commits

Author SHA1 Message Date
andri lim
2fbabd25a4 implement aleth/geth/parity compatibility mode -- 100% pass test 2020-02-20 09:08:44 +02:00
andri lim
16a938d3fa fixes clearStorage bug 2020-01-20 18:36:58 +02:00
andri lim
5f24757cd7 use 'withValue' when retrieving account's storage 2020-01-19 19:17:37 +02:00
andri lim
cf0d4481f3 [skip ci] rename 'isExists' to 'exists' 2020-01-19 19:17:37 +02:00
andri lim
727b477fca [skip ci] add accounts cache test 2020-01-19 19:17:37 +02:00
andri lim
5795bf52e0 [skip ci] implement accounts_cache 2020-01-19 19:17:37 +02:00
andri lim
1ffb992674 multi root state trie implementation 2019-12-10 12:34:48 +02:00
andri lim
97e89b3afe implement 'getCommittedStorage' 2019-11-14 10:11:35 +00:00
andri lim
c4dcf5da30
reduce compiler warnings 2019-11-13 21:49:39 +07:00
andri lim
61f340ae87 implement EIP2200's SSTORE and gas cost 2019-11-12 15:51:48 +00:00
andri lim
3ad465d169 implement block validation and friends 2019-09-26 12:33:43 +03:00
Jacek Sieka
2763bd0dd5
std_shims -> stew 2019-07-07 12:12:01 +02:00
andri lim
4a7f58c7dc implement constantinople bitwise opcode 2019-05-13 10:26:28 +03:00
andri lim
85d9bd3958
implement EIP158, GST -4 +81 2019-04-17 11:03:52 +07:00
andri lim
8a9e4aba80
apply dao fork changes 2019-04-07 06:53:26 +07:00
andri lim
f2f92f5608
fix block 1.487.668 problem: getScore int overflow 2019-04-05 16:29:05 +07:00
Ștefan Talpalaru
a67edd693a
assert() -> doAssert() 2019-03-13 22:36:54 +01:00
andri lim
e2311d798b
fix recurring symbol collision problem 2019-03-07 22:53:09 +07:00
andri lim
200f93a3b7 refactor incNonce 2019-02-27 13:30:18 +02:00
andri lim
2c032ad1ab refactor utils 2019-02-27 13:30:18 +02:00
andri lim
282824cd53 zah's request: add missing comments 2019-02-18 13:16:04 +02:00
andri lim
c53e7fa07c fixes #228 2019-02-15 17:20:51 +02:00
andri lim
7c6c7dbe3a 'accountExist' to 'accountExists' 2019-02-06 18:42:03 +01:00
andri lim
4cc0ef427c add ccountExist and isDeadAccount to AccountStateDB 2019-02-06 18:42:03 +01:00
Yuriy Glukhov
481c6cf4ed Use nim-eth (#224) 2019-02-05 20:15:50 +01:00
andri lim
0c887b3711 move initializeEmptyDb to genesis.nim 2019-01-15 15:30:25 +02:00
Yuriy Glukhov
58ad0e472c Moved db backends to eth_trie 2019-01-13 15:31:59 +02:00
Ștefan Talpalaru
89044b84e7 update Nimbus header and refine db backend picking
- dynamically generated copyright year interval
- added the db backend to the header
- documented the db-backend-changing define, made it case insensitive
  and ensured wrong values would trigger compilation errors
2019-01-07 01:21:29 +02:00
andri lim
281b7dffac implement debug_setHead 2019-01-06 13:17:08 +02:00
andri lim
e78fb72ef6 fixes #188 2019-01-06 13:16:45 +02:00
andri lim
041ed689aa fix silly typo mistake 2019-01-06 11:43:38 +02:00
andri lim
96b18cfce3 add select_backend module 2019-01-06 11:43:38 +02:00
andri lim
0487720769 fix capturedb bug 2019-01-06 11:43:38 +02:00
andri lim
ab0fb7fdf0 fix getScore 32bit bug 2019-01-06 11:43:38 +02:00
andri lim
5fc134ac2a add lmdb backend 2019-01-06 11:43:38 +02:00
andri lim
a6bf970b1b some cleanup 2019-01-06 11:43:38 +02:00
Ștefan Talpalaru
048a43b2f1
better error handling
- added some useful `chronicles` defines in the top-level nim.cfg
- converted some assert() calls to error codes to avoid a reported
  segfault with -d:release
- the recoverable errors are being recovered from, in persistWorkItem()
- the only case that's a show stopper raises an exception
2018-12-17 23:36:38 +01:00
andri lim
9c0bb70ba7 working makeReceipt 2018-12-16 15:38:51 +02:00
andri lim
ad1202f98a initial make_receipt 2018-12-16 15:38:51 +02:00
andri lim
7a3ddfec87 correcting account storage retrieval 2018-12-05 22:01:29 +07:00
andri lim
c954dc7d62 fix tests 2018-12-05 22:01:29 +07:00
andri lim
5509c66cce implement transaction tracer 2018-12-05 22:01:28 +07:00
andri lim
a098285a7b put prune switch into usage 2018-12-05 21:58:34 +07:00
andri lim
21070d510d add TransactionKey to persistTransactions and add more fat to debug_traceTransaction 2018-11-28 09:25:36 +07:00
andri lim
161d6adbc7 implement persistTransactions and getBlockBody 2018-11-24 08:00:58 +07:00
Dustin Brody
d97cc50afc fix eth_trie/constants missing compile error 2018-10-19 07:44:08 -07:00
Zahary Karadjov
41adca1abb Minimal changes required for building the LES branch 2018-10-16 03:10:01 +03:00
Zahary Karadjov
343cc4fa43 Populate the persistent databases with the empty RLP key.
Also implements transactional block persistence. Two issues
in the transaction processing code have been discovered that
might affect other usages such as the CALL instruction.

The main fix gets us past block 49000.

You may need to clean up your database.
2018-10-05 03:36:48 +03:00
Zahary Karadjov
74f6f0b738 Deal with the refactoring in status-im/nim-rlp#20 2018-09-26 12:58:23 +03:00
Zahary Karadjov
5c0fd16448 Fix an issue with the Sqlite3 tests (the in-memory DB was not properly used) 2018-09-25 16:01:38 +03:00