Commit Graph

113 Commits

Author SHA1 Message Date
Tomasz Drwięga 038862fa9d Fixing clippy warnings (#1660) 2016-07-19 09:25:51 +02:00
Arkadiy Paronyan 4e447ccc68 More performance optimizations (#1649)
* Use tree index for DB

* Set uncles_hash, tx_root, receipts_root from verified block

* Use Filth instead of a bool

* Fix empty root check

* Flush block queue properly

* Expunge deref
2016-07-19 09:23:53 +02:00
Arkadiy Paronyan dd17c766b8 Blockchain repair on missing state root (#1646)
* BC locking; Recovery batch

* Missing state root recovery

* Test
2016-07-17 23:03:29 +02:00
Arkadiy Paronyan 5ab18d1313 Performance optimizations (#1642)
* Optimize ethash verification

* disable WAL for puts

* Clear account cache after commit

* Commit only modified accounts

* Optimize existing block check

* Cache last hashes
2016-07-17 09:18:15 +02:00
Robert Habermeier d5d0cb0b47 don't batch best block for branches (#1623) 2016-07-14 19:16:01 +02:00
Nikolay Volf 50c43bd819 Merge pull request #1610 from ethcore/db-repair
Fix bloomchain on blockchain repair
2016-07-14 01:14:57 +02:00
Robert Habermeier 36d3d0d7d7 replace synchronization primitives with those from parking_lot (#1593)
* parking_lot in cargo.toml

* replace all lock invocations with parking_lot ones

* use parking_lot synchronization primitives
2016-07-13 19:59:59 +02:00
arkpar 80d59949ff Fix bloomchain on blockchain repair 2016-07-13 14:28:46 +02:00
Gav Wood 3b662c285f Switch out .X().unwrap() for .unwrapped_X 2016-07-07 09:37:31 +02:00
arkpar 548b4e164e Attempt to fix blochchain DB sync 2016-07-04 18:24:14 +02:00
Nikolay Volf 7e452ab2e0 configurable cache size 2016-06-20 13:42:04 +03:00
Marek Kotewicz 7370776af1 Bloomchain (#1014)
* use bloomchain crate in blockchain module. remove obsole chainfilter submodule

* update database version to 6.0

* removed redundant line

* simple db migration

* make migration slightly more functional

* bloomchain migration

* migration version is just a single unsigned integer

* updated migration v6

* parity migration

* db migration

* removed hardcoded migration dir

* replace ptr::copy with clone_from_slice, removed potential endianess problem from trace/db.rs

* removed superfluous line

* blockchains log blooms config is not exposed any more
2016-05-26 18:24:51 +02:00
Arkadiy Paronyan fba5082b00 Propagate uncles (#1134) 2016-05-24 21:56:17 +02:00
Nikolay Volf 4e41cbca81 Moving all Client public API types to separate mod & binary serialization codegen for that mod (#1051)
* transaction moved

* trash remove

* ids move

* receipt

* tree-route

* blockchain info

* log_entry move

* trace filter moved

* executed & trace moved

* localized trace moved

* block status moved

* build scripts and codegen refs

* Cargo.lock update

* binary for blockstatus, blockchaininfo

* binary for trace

* trace filters binary ser

* binary for log entries & executed

* binary for receipt

* special case for u8 & transaction binary attribute

* resolved remaining issues & error binary serialization

* json-tests util import

* fix warnings

* ids attr

* add missing attributes

* Update build.rs
2016-05-16 18:33:32 +02:00
Marek Kotewicz 66477a9476 Core tracedb functionality. (#996)
* fixed encoding 0u8

* simplified if else stmt

* tracedb core

* more comprehensive tracedb tests

* fixed minor review issues

* addresses filter

* fixed typos

* replace malformed with corrupted

* trace switch

* db key is generic and can be made smaller

* smaller tracedb keys

* tracedb version

* fixed ignored tests

* rename Tracedb -> TraceDB

* fixed typos

* proves

* trace only top level calls to builtins to avoid DDoS attacks

* fixed tracedb config switches

* fix comments fat replaced with trace

* vector-addressing scheme for localized traces

* removed comments

* removed first, redundant 0 from trace address

* updated db.trace method

* additional tests for tracedb.trace()
2016-04-30 16:41:24 +01:00
Gav Wood 0810de4415 Fix spelling of "omitted" 2016-04-24 22:16:06 +01:00
debris d5555de1b9 import route contains ommited blocks 2016-04-24 19:40:04 +02:00
Arkadiy Paronyan f2a5630fdf Merge pull request #972 from ethcore/db_writer
querying extras separated to its own module
2016-04-21 11:26:13 +02:00
Arkadiy Paronyan e47af7f745 Merge pull request #966 from ethcore/from-bytes-extend
Addressing binary serialization for db types
2016-04-20 18:17:00 +02:00
debris bffa1e1ec9 simplified writing and reading from database with cache 2016-04-20 15:45:42 +02:00
debris 62455a4094 separated from blockchain and made reusable db reader and batch writer 2016-04-18 18:15:03 +02:00
debris 524a495ffd temporary fix of panic in blockchain garbage collection 2016-04-18 15:18:14 +02:00
Nikolay Volf bd2149406d from/to for BlockLocation 2016-04-17 18:18:25 +03:00
debris 295efdba55 refactored blockchain extras keys building 2016-04-15 18:54:35 +02:00
Tomasz Drwięga 85da55a537 Fixing warnings 2016-04-06 10:55:40 +02:00
debris 2a3e695f8a LocalizedReceipt 2016-03-20 17:29:39 +01:00
Gav Wood 66837452c2 Expose tracing all the way to BlockChain; now it's up to blockchain to integrate. 2016-03-19 13:37:47 +01:00
Gav Wood 59d0d2df9a Don't change best block until extras is committed. 2016-03-15 10:59:58 +01:00
Gav Wood b25551be7b Merge pull request #671 from ethcore/clippy_hook
Removing running clippy by default on nightly.
2016-03-11 14:03:16 +01:00
Tomasz Drwięga d84e008e00 Removing superflous check for nightly 2016-03-11 11:16:49 +01:00
arkpar 5f37f6edb4 Correct cache update order 2016-03-10 21:01:17 +01:00
arkpar a6b5aad8c9 Merge branch 'master' of github.com:ethcore/parity into thread 2016-03-10 18:40:17 +01:00
Gav Wood 16e12b1ae5 Merge pull request #645 from ethcore/import_route
blockchain import_route
2016-03-10 13:14:56 +01:00
debris 0a7cda09ff changed route name to enacted and retracted 2016-03-10 10:17:17 +01:00
debris 8b042ac875 blockchain import_route 2016-03-09 21:55:23 +01:00
arkpar 57485a73ec Merge branch 'master' into thread 2016-03-07 15:10:15 +01:00
Tomasz Drwięga cbc2c0cf0c Fixing clippy warnings. When building on nightly it is required to enable clippy 2016-03-07 14:34:17 +01:00
Gav Wood 52dceff3ea Merge branch 'master' into finduncles 2016-03-03 15:16:56 +01:00
Gav Wood f8dc1f2e3a Avoid leaking block_details.
Fixes #576
2016-03-03 12:56:34 +01:00
Gav Wood dadc2a96ea shrink_to_fit after removing hashes. 2016-03-03 12:39:19 +01:00
Gav Wood 6933bb971b Test. 2016-03-02 23:41:15 +01:00
Gav Wood 039c0056bc Uncle inclusion in block authoring. Still need tests. 2016-03-02 19:38:00 +01:00
Gav Wood 877270c35f Fixes. 2016-03-02 18:32:54 +01:00
Gav Wood 42df98450c Include uncles in exclused. 2016-03-02 18:05:47 +01:00
Gav Wood 671965d44f Test for ancestry. 2016-03-02 17:31:42 +01:00
Gav Wood c75737bcf0 Add ancestry iterator. 2016-03-02 17:04:44 +01:00
Gav Wood 162300a4a6 Merge pull request #547 from ethcore/mining
Mining
2016-03-02 13:00:22 +01:00
debris 68ba016279 improved blockchain generator 2016-03-02 04:25:03 +01:00
arkpar 15ecba57ec Merge branch 'master' of github.com:ethcore/parity into thread 2016-03-02 01:20:41 +01:00
Gav Wood d55aa54412 Merge branch 'master' into mining 2016-03-02 00:59:39 +01:00
Gav Wood 140711dd8a Fixups from review.
Reduce size of default extra-data.
Introduce find_uncle_headers.
2016-03-01 19:59:12 +01:00
debris 3e2366b38b improved chain generator 2016-03-01 16:22:06 +01:00
debris 47688e49cd removed redundant whitespaces 2016-03-01 13:54:14 +01:00
debris ab9fddf6b2 blockchain generator 2016-03-01 13:44:09 +01:00
arkpar d0129ff67b Fixed cache memory leak 2016-02-29 21:15:39 +01:00
arkpar cb4d17825b Fixed lock order 2016-02-29 19:49:29 +01:00
arkpar 0ccbba9073 Merge branch 'master' of github.com:ethcore/parity into thread 2016-02-29 18:11:59 +01:00
debris 1481f3f477 replaced match with if to shorten the code 2016-02-27 19:27:34 +01:00
debris 1cc719d413 description for prepare_block_blooms_update function 2016-02-27 19:17:29 +01:00
debris 53b19e9f2d Merge branch 'master' of https://github.com/ethcore/parity into blockchain_cleanup 2016-02-27 16:06:02 +01:00
debris 01f69ca80c moved creation of blockchains db transaction to apply_update function 2016-02-27 10:19:33 +01:00
debris cd43e32e25 added docs and license headers 2016-02-27 02:16:39 +01:00
debris 53e8d99075 blockchain split into few separate submodules, cleanup insert_block process 2016-02-27 01:37:12 +01:00