Commit Graph

55 Commits

Author SHA1 Message Date
Robert Habermeier 76a7246369 Snapshot creation and restoration (#1679)
* to_rlp takes self by-reference

* clean up some derefs

* out-of-order insertion for blockchain

* implement block rebuilder without verification

* group block chunk header into struct

* block rebuilder does verification

* integrate snapshot service with client service; flesh out implementation more

* initial implementation of snapshot service

* remove snapshottaker trait

* snapshot writer trait with packed and loose implementations

* write chunks using "snapshotwriter" in service

* have snapshot taking use snapshotwriter

* implement snapshot readers

* back up client dbs when replacing

* use snapshot reader in snapshot service

* describe offset format

* use new get_db_path in parity, allow some errors in service

* blockchain formatting

* implement parity snapshot

* implement snapshot restore

* force blocks to be submitted in order

* fix bug loading block hashes in packed reader

* fix seal field loading

* fix uncle hash computation

* fix a few bugs

* store genesis state in db. reverse block chunk order in packed writer

* allow out-of-order import for blocks

* bring restoration types together

* only snapshot the last 30000 blocks

* restore into overlaydb instead of journaldb

* commit version to database

* use memorydbs and commit directly

* fix trie test compilation

* fix failing tests

* sha3_null_rlp, not H256::zero

* move overlaydb to ref_overlaydb, add new overlaydb without on-disk rc

* port archivedb to new overlaydb

* add deletion mode tests for overlaydb

* use new overlaydb, check state root at end

* share chain info between state and block snapshotting

* create blocks snapshot using blockchain directly

* allow snapshot from arbitrary block, remove panickers from snapshot creation

* begin test framework

* blockchain chunking test

* implement stateproducer::tick

* state snapshot test

* create block and state chunks concurrently, better restoration informant

* fix tests

* add deletion mode tests for overlaydb

* address comments

* more tests

* Fix up tests.

* remove a few printlns

* add a little more documentation to `commit`

* fix tests

* fix ref_overlaydb test names

* snapshot command skeleton

* revert ref_overlaydb renaming

* reimplement snapshot commands

* fix many errors

* everything but inject

* get ethcore compiling

* get snapshot tests passing again

* instrument snapshot commands again

* fix fallout from other changes, mark snapshots as experimental

* optimize injection patterns

* do two injections

* fix up tests

* take snapshots from 1000 blocks efore

* address minor comments

* fix a few io crate related errors

* clarify names about total difficulty

[ci skip]
2016-08-05 17:00:46 +02:00
Arkadiy Paronyan 05bfdc508e Split IO and network crates (#1828)
* Abort on panic

* Split IO and network crates

* Restore panic handler

* Fixed doc tests
2016-08-05 10:32:04 +02:00
Tomasz Drwięga 3f41186b2e Fixing some clippy warnings (#1728)
* Fixing warnings

* Fixing unnecessary ref

* Removing unnecessary operation
2016-07-26 20:31:25 +02:00
Gav Wood e734810293 Ethereum classic (#1706)
* Add Ethereum Classic support

(Rename homestead-dogmatic -> classic)

* Additional change needed.

* More needed changes.

* Separate database path for known forks.

* Address minor grumble.
2016-07-25 10:20:22 +02:00
Nikolay Volf 8ab56ea3d1 IPC (feature-gated) (#1654)
* moving ipc deriving to trait

* refactoring of the client

* all compiled

* proved all working

* warnings purged

* allow hypervisor to specify initialization payload in two ways

* using binary initialisation payload for sync

* some docs

* logger to separate crate

* log settings for sync bin

* forwarding logging arguments to the sync
2016-07-20 18:13:56 +02:00
Arkadiy Paronyan b007770ba8 Moved syncing log out of the client (#1670) 2016-07-20 12:36:20 +02:00
Nikolay Volf 459dcbcef1 Removing unused client code (#1645)
* moving ipc deriving to trait

* refactoring of the client
2016-07-19 09:21:41 +02:00
Gav Wood d14b6871a5 Cleanup of colour code. Use is_a_tty. (#1621)
* Cleanup of colour code. Use is_a_tty.

* Fix test build.

* Another fix.
2016-07-15 10:11:14 +02:00
Nikolay Volf d3695d0b72 Major sync <-> client interactions refactoring (#1572)
* chain notify trait

* replaced network service with io service

* fix ethcore crate warnings

* refactored network service without generic

* ethcore fix

* ethsync refactoring

* proper linking of notify

* manage network interface

* rpc crate rebinding

* full rewire

* sync internal io service

* fix deadlock

* fix warnings and removed async io

* sync imported message propagation

* fix rpc warnings

* binart warnings

* test fixes

* rpc mocks and tests

* fix util doctest

* fix message name and removed empty notifier

* pointers mess & dark mode fixed

* fixed sync doctest

* added few warnings

* fix review

* new convention match

* fix error unwraps

* doctest fix
2016-07-11 17:02:42 +02:00
Gav Wood cd7b046d80 Fix and add info messages (#1552)
* Display information on journal database on startup.

* Minor restyling.

* Client handles the enode message to avoid repeats.

* Avoid unneeded copies *and* reduce code.

* Fix up typo.
2016-07-06 18:28:11 +02:00
Gav Wood 5a794b21cf Make output less green. 2016-06-30 08:20:34 +02:00
Gav Wood 93a89049ed More colour! 2016-06-30 08:20:34 +02:00
arkpar ee01ad1324 Shortcut sealed block into the chain 2016-06-29 21:49:22 +02:00
Tomasz Drwięga 6edb981bfa Merge branch 'master' into miner-no-default
Conflicts:
	sync/src/lib.rs
2016-06-23 21:18:43 +02:00
arkpar 09b8116cde TX processing queue 2016-06-20 18:42:50 +02:00
Tomasz Drwięga a2f24a0083 Removing Default from Miner 2016-06-20 10:28:38 +02:00
arkpar c340d8a34f Tests 2016-06-17 18:26:54 +02:00
arkpar b38488dd07 Network shutdown 2016-06-17 12:58:28 +02:00
Nikolay Volf d45a676dc0 all tests fixed 2016-05-31 22:24:32 +02:00
Nikolay Volf 8e252d5f1b refactored to merge client & client 2016-05-31 19:52:53 +02:00
debris 14b6b389f2 propagate trace error to the top 2016-05-18 11:34:15 +02:00
Marek Kotewicz 225a5ee825 removed redundant unwraps (#935)
* removed redundant unwraps

* fixed compilation error, removed warnings

* fixed transaction queue merge conflict

* fixed failing ethminer doc test
2016-04-19 10:35:32 -07:00
Marek Kotewicz 373284ca0a spec loading cleanup (#858)
* spec loading cleanup in progress

* changed engine field in json spec

* refactored engine params

* polishing spec loading refactor

* fixed compiling json tests

* fixed compiling parity

* removed warnings

* removed commented out code

* fixed failing test

* bringing back removed TODO in spec.
2016-04-09 10:20:35 -07:00
arkpar 6e9ea76aab Auto detect available port 2016-03-20 16:21:49 +01:00
Arkadiy Paronyan 2ec40604d9 Revert "Auto detect available port" 2016-03-20 12:12:58 +01:00
arkpar da027e93cf Auto detect available port 2016-03-19 21:00:05 +01:00
Gav Wood 08b9cc2c41 Merge changes from #674 into branch. 2016-03-13 15:29:55 +01:00
Tomasz Drwięga 03da6c991f Merge branch 'master' into ethminer_crate
Conflicts:
	Cargo.lock
	Cargo.toml
	ethcore/src/client/client.rs
	hook.sh
	parity/main.rs
	rpc/Cargo.toml
	rpc/src/v1/impls/eth.rs
	sync/Cargo.toml
	sync/src/tests/helpers.rs
2016-03-11 14:37:07 +01:00
Tomasz Drwięga d84e008e00 Removing superflous check for nightly 2016-03-11 11:16:49 +01:00
Tomasz Drwięga 2e72173620 Merge branch 'master' into ethminer_crate
Conflicts:
	Cargo.lock
	Cargo.toml
	hook.sh
	miner/src/transaction_queue.rs
	rpc/Cargo.toml
	sync/Cargo.toml
	sync/src/chain.rs
2016-03-10 12:25:36 +01:00
Gav Wood 249a89fc2d Merge pull request #627 from ethcore/clippy-dev
`dev` feature enabled when compiling without `--release`
2016-03-10 11:05:56 +01:00
Tomasz Drwięga 5db84c3233 Adding transactions to block 2016-03-09 13:09:34 +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
Tomasz Drwięga e91de78528 Renaming back bad as retracted 2016-03-06 11:12:02 +01:00
Tomasz Drwięga cc3839ae57 Revert "Revert "Transaction Queue integration""
This reverts commit d330f0b7b7.

Conflicts:
	sync/src/transaction_queue.rs
2016-03-05 16:46:04 +01:00
Gav Wood d330f0b7b7 Revert "Transaction Queue integration" 2016-03-05 12:53:54 +01:00
Tomasz Drwięga b9a6a70ced Renaming bad blocks as retracted 2016-03-05 11:37:19 +01:00
Gav Wood b3f09596b1 Merge pull request #516 from ethcore/sync
Better memory management
2016-02-27 15:54:19 +01:00
arkpar 781f763f1f Memory management 2016-02-25 14:09:39 +01:00
Tomasz Drwięga 990c5c8faa Refactoring client and fixing mark_as_bad & SyncMessage bugs 2016-02-23 18:44:13 +01:00
Nikolay Volf 84e7ce2758 Merge branch 'master' into temp-path
Conflicts:
	util/Cargo.toml
	util/src/lib.rs
2016-02-19 19:11:24 +03:00
arkpar 85c842b7fd Restored service test 2016-02-19 13:47:13 +01:00
debris ecde760b42 Merge branch 'master' of github.com:ethcore/parity into rustbeta 2016-02-19 12:40:30 +01:00
debris b5d6359030 fixed allow warnings in ethcore 2016-02-19 12:40:23 +01:00
Gav Wood 4f6bff1c47 Kill bad test. 2016-02-19 11:39:36 +01:00
Nikolay Volf ebe3990d0d fixing tests and build 2016-02-11 03:40:22 +03:00
Gav Wood 5f742c9142 Fix test. 2016-02-11 00:38:19 +01:00
Gav Wood 9ac4f51601 Allow path to be configured. 2016-02-10 21:17:47 +01:00
Tomusdrw 96dda7b73a Forwarding panics from threads 2016-02-10 16:35:52 +01:00
arkpar 499637606d DB directory versioning 2016-02-05 15:08:18 +01:00