Commit Graph

1456 Commits

Author SHA1 Message Date
Arkadiy Paronyan
487dfb0208 Snapshot sync part 2 (#2098)
* Split block downloader into a module

* Snapshot sync progress

* Warp sync CLI option

* Increased snapshot chunk and ping timeouts

* Fixed an issue with delayed writes

* Updated bootnodes

* Don't run pending IO tasks on shutdown

* Optional first_block; removed insert_snapshot_block

* Fixing expect calls

* Fixed stalled sync

* style and docs

* Update block_sync.rs

[ci:skip]
2016-10-18 18:16:00 +02:00
Tomasz Drwięga
4d48054cee Fixing importing traces for non-canon blockS (#2683) 2016-10-18 16:43:42 +02:00
Robert Habermeier
0eb8cb453b Merge pull request #2658 from ethcore/snapshot-earliest-era
use pruning history in CLI snapshots
2016-10-18 13:57:43 +02:00
Robert Habermeier
c2dd37bb69 use pruning history in CLI snapshots 2016-10-17 13:05:57 +02:00
Gav Wood
b5c65e3df5 Fix up ETC EIP-150 transition to 2,500,000. (#2636) 2016-10-16 13:44:56 +02:00
Tomasz Drwięga
cceca916a1 [frontport] CLI to specify queue ordering strategy (#2494) (#2623)
* CLI to specify queue ordering strategy (#2494)

* Alter gas priorities to include gas_price also

* CLI options and tests

* Adding ordering by gas

* whitespace

Conflicts:
	ethcore/src/miner/miner.rs
	ethcore/src/miner/mod.rs
	ethcore/src/miner/transaction_queue.rs
	parity/cli/usage.txt
	parity/configuration.rs

* fix build
2016-10-15 14:46:33 +02:00
Tomasz Drwięga
03c1559ead Support for decryption in Signer (#2421)
* Adding some tests

* Implementing decrypt in queue

* Removing code duplication.

* Printing public key in ethstore

* Bump UI

* Normalizing dapps format for signer.

* Fixing tests compilation

* fix whitespace

[ci:skip]
2016-10-15 14:44:08 +02:00
Gav Wood
85eeb3ea6e EIP150.1c (#2591)
* EIP150.1b first part.

* Add documentation.

[ci:skip]

* Tweak comment

* Fix some tests.

* Fix create

* Add the new EIP150 test. (#2563)

* Fix create some more.

* Another fix for create.

* Final fixes.

* Enable EIP150 test.

* Revert the costly suicides to respect EIP150.1b.

* Fixups for EIP150.1c

* Update tests.

* Updating tests

* Adding state tests

* Updating tests

* Updating HF block

* Removing flushln [ci:skip]

* Commenting out suicide test

* New tests.

* Switch to EIP tests.

* Rename some stuff, combine transition tests.

* Fix U256 overflows.

* Name cleanups and an effort to fix tests.

* Rename back for clarity.

* Fix non-EIP-150 OOG CALLs

* New transition block number & additional EIP150 tests

* Morden transition block set; Tests updated

* Added missing test
2016-10-15 14:39:15 +02:00
Robert Habermeier
8263bd4be2 snapshot: single byte for empty accounts (#2625) 2016-10-14 15:45:45 +03:00
Robert Habermeier
f28b8352c1 Configurable history size in master (#2606)
* split journaldb commit into two functions: journal_under and mark_canonical

* use new commit mechanism in client

* Configurable history size in master

* Reduce DB history

* Configurable history size

* Set min history size

* Test

* Fixed a test and reduced the limit
2016-10-14 15:44:56 +03:00
Arkadiy Paronyan
835cd13c0e Database performance tweaks (#2619) 2016-10-14 15:44:11 +03:00
keorn
8ad1582208 enable suicide json test (#2626) 2016-10-14 14:28:02 +02:00
Robert Habermeier
19e6cbe0b2 Merge pull request #2329 from ethcore/journaldb_commit
Split journaldb commit into two functions: journal_under and mark_canonical
2016-10-14 13:57:17 +02:00
Arkadiy Paronyan
f9440f20b8 Fixed tx queue limit for local transactions (#2616)
* Fixed tx queue limit for local tx

* Fixing test

* Increas gas limit to 20x
2016-10-14 13:56:00 +02:00
Tomasz Drwięga
dbc25cf4e7 Additional logs when transactions is removed from queue (#2617) 2016-10-14 13:55:48 +02:00
Robert Habermeier
4581469e78 mitigate refcell conflict in state diffing (#2601)
* mitigate refcell conflict in state diffing

Also uses RefCell::get_mut in a few places.

* Add test case
2016-10-13 23:28:56 +02:00
Robert Habermeier
92f7f46fd3 Merge branch 'master' into journaldb_commit 2016-10-13 13:02:53 +02:00
Robert Habermeier
4bcc9e3b49 Merge pull request #2516 from ethcore/canon-cache-size
Mostly configurable canonical cache size
2016-10-12 21:48:29 +02:00
keorn
0189096caf Update json test suite (#2574)
* update json test suite

* comment out the incomplete test
2016-10-12 10:06:23 +02:00
keorn
5e24a35272 dont close block if is_invalid (#2572) 2016-10-11 16:19:00 +02:00
Arkadiy Paronyan
55dbd5bb1f Fixed race condition in trace import (#2555) 2016-10-10 23:07:29 +02:00
Arkadiy Paronyan
193cdb1326 Don't activate peers on connect; Test (#2537) 2016-10-10 23:05:41 +02:00
Arkadiy Paronyan
26d7712d30 TX queue gas limit config and allow local transactions over the gas limit (#2553)
* Gas limit config; Allow local transactions over the limit

* Fix typo

[ci:skip]
2016-10-10 23:04:43 +02:00
keorn
64f6f836ab Remove unwrap from client module (#2554)
* remove unwraps in client

* imporve block hash expect message
2016-10-10 17:43:44 +02:00
Arkadiy Paronyan
f200eb2cfe Backports to master (#2530)
* Transaction queue limited by gas (#2528)

* Use global state cache when mining (#2529)
2016-10-08 10:35:54 +02:00
Robert Habermeier
4276ab8a5f fix JSON tests 2016-10-07 13:59:50 +02:00
Robert Habermeier
19e5bede7f Merge branch 'master' into canon-cache-size 2016-10-07 13:55:20 +02:00
Arkadiy Paronyan
72ec9366ad Handle reorganizations in the state cache (#2490)
* Handle reorganizations in the state cache

* Renamed and documented a few methods

* Basic test

* Renamed pending to buffered

* Updated cache on sealed block

* More renames and updated documentation

* Minor doc tweaks
2016-10-07 12:34:32 +01:00
Robert Habermeier
299ceb8092 Merge branch 'master' into canon-cache-size 2016-10-07 12:42:51 +02:00
Robert Habermeier
8a0e98d4cc configurable jump table cache size 2016-10-07 12:18:42 +02:00
Tomasz Drwięga
4655fd04a5 Using pending block only if not old (#2514) 2016-10-07 11:13:15 +01:00
Arkadiy Paronyan
7756031d06 Caching optimizations (#2505) 2016-10-07 11:10:12 +01:00
Tomasz Drwięga
d9ca01cb6b Fixing RPC Filter conversion to EthFilter (#2500) 2016-10-07 09:18:32 +02:00
Robert Habermeier
745a50dfdf configurable state cache size 2016-10-07 00:28:42 +02:00
Nikolay Volf
ac0ae2442f Adjustable stack size for EVM (#2483)
* stack size for io workers & evm threshold

* rust way to remember stack size

* right value

* 24kb size

* some stack reduction
2016-10-06 18:42:54 +02:00
Tomasz Drwięga
75d9174294 Fixing penalization in future (#2499) 2016-10-06 18:40:40 +02:00
Arkadiy Paronyan
6c1b2fbed5 Preserve cache on reverting the snapshot (#2488)
* Preserve cache on reverting the snapshot

* Renamed merge_with into replace_with

* Renamed and documented snapshotting methods
2016-10-06 14:54:05 +01:00
Robert Habermeier
5a959c67e4 Merge pull request #2489 from ethcore/txqueuesize
Increase default size of transaction queue
2016-10-06 12:44:16 +02:00
Arkadiy Paronyan
b1ab0d0cbf EVM optimization (#2487) 2016-10-06 11:14:05 +02:00
Tomasz Drwięga
a9391f91f7 Increase size of transaction queue by default 2016-10-06 10:20:05 +02:00
Arkadiy Paronyan
ecf098e9a4 Track dirty accounts in the state (#2461)
* State to track dirty accounts

* Removed clone_for_snapshot

* Renaming stuff

* Documentation and other minor fixes

* Replaced MaybeAccount with Option
2016-10-06 01:53:23 +02:00
Jaco Greeff
33abb47222 update registrar test with generic non-empty test (#2476)
* update registrar test with generic non-empty test

* updated test, length check + parsing
2016-10-05 19:44:09 +02:00
Nikolay Volf
7526b1d44b Derive IPC interface only when ipc feature is on (#2463)
* derive -> ipc

* accident repair

* conditional ipc deriving

* fix test
2016-10-05 19:42:57 +02:00
Nikolay Volf
2b147616fd derive -> ipc 2016-10-04 19:20:16 +03:00
Tomasz Drwięga
48bb890045 Better EVM informant & Slow transactions warning (#2436)
* EVM informant. Slow transactions tracking

* Additional feature for tests
2016-10-03 23:29:46 +02:00
Nikolay Volf
e1d3b3fff8 Accounts bloom in master (#2426)
* bloom crate link

* database layout and outdated tests

* state db alterations

* v10 migration run

* using arc

* bloom migration

* migration fixes and mess

* fix tests
2016-10-03 12:02:43 +02:00
Marek Kotewicz
06fe768ac2 Polishing Actually enable fat db pr (#1974) (#2048)
* Actually enable fat db, and do RPCs for it.

* Implement HashDB traits for AccountDB.

* user defaults

* finished user defaults

* user defaults are network-dependent

* added tests for newly added functions, logger is initialized first

* dir cleanup in progress

* user_file is placed next to snapshots

* fixing requested change
2016-10-03 11:13:10 +02:00
Arkadiy Paronyan
0dcdaa7a2a Jumptable cache (#2427)
* Jumptable cache

* Updated registrar address
2016-10-02 18:45:36 +02:00
Jaco Greeff
b1d8b84eb9 update Morden registry address (#2417) 2016-10-01 15:16:23 +02:00
Nikolay Volf
1029f8438c using arc (#2420) 2016-10-01 14:33:19 +02:00
Tomasz Drwięga
443eb19739 Fixing logs-receipt matching (#2403) 2016-09-30 11:14:30 +02:00
Tomasz Drwięga
01018b417a Fixing transaction queue (#2392) 2016-09-29 12:46:04 +02:00
Tomasz Drwięga
1c61d7c813 Fixing Delegate Call in JIT (#2378)
* Detecting DELEGATE_CALL in JIT

* Fixing evmjit tests
2016-09-28 23:33:12 +02:00
Tomasz Drwięga
424b46b428 Prioritizing re-imported transactions (#2372)
* Prioritizing re-imported transactions

* Fixing compilation on beta
2016-09-28 23:32:32 +02:00
Gav Wood
bb96849620 Revert #2172, pretty much. (#2387)
* Revert #2172, pretty much.

* Tidy up whitespace.

[ci:skip]

* Force CI.
2016-09-28 23:31:59 +02:00
Gav Wood
948b614f40 Fix the traceAddress field in transaction traces. (#2373)
* Fix the traceAddress field in transaction traces.

* Add test

* Fix warning.

* Fix test

* Additional fix.

* Fix tests content.
2016-09-28 17:24:26 +02:00
Tomasz Drwięga
baa2feaca6 Removing extras data from retracted blocks. (#2375)
* Removing extras data from retracted blocks.

* Adding a test case
2016-09-28 15:49:42 +02:00
Gav Wood
15a14a5f49 Expanse compatibility (#2369)
* Add support for Expanse.

* Fix build.

* Refactor to be able to alter the eth subprotocol name

* Fix JSON.

* Support exp hardfork.

* Fix exp json again.

* Fixed test

* Fix tests.
2016-09-28 14:21:59 +02:00
Robert Habermeier
fb92a98451 Specify column cache sizes explicitly; default fallback of 2MB (#2358)
* allow specifying cache sizes for specific columns

* initialize client with correct cache size

* set cache size in client service

* default cache size for unspecified columns

* fix comment

* fix column selection logic

* fix migrations module
2016-09-27 18:16:32 +02:00
Arkadiy Paronyan
ad63780b4d Canonical state cache (master) (#2311)
* State cache

* Reduced copying data between caches

Whitespace and optional symbols

* Reduced copying data between caches

Whitespace and optional symbols

* Set a limit on storage cache

* Style and docs
2016-09-27 18:02:11 +02:00
Robert Habermeier
9d4bee4922 make block queue into a more generic verification queue and fix block heap size calculation (#2095)
* move block queue to own module, a couple readability changes

* make block queue generic over verifiable data

also fixes heap size calculation

* make block queue into a more generic verification queue

* some module reoganization

* implement header queue

* clean up verification error messages
2016-09-27 16:50:24 +02:00
Gav Wood
3fb3f1f54e Reorder transaction_by_hash to favour canon search (#2332)
* Reorder transaction_by_hash to favour canon search

* Fix build.

* Slightly cleaner function.

* Fix test.
2016-09-27 12:17:02 +02:00
Arkadiy Paronyan
bc4cbaac2b DIV optimization (#2327) 2016-09-27 11:27:11 +02:00
Marek Kotewicz
56eb97abbf user defaults (#2014)
* user defaults

* finished user defaults

* user defaults are network-dependent

* added tests for newly added functions, logger is initialized first

* dir cleanup in progress

* user_file is placed next to snapshots
2016-09-26 19:21:25 +02:00
Tomasz Drwięga
598e9cea85 Fixing jit feature compilation (#2310) 2016-09-26 18:38:54 +02:00
Robert Habermeier
e26a16c70c use new commit mechanism in client 2016-09-26 17:27:48 +02:00
Tomasz Drwięga
97fcd60e56 saturating add
Conflicts:
	ethcore/src/miner/transaction_queue.rs
2016-09-23 20:59:41 +02:00
Gav Wood
06fc494d03 Remove crufty code 2016-09-23 20:53:37 +02:00
Gav Wood
5e7955b1f1 saturating not overflowing 2016-09-23 20:53:30 +02:00
Tomasz Drwięga
efaef85565 Avoid penalizing legit transactions 2016-09-23 20:51:41 +02:00
Tomasz Drwięga
2874f464aa Penalize transactions with gas above gas limit
Conflicts:
	ethcore/src/miner/transaction_queue.rs
2016-09-23 20:49:02 +02:00
Tomasz Drwięga
62cbf9ce97 Improving txqueue logs 2016-09-23 20:30:12 +02:00
Tomasz Drwięga
aae6d19df9 Separate path for ext code size (#2251)
* Separate path for code size

* Actually use it for EVM

* add extcodesize to TestExt
2016-09-22 19:58:42 +02:00
Robert Habermeier
723d837d05 Snapshot format changes (#2234)
Closes #2213
Omit transaction and receipt roots from abridged block.
No longer use RLP compression.

Make ordered_trie_root generic over an iterator to save an allocation.

Breaks snapshot format backwards compatibility (with other 1.4 snapshots -- it's already been broken with 1.3).

Documentation will need updating
2016-09-22 19:47:03 +02:00
Tomasz Drwięga
15488b3e40 Fixing output of eth_call and Bytes deserialization (#2230)
* Fixing eth_call to builtins

* Fixing bytes deserialization

* Removing comment
2016-09-22 14:50:00 +02:00
Gav Wood
07b5e9a5c7 Encryption, decryption and public key RPCs. (#1946)
* Fix up pending receipts details.

* Add support for additional params and registry over RPC.

* Fix tests.

* Add test, additional fix.

Fixes #1932.

* Fix up tests.

* Fix test.

* Fix test.

* Remove unused use.

* Add encryption, decryption and public-key RPCs.

* Remove &
2016-09-22 14:48:22 +02:00
Robert Habermeier
a100b9d09e Remove panickers from trie iterators (#2209)
* port trie iterators to use error handling

* use new trie iterators in snapshot

allows proper recovery from a premature periodic snapshot
2016-09-21 12:56:13 +02:00
Tomasz Drwięga
8c111da70b Limit for logs filter. (#2180)
* Limit for logs filter.

* Moving limit inside the filter object

* Fixing tests
2016-09-21 11:51:10 +01:00
Tomasz Drwięga
2e6684dae8 Various state copy optimizations (#2172)
* Avoid cloning clean stuff

* Don't clone state when closing/locking blocks

* handle errors in commit

* revert `close_and_lock` changes

* defer state root update until post state commit
2016-09-21 11:49:11 +01:00
Tomasz Drwięga
0921dffd86 Fixing trait definition 2016-09-20 16:25:22 +02:00
Tomusdrw
b6df3759c8 Breaking the line 2016-09-19 12:16:22 +02:00
Tomusdrw
9bf29a555a Fixing evm-debug 2016-09-19 01:51:59 +02:00
Tomasz Drwięga
7f7e74869c Bump clippy & Fix warnings (#2109)
* Bump clippy

* Fixing warnings
2016-09-16 23:03:26 +02:00
keorn
167cfd4caa Enable sealing if Engine provides internal sealing given author (#2084)
* enable internal sealing based on author

* add tests, keep track of engine sealing status

* method to check if default address is_sealer

* simplify constructors

* fix typo
2016-09-15 12:12:15 +02:00
Tomasz Drwięga
9ed9857fba Logs limit & log_index bug (#2073)
* Limiting number of logs

* Test for logs

* Fixing logs ordering and indexing

* Fixing sort

* unwrap -> expect

* Revert "unwrap -> expect"

This reverts commit e99e6e77f37692fe568448e768aa72775de8d0cd.
2016-09-14 12:02:30 +02:00
Tomasz Drwięga
325967cadb Fixing removal from gas price when moving future->current (#2076)
* Fixing removal from gas price when moving future->current

* unwrap -> expect
2016-09-13 15:41:38 +02:00
keorn
341e06481e Split internal sealing from work preparation (#2071)
* separate block preparation methods

* Split internal sealing from work sealing, add cli option

* replace cli with engine method, simplify

* More docs about sealing types. Bypass work in external txs.

* split requires_reseal, add test and new test miner
2016-09-13 15:09:07 +02:00
Robert Habermeier
83ddce011d ensure the target folder doesn't exist before renaming (#2074) 2016-09-13 10:33:03 +02:00
Robert Habermeier
edcc4080d5 fix failing master build: update tests to new init_restore signature. (#2069) 2016-09-11 20:17:05 +02:00
Robert Habermeier
dcfd7eab6d Local snapshot restore (#2058)
* restore from local snapshot

* update status with chunks done

* rework local restore trigger
2016-09-11 14:05:59 +02:00
Robert Habermeier
835460a098 Merge pull request #2059 from ethcore/snap_service_tests
Add a few tests for the snapshot service
2016-09-11 13:27:57 +02:00
Robert Habermeier
53b22da1c1 Merge pull request #2046 from ethcore/ipc-tweaks-3
IPC tweaks
2016-09-09 17:31:59 +02:00
Robert Habermeier
ff17174cf1 also test abort_restore 2016-09-08 12:44:10 +02:00
Robert Habermeier
756b7a3e67 test folder-deleting guards 2016-09-08 12:27:13 +02:00
Robert Habermeier
c65a5c8e9c add restored_is_equivalent test 2016-09-08 12:14:53 +02:00
Robert Habermeier
b0f6bf2e78 remove client_db field from snapshot service 2016-09-07 19:38:59 +02:00
Robert Habermeier
57d5c35bb6 Use proper database configuration in snapshots. (#2052)
* use proper database config in snapshot service

* add snapshot path to parity directories struct

* fix RPC tests
2016-09-07 15:27:28 +02:00
Robert Habermeier
541b14a4ab periodic snapshot tweaks (#2054)
* periodic snapshot tweaks

* set SNAPSHOT_HISTORY to 500
2016-09-07 15:27:14 +02:00
debris
e9593e0abb ethkey-cli 2016-09-07 13:59:14 +02:00
Marek Kotewicz
e12788f3a4 Merge pull request #2056 from ethcore/ethstore-cli
Forward ethstore-cli feature
2016-09-07 13:52:40 +02:00