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
Gav Wood
0d2f516ad7
Multi-mode logging. ( #1643 )
...
* Multi-mode logging.
Better for miners (they get immediate notification of new block).
Better for general use (less superfluous information shown).
* Remove comment.
[ci:skip]
* Minor string change
[ci:skip]
* Minor message tweak.
* Minor tweaks and indentation fix.
2016-07-17 23:00:57 +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
NikVolf
c3ef5c10a3
got rid of the generic parameter for ipc interface
2016-07-16 19:24:45 +02:00
NikVolf
77bbab009e
got rid of Arc<T> dispatch
2016-07-16 19:09:14 +02:00
Nikolay Volf
7b5d39e0a1
fix network_start regression ( #1629 )
...
* fix network_start regression
* network io handler
* move registration to the network start
2016-07-16 11:31:59 +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
Gav Wood
598833d1ea
Fix "pending" parameter on RPC block requests ( #1602 )
...
* Initial commit.
* Pending blocks work.
* Address grumbles.
* Fix up for new API.
2016-07-14 15:24:12 +02:00
Nikolay Volf
44bc8a08fb
Sync IPC interface ( #1584 )
...
* 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
* basic library re-layout
* missing files to relayout
* duplicating network config on sync level
* binary serializers for config
* ipc endpoint for manage
* ipc endpoint for sync
* handshake sorting out
* sorting out the multi-interface dispatch scenario
* fixing tests
* fix doctest
2016-07-14 12:07:33 +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
Nikolay Volf
d956b7cea3
Merge pull request #1577 from ethcore/pv64
...
bring snapshotting work into master
2016-07-12 13:46:55 +02:00
Robert Habermeier
7200cfcbc9
expunge &Vec<T> pattern ( #1579 )
...
* expunge &Vec<T> pattern
* fix travis
2016-07-12 10:28:35 +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
Robert Habermeier
3dd7ce5566
merge accountdb_migration
2016-07-11 11:08:41 +02:00
Tomasz Drwięga
d7caae2241
Fixing clippy warnings ( #1568 )
...
* Fixing clippy warnings
* Fixing more warnings
2016-07-10 13:18:33 +02:00
Robert Habermeier
36dfa4743e
merge accountdb migration
2016-07-09 17:33:14 +02:00
Gav Wood
d7077c8ef7
Fix build.
2016-07-07 11:28:33 +02:00
Gav Wood
9f43526c88
Merge branch 'master' into kill_unwraps
2016-07-07 09:40:12 +02:00
Nikolay Volf
8282c7dd50
Client IPC Interface ( #1493 )
...
* btree map serializer
* serde tests
* state diff serialization
* basic layout
* more missing serializaers
* uncle returns rlp
* block queue info
* sorting with transaction result
* sorting out util imports
* transaction import result sorting also
* sorting filters & ranges
* error sorting out
* deriving ipc service compiling
* rpc & sync recompile
* sorting rpc using uncles
* fix compilation
* fix merging bugs
* fix unused imports
* fix all warnings
* tests stub
* some merge bugs
* ethcore compilation
* fix rpc compilation
* deriving attribute
* tests (and fixes)
* rpc test working
* fix warnings again
* rs.in -> rs
* missing attribute
* refactored tree changes
* paste reformat mess fix
* pub mod actually
* intendation fix
2016-07-07 09:39:32 +02:00
Gav Wood
3b662c285f
Switch out .X().unwrap() for .unwrapped_X
2016-07-07 09:37:31 +02:00
Gav Wood
456ad9e21b
Remove .lock().unwrap() idiom into locked().
2016-07-06 19:52:34 +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
Nipunn Koorapati
4a9b9dc305
Update sealing just once when externally importing many blocks ( #1541 )
...
Fixes Issue #1372
2016-07-06 17:15:59 +02:00
Gav Wood
488ff88562
Remove soft-fork stuff.
2016-07-05 18:18:35 +02:00
Gav Wood
c26cfc1c5a
Silent running operating modes ( #1477 )
...
* Command=line options.
* Keep alive for the eth protocol.
* Wire up final pieces.
* No network when dark.
* Passive and dark mode work.
* Ensure all RPCs keep alive.
* Fix tests.
* Fix minor bug.
* Minor whitespace.
* Split out some of the sleep-state.
* Fix help text.
2016-07-05 17:50:46 +02:00
Robert Habermeier
465aae71e7
merge branch accountdb_migration into pv64
2016-07-04 12:53:01 +02:00
NikVolf
43027b36ea
Merge branch 'master' into client-api-refact2
2016-07-01 22:43:51 +03:00
NikVolf
edb8663195
ethcore finished
2016-07-01 22:34:50 +03:00
NikVolf
46b0af6121
flush work
2016-07-01 22:13:56 +03:00
Nikolay Volf
8102fb9306
Client api cleaning - uncles are returned as rlp ( #1516 )
...
* uncle as rlp in the api
* uncle rlp in block view
* fix warning
2016-07-01 19:37:17 +01:00
Marek Kotewicz
d8a4cca817
Fatdb integration with CLI ( #1464 )
...
* fatdb integration
* --fat-db
* rerun with --pruning=archive comment
2016-07-01 19:29:56 +01:00
NikVolf
0907722fc8
fix warning
2016-07-01 16:34:15 +03:00
NikVolf
d4ff3e51e9
uncle rlp in block view
2016-07-01 16:33:37 +03:00
NikVolf
7ad8599324
uncle as rlp in the api
2016-07-01 13:26:44 +03:00
Tomasz Drwięga
5c2ca9a0cb
Fixing warnings
2016-07-01 02:08:14 +02:00
Gav Wood
9c58ebf2d2
Merge branch 'master' into clone-work
2016-06-30 13:16:48 +02:00
Gav Wood
9c07e5c355
Optionally clone block behind work-package.
2016-06-30 12:56:58 +02:00
Gav Wood
6ca2e6b29b
Remove extraneous messages.
2016-06-30 08:20:34 +02:00
arkpar
ee01ad1324
Shortcut sealed block into the chain
2016-06-29 21:49:22 +02:00
NikVolf
580913fa7d
vm factory to mining client
2016-06-29 17:23:29 +03:00
Robert Habermeier
49024a4f28
Merge with master
2016-06-29 14:46:29 +02:00
Marek Kotewicz
af891f65a7
verifier is no longer a template type of client ( #1467 )
...
* verifier is no longer a template type of client
* added missing ,
2016-06-28 13:23:15 +02:00
Gav Wood
af935df553
Merge branch 'master' into miner-improvements
2016-06-28 10:02:33 +02:00
Gav Wood
495e56034f
Merge branch 'master' into miner-improvements
2016-06-27 21:02:55 +02:00
arkpar
150d7c1c78
Merge remote-tracking branch 'origin/master' into db-config-ext
2016-06-27 20:33:07 +02:00
Arkadiy Paronyan
60b70dada1
Reduced IO messages; removed panics on IO notifications ( #1457 )
2016-06-27 19:30:13 +02:00
Gav Wood
2a51a30d41
Fix up the pending set stuff.
2016-06-27 19:06:54 +02:00
Gav Wood
1667808ecb
More miner options.
...
- Optional limit for the amount of gas transactions may have;
- option to restruct transactions returned/queried to only those
which have been executed.
2016-06-27 18:27:06 +02:00
Arkadiy Paronyan
6859152c21
Fixed losing queued blocks on ancient block error ( #1453 )
2016-06-27 15:59:45 +02:00
Nikolay Volf
2e5d5f12dd
ethcore client config
2016-06-27 13:58:12 +02:00
Gav Wood
8fcec20398
Gas limit ceiling option.
2016-06-23 14:29:16 +02:00
Gav Wood
5302a7dd58
Ensure judging the SF trigger by relative branch
...
Rather than just the canon chain.
2016-06-22 19:49:07 +02:00
Arkadiy Paronyan
7c94b1495e
Merge pull request #1329 from ethcore/softforktrigger
...
Install trigger for DAO-rescue soft-fork.
2016-06-21 22:25:24 +02:00
Arkadiy Paronyan
b2891fcdda
Update sealing on new transactions ( #1365 )
2016-06-21 16:00:34 +02:00
Arkadiy Paronyan
f58e211b11
Merge pull request #1335 from ethcore/tx_perf
...
Transaction processing queue
2016-06-20 23:47:35 +02:00
arkpar
09b8116cde
TX processing queue
2016-06-20 18:42:50 +02:00
Nikolay Volf
7e452ab2e0
configurable cache size
2016-06-20 13:42:04 +03:00
Gav Wood
2582253f95
Install trigger for DAO-rescue soft-fork.
...
Soft-fork should only be primed to trigger if the gas-limit of
block #1760000 is at most 4,000,000.
To accomplish this we pass in the gas limit of that block to
EnvInfo so it can inform Schedule. This gets marshalled through
`OpenBlock`/`ClosedBlock` and the `enact` functions much like
`last_hashes`. `block.rs`'s `env_info()` takes care to ensure
that if the current block happens to be #1760000 , then we
populate with the current `gas_limit`.
2016-06-18 20:26:44 +02:00
Gav Wood
335bce85e8
Gas price statistics. ( #1291 )
...
* Gas price statistics.
Affects eth_gasPrice.
Added ethcore_gasPriceStatistics.
Closes #1265
* Fix a bug in eth_gasPrice
* Fix tests.
* Revert minor alteration.
* Tests for gas_price_statistics.
- Tests;
- Additional infrastructure for generating test blocks with
transactions.
2016-06-18 10:52:50 +02:00
Robert Habermeier
8ed2b9c7d9
refactor out common parts of write_chunk
2016-06-14 15:32:49 +02:00
Robert Habermeier
5b6ea41d9d
no longer lock the state db
2016-06-13 20:02:20 +02:00
Robert Habermeier
22a19819c6
rename pv64 module to snapshot
2016-06-13 20:00:00 +02:00
Marek Kotewicz
4ef4819bf9
removed try_seal from MinerClient interface ( #1262 )
2016-06-13 18:51:14 +02:00
Robert Habermeier
6ec282fe98
Merge with latest master
2016-06-13 16:35:59 +02:00
Robert Habermeier
98c7677ce1
expose only chunk_blocks and chunk_state APIs
2016-06-13 16:29:26 +02:00
Robert Habermeier
446d59426a
io error handling and slight blockchunker refactoring
2016-06-13 16:21:23 +02:00
Robert Habermeier
f400da405a
state chunk creation tracing
2016-06-13 14:17:47 +02:00
Robert Habermeier
d696a66d71
add account reader. trie walking not functional yet
2016-06-13 12:39:09 +02:00
Robert Habermeier
5c252f2a60
output manifest to correct file
2016-06-11 13:08:22 +02:00
Robert Habermeier
3b1cca5622
add manifestdata struct, write manifest file at the end
2016-06-10 17:19:55 +02:00
Robert Habermeier
f689792481
added tracing
2016-06-10 14:43:01 +02:00
Robert Habermeier
f12add6958
take_snapshot now chunks blocks
2016-06-10 13:10:12 +02:00
Robert Habermeier
997fd93016
finish implementing basic block chunking
2016-06-10 12:45:46 +02:00
Robert Habermeier
5e0ba1c310
take_snapshot and block chunking skeleton
2016-06-10 12:19:50 +02:00
debris
2a92e10fcd
Merge branch 'master' of github.com:ethcore/parity into simplified_block_opening
2016-06-09 11:09:12 -07:00
Robert Habermeier
13968aaa38
Refactor triedb constructors to error on invalid state root ( #1230 )
...
* add TrieError, refactor Trie DB creation
* remove Result type alias due to glob import conflicts
* fix fallout in state.rs
* add debug, display impl for TrieError
* fix fallout in account.rs
* ethcore::Error::TrieError variant
* fix remaining fallout in ethcore crate
* added From<TrieError> impl for Error, removed map_err calls
* fix test breakages
* fix doc tests
* update docs
[ci skip]
2016-06-07 11:44:09 -07:00
Gav Wood
4efd658577
Merge branch 'master' into txtracingforcall
2016-06-06 19:19:32 -07:00
debris
79919bdc3c
simplified block opening
2016-06-06 14:34:23 +02:00
Marek Kotewicz
ba8c7bc959
Merge pull request #1217 from rphmeier/state_at_state_root
...
Verify the state root exists before creating a State
2016-06-06 11:29:39 +02:00
Robert Habermeier
64b74eae43
fix travis build
2016-06-05 23:50:27 +02:00
Robert Habermeier
3dff5a9f3f
add early exit for pruned blocks
2016-06-05 22:14:40 +02:00
Robert Habermeier
e6921144dc
simplify conditional in state_at
2016-06-05 22:05:01 +02:00
Gav Wood
4675b7408f
Merge branch 'switchrpcns' into txtracingforcall
2016-06-05 21:35:58 +02:00
Gav Wood
4153052148
Fix fn call in miner.rs same as client.rs.
2016-06-05 17:23:27 +02:00
Robert Habermeier
aa465fa2cd
conditional style fix
2016-06-03 12:15:27 +02:00
Robert Habermeier
6f850ebdac
does_pruning -> is_pruned
2016-06-03 12:10:10 +02:00
Robert Habermeier
1e10445f82
exists -> contains
2016-06-02 21:23:43 +02:00
Robert Habermeier
6c6229c963
check if state root is valid for old blocks
2016-06-02 20:52:21 +02:00
Robert Habermeier
d7b79c1274
don't return a state in state_at if the db prunes and the block is before guaranteed history
2016-06-02 20:34:38 +02:00
Gav Wood
a132fefcc7
Transaction tracing for eth_call.
2016-06-02 13:50:50 +02:00
Gav Wood
b17581d7de
VM tracing and JSON RPC endpoint for it. ( #1169 )
...
* Groundwork for basic VM tracing.
* RPC endpoint for VM tracing and ser/de types ready.
* Create VMTracer trait.
* Rearchitected VM tracing to reflect existing tracing.
Should more or less work now.
* Integrated VM tracing into JSONRPC.
* Fix ethcore module tests.
* Add tests for VM tracing.
* Fix consensus test code.
* Fix mock tests.
* Added VM trace information for post-execution stuff.
* Fix max-value calls and add "creates" field to getTransaction.
* Tests for VM tracing.
* Don't implement the trait with unimplemented.
* Remove invlaid comment.
* Fix tests.
2016-06-02 12:40:31 +02:00
Gav Wood
b9ec87548d
Minor renaming diff -> state_diff
2016-06-02 12:39:25 +02:00
Gav Wood
bc5c3da2af
Merge branch 'vmtracing' into diffing
2016-06-02 12:28:09 +02:00
Gav Wood
26da38a439
Merge remote-tracking branch 'origin/master' into vmtracing
2016-06-02 11:40:39 +02:00
Nikolay Volf
0c782bf34b
Merge branch 'master' into client-refact
2016-06-01 12:45:04 +02:00
Nikolay Volf
2a08fb8fe3
and conditional dispatch
2016-05-31 21:17:46 +02:00
Gav Wood
34edecd59d
State diffing, exposed through JSONRPC.
2016-05-31 21:03:44 +02:00
Nikolay Volf
a845e08bc6
rename of the trait
2016-05-31 20:33:26 +02:00
Nikolay Volf
8e252d5f1b
refactored to merge client & client
2016-05-31 19:52:53 +02:00
Nikolay Volf
4f732972bc
refactoring to hold miner within the client
2016-05-31 19:01:37 +02:00