dependabot-preview[bot]
f03e066ec5
Bump log from 0.4.7 to 0.4.8 ( #5382 )
...
Bumps [log](https://github.com/rust-lang/log ) from 0.4.7 to 0.4.8.
- [Release notes](https://github.com/rust-lang/log/releases )
- [Changelog](https://github.com/rust-lang-nursery/log/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/log/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-01 14:31:18 -07:00
Rob Walker
f7d3f55566
fix epoch_stakes again ( #5396 )
2019-08-01 14:27:47 -07:00
carllin
6cb2040a1b
Snapshot Packaging Service ( #5262 )
...
* Snapshot serialization and packaging
2019-07-31 17:58:10 -07:00
sakridge
c2fc0f2418
Plumb libra accounts to genesis ( #5333 )
...
* Plumb move_loader to genesis
* Remove core dependency on genesis-programs
2019-07-31 16:10:55 -07:00
Rob Walker
9278201198
fix epoch_stakes ( #5355 )
...
* fix epoch_stakes
* fix stake_state to use stakers_epoch
* don't allow withdrawal before deactivation
2019-07-31 15:13:26 -07:00
Jack May
d09afdbefe
Synchronize and cleanup instruction processor lists ( #5356 )
2019-07-31 14:28:14 -07:00
dependabot-preview[bot]
01d2b4e952
Bump jsonrpc-http-server from 12.1.0 to 13.0.0 ( #5361 )
...
* Bump jsonrpc-http-server from 12.1.0 to 13.0.0
Bumps [jsonrpc-http-server](https://github.com/paritytech/jsonrpc ) from 12.1.0 to 13.0.0.
- [Release notes](https://github.com/paritytech/jsonrpc/releases )
- [Commits](https://github.com/paritytech/jsonrpc/compare/v12.1.0...v13.0.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* Update all jsonrpc crates to v13.0.0
2019-07-31 14:30:47 -06:00
Jack May
6d7cb23c61
Add command to create genesis accounts ( #5343 )
2019-07-30 23:43:12 -07:00
Michael Vines
bd7e269280
Kill rsync ( #5336 )
...
automerge
2019-07-30 22:43:47 -07:00
Pankaj Garg
b05b42d74d
Reduce max blob size ( #5345 )
...
* Reduce max blob size
* ignore test_star_network_push_rstar_200
2019-07-30 22:15:07 -07:00
dependabot-preview[bot]
af733a678a
Bump serde_derive from 1.0.97 to 1.0.98 ( #5314 )
...
Bumps [serde_derive](https://github.com/serde-rs/serde ) from 1.0.97 to 1.0.98.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.97...v1.0.98 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-30 21:45:34 -07:00
Michael Vines
4a336eb5ff
ValidatorConfig path reform: use Path/PathBuf for paths ( #5353 )
2019-07-30 19:47:24 -07:00
dependabot-preview[bot]
b7e08052ae
Bump serde from 1.0.97 to 1.0.98 ( #5315 )
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.97 to 1.0.98.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.97...v1.0.98 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-30 19:46:50 -07:00
Michael Vines
c78db6a94b
ledger path reform: use Path/PathBuf instead of strings ( #5344 )
2019-07-30 15:53:41 -07:00
carllin
7dc5cc26a6
Make max_epoch check in next_leader_at in leader schedule ( #5342 )
2019-07-30 15:51:02 -07:00
Sagar Dhawan
d7a2b790dc
Limit the size of gossip push and gossip pull response ( #5348 )
...
* Limit the size of gossip push and gossip pull response
* Remove Default::default
* Rename var
2019-07-30 15:43:17 -07:00
Pankaj Garg
a7a10e12c7
Forward transactions as packets instead of blobs ( #5334 )
...
* Forward transactions as packets instead of blobs
* clippy
2019-07-30 14:50:02 -07:00
sakridge
8d243221f0
Ignore flaky local cluster tests ( #5347 )
...
* Add logging to local_cluster tests
* Ignore flaky test_leader_failure_4, test_repairman_catchup
And crashing banking benchmarks.
2019-07-30 13:48:46 -07:00
Justin Starry
84368697af
Fix metrics when leader does not report metrics ( #5291 )
2019-07-30 16:18:33 -04:00
sakridge
a642168369
Add move to bench-tps ( #5250 )
2019-07-27 15:28:00 -07:00
Dan Albert
b8835312bb
Update cargo.toml files to 0.18.0-pre0 ( #5303 )
2019-07-27 11:42:06 -06:00
Pankaj Garg
aef7bae60d
Let grace ticks to roll over into multiple leader slots ( #5268 )
...
* Let grace ticks to roll over into multiple leader slots
* address review comments
2019-07-26 11:33:51 -07:00
Tyera Eulberg
dab7de7496
Add confidence cache to BankForks ( #5066 )
...
* Add confidence cache to BankForks
* Include stake-weighted lockouts in cache
* Add cache test
* Move confidence cache updates to handle_votable_bank
* Prune confidence cache on prune_non_root()
* Spin thread to process aggregate_stake_lockouts
* Add long-running thread for stake_weighted_lockouts computation
2019-07-26 11:27:57 -06:00
dependabot-preview[bot]
349ebec629
Bump serde from 1.0.94 to 1.0.97 ( #5285 )
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.94 to 1.0.97.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.94...v1.0.97 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-26 07:22:25 -06:00
Sagar Dhawan
a233a1c822
Fix poh recorder not flushing virtual ticks immediately ( #5277 )
...
* Fix poh not flushing virtual ticks immediately
* Fix test_would_be_leader_soon
2019-07-25 11:08:44 -07:00
dependabot-preview[bot]
7ee8383e02
Bump serde_derive from 1.0.94 to 1.0.97 ( #5279 )
...
Bumps [serde_derive](https://github.com/serde-rs/serde ) from 1.0.94 to 1.0.97.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.94...v1.0.97 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-25 06:47:24 -06:00
Sagar Dhawan
535df0026d
Fixes for Blocktree space amplification and slot deletion ( #5266 )
...
* Fixes for Blocktree space amplification and slot deletion
2019-07-24 17:28:08 -07:00
Sagar Dhawan
937816e67b
Post warning if window service isn't receiving any data ( #5269 )
...
automerge
2019-07-24 12:46:10 -07:00
dependabot-preview[bot]
610a02c518
Bump jsonrpc-ws-server from 12.0.0 to 12.1.0 ( #5261 )
...
Bumps [jsonrpc-ws-server](https://github.com/paritytech/jsonrpc ) from 12.0.0 to 12.1.0.
- [Release notes](https://github.com/paritytech/jsonrpc/releases )
- [Commits](https://github.com/paritytech/jsonrpc/compare/v12.0.0...v12.1.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-24 10:52:44 -06:00
Justin Starry
547a7a345f
Add logs to indicate when the leader changes ( #5253 )
2019-07-23 22:19:20 -04:00
Sagar Dhawan
81f4fd56c7
Log the repairee pubkey when unable to serve them ( #5222 )
...
automerge
2019-07-22 14:13:29 -07:00
dependabot-preview[bot]
a6302acfd5
Bump jsonrpc-http-server from 12.0.0 to 12.1.0 ( #5211 )
...
Bumps [jsonrpc-http-server](https://github.com/paritytech/jsonrpc ) from 12.0.0 to 12.1.0.
- [Release notes](https://github.com/paritytech/jsonrpc/releases )
- [Commits](https://github.com/paritytech/jsonrpc/compare/v12.0.0...v12.1.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-22 10:34:27 -06:00
Michael Vines
0d8f5379a0
Add time units
2019-07-22 08:22:21 -07:00
Sagar Dhawan
a07b17b9b5
Drop older slots in the ledger ( #5188 )
...
* Add facility to delete blocktree columns in range
* Add ledger cleanup service
* Add local_cluster test
2019-07-20 13:13:55 -07:00
dependabot-preview[bot]
0958905df8
Bump reqwest from 0.9.18 to 0.9.19 ( #5201 )
...
Bumps [reqwest](https://github.com/seanmonstar/reqwest ) from 0.9.18 to 0.9.19.
- [Release notes](https://github.com/seanmonstar/reqwest/releases )
- [Changelog](https://github.com/seanmonstar/reqwest/blob/master/CHANGELOG.md )
- [Commits](https://github.com/seanmonstar/reqwest/compare/v0.9.18...v0.9.19 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-19 16:13:34 -06:00
Tyera Eulberg
3f54c0f1a6
Update struct order arbitrarily to match rpc output ( #5197 )
2019-07-19 11:45:04 -06:00
dependabot-preview[bot]
4684faa5e8
Bump jsonrpc-core from 12.0.0 to 12.1.0 ( #5143 )
...
Bumps [jsonrpc-core](https://github.com/paritytech/jsonrpc ) from 12.0.0 to 12.1.0.
- [Release notes](https://github.com/paritytech/jsonrpc/releases )
- [Commits](https://github.com/paritytech/jsonrpc/compare/v12.0.0...v12.1.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-19 09:59:56 -07:00
sakridge
8b69998379
Lower recovery messages ( #5181 )
2019-07-19 09:20:14 -07:00
dependabot-preview[bot]
19e131d710
Bump jsonrpc-derive from 12.0.0 to 12.1.0 ( #5193 )
...
Bumps [jsonrpc-derive](https://github.com/paritytech/jsonrpc ) from 12.0.0 to 12.1.0.
- [Release notes](https://github.com/paritytech/jsonrpc/releases )
- [Commits](https://github.com/paritytech/jsonrpc/compare/v12.0.0...v12.1.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-19 07:34:48 -07:00
dependabot-preview[bot]
9fd34cd985
Bump untrusted from 0.6.2 to 0.7.0 ( #5194 )
...
Bumps [untrusted](https://github.com/briansmith/untrusted ) from 0.6.2 to 0.7.0.
- [Release notes](https://github.com/briansmith/untrusted/releases )
- [Commits](https://github.com/briansmith/untrusted/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-19 07:34:04 -07:00
Michael Vines
adfb8ff2a1
Add getEpochInfo() and getLeaderSchedule() RPC methods ( #5189 )
...
* Add getLeaderSchedule() RPC method
* Add getEpochInfo() RPC method
* Add JSON RPC docs
2019-07-19 07:31:18 -07:00
Rob Walker
afa05acb32
more replay_stage grooming ( #5163 )
2019-07-18 14:54:27 -07:00
Sagar Dhawan
a3a91ba222
Fix misleading variable name ( #5176 )
...
automerge
2019-07-18 14:07:32 -07:00
Sagar Dhawan
751b54b60b
Skip sleeping in replay stage if a bank was recently processed ( #5161 )
...
* Skip sleeping in replay stage if a bank was recently processed
* Remove return
2019-07-18 12:04:53 -07:00
Sagar Dhawan
6ad9dc18d8
Add ability to prune ledger ( #5128 )
...
* Add utility to prune the ledger
* Add tests
* Fix clippy
* Fix off by one
* Rework to force delete every column
* Minor fixup
2019-07-17 14:42:29 -07:00
Rob Walker
027ebb6670
no more OUT_DIR ( #5139 )
...
* no more OUT_DIR
* no more OUT_DIR
* more information about failure
2019-07-17 14:27:58 -07:00
Rob Walker
0ffd91df27
groom poh_recorder ( #5127 )
...
* groom poh_recorder
* fixup
* nits
* slot() from the outside means "the slot the recorder is working on"
* remove redundant check
* review comments, put next_tick back in the "is reset" check
* remove redundant check
2019-07-17 14:10:15 -07:00
Sagar Dhawan
10d85f8366
Add weighted shuffle support for values upto u64::MAX ( #5151 )
...
automerge
2019-07-17 12:44:28 -07:00
dependabot-preview[bot]
bbd0455418
Bump log from 0.4.6 to 0.4.7 ( #5144 )
...
Bumps [log](https://github.com/rust-lang/log ) from 0.4.6 to 0.4.7.
- [Release notes](https://github.com/rust-lang/log/releases )
- [Changelog](https://github.com/rust-lang-nursery/log/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/log/compare/0.4.6...0.4.7 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-17 09:25:57 -06:00
Rob Walker
f88c72c41e
stress tweaks ( #5140 )
2019-07-16 22:04:40 -07:00
sakridge
94db9cd412
Reduce banking_stage bench copy-paste code and fix programs bench ( #4926 )
2019-07-16 18:28:18 -07:00
Justin Starry
bf5bce50a4
Fix stake pruning test ( #5124 )
2019-07-16 13:20:03 -04:00
Rob Walker
fe87c05423
fix transaction_count ( #5110 )
...
* fix transaction_count
* add sig count to bank hash
2019-07-15 13:42:59 -07:00
sakridge
40faaef9da
Revert "Logging ( #5017 )" ( #5096 )
...
This reverts commit b50a3bae72
.
2019-07-14 18:48:15 -07:00
Rob Walker
0d27515d09
tmp dirs target to farf ( #5079 )
2019-07-12 18:28:42 -07:00
Pankaj Garg
1c966aac25
Facility to generate a blocktree prune list using ledger tool ( #5041 )
...
automerge
2019-07-12 16:58:13 -07:00
Sagar Dhawan
7aecb87bce
Add a version field to blobs ( #5057 )
2019-07-12 13:43:19 -07:00
Michael Vines
ebcdc06dc3
Restore ledger-tool print and json commands ( #5048 )
...
* Restore ledger-tool print and json commands
* Remove obsolete read_ledger()
2019-07-11 20:33:36 -07:00
Sagar Dhawan
0a36a78133
Fix replicator segment selection ( #5046 )
2019-07-11 18:31:41 -07:00
Trent Nelson
5698d48dc8
merkle-tree: Make instantiation a little less painful ( #5037 )
...
automerge
2019-07-11 15:15:08 -07:00
Pankaj Garg
4c90898f0b
Dynamic erasure set configuration ( #5018 )
...
* Use local erasure session to create/broadcast coding blobs
* Individual session for each recovery (as the config might be different)
* address review comments
* new constructors for session and coding generator
* unit test for dynamic erasure config
2019-07-11 13:58:33 -07:00
Tyera Eulberg
b2c776eabc
Fix getProgramAccounts RPC ( #5024 )
...
* Use scan_accounts to load accounts by program_id
* Add bank test
* Use get_program_accounts in RPC
2019-07-11 12:58:28 -06:00
Sagar Dhawan
e4926e4110
Set exit when replicator run exits ( #5016 )
2019-07-10 16:27:18 -07:00
carllin
b50a3bae72
Logging ( #5017 )
...
* Add logging to replay_stage
* locktower logging
2019-07-10 15:52:31 -07:00
Sagar Dhawan
35ec7a5156
Decouple turns from segments in PoRep ( #5004 )
...
* Decouple Segments from Turns in Storage
* Get replicator local cluster tests running in a reasonable amount of time
* Fix unused imports
* Document new RPC APIs
* Check for exit while polling
2019-07-10 13:33:29 -07:00
Mark E. Sinclair
a383ea532f
Implement new Index Column ( #4827 )
...
* Implement new Index Column
* Correct slicing of blobs
* Mark coding blobs as coding when they're recovered
* Prevent broadcast stages from mixing coding and data blobs in blocktree
* Mark recovered blobs as present in the index
* Fix indexing error in recovery
* Fix broken tests, and some bug fixes
* increase min stack size for coverage runs
2019-07-10 11:08:17 -07:00
Rob Walker
f537482c86
remove set_leader from cluster_info ( #4998 )
2019-07-09 22:06:47 -07:00
Sagar Dhawan
b8e7736af2
Move SLOTS_PER_SEGMENT to genesis ( #4992 )
...
automerge
2019-07-09 16:48:40 -07:00
Rob Walker
f777a1a74c
groom replay_stage and poh_recorder ( #4961 )
...
* groom replay_stage and poh_recorder
* fixup
* fixup
* don't freeze() parent, need to review bank_forks and maybe vote...
2019-07-09 15:36:30 -07:00
carllin
22ef3c7c54
Blob verify ( #4951 )
...
* Ensure signable data is not out of range
* Add a broadcast stage that puts bad sizes in blobs
* Resign blob after modifyign size
* Remove assertions that fail when size != meta.size
2019-07-08 18:21:52 -07:00
Rob Walker
417e8d5064
fix blocktree_processor test_process_entries_stress ( #4967 )
2019-07-08 18:11:58 -07:00
Trent Nelson
1feb9bea21
Harden Merkle Tree against second pre-image attacks ( #4925 )
...
* merkle-tree: Harden against second pre-image attacks
* core/chacha: Bump test golden hash
2019-07-08 19:00:06 -06:00
Trent Nelson
c5ba2e0883
bank_forks test stability ( #4959 )
...
automerge
2019-07-08 15:55:49 -07:00
Rob Walker
eb4edd75e6
make bank commit_credits non public ( #4944 )
...
* make bank commit_credits non pub
* track down create() failure
* move bank_client to process_transaction(), which commits credits
2019-07-08 15:37:54 -07:00
Sagar Dhawan
bb6bcd79c0
Handle replicator errors without panicking ( #4955 )
...
* Handle replicator errors without panicking
* Unwelcome println
2019-07-08 12:43:35 -07:00
Sagar Dhawan
ef7022d638
Refactor replicators to not block on startup ( #4932 )
...
* Refactor replicators to not block on startup
* Ignore setup failure
2019-07-08 10:17:25 -07:00
carllin
2aac094f63
Ensure blobs are deserializable without unwrapping ( #4948 )
...
* Return result from deserializing blobs in blocktree instead of assuming deserialization will succeed
* Mark bad deserialization as dead fork
* Add test for corrupted blobs in blocktree and replay_stage
2019-07-07 14:37:12 -07:00
carllin
fc180f4cbf
Halve stake of malicious validator ( #4937 )
2019-07-05 15:45:39 -07:00
dependabot-preview[bot]
db13b52e6a
Bump serde_json from 1.0.39 to 1.0.40 ( #4881 )
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.39 to 1.0.40.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.39...v1.0.40 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-03 16:15:56 -06:00
Rob Walker
2ec5d2c7f5
start local_cluster nodes from genesis blocks ( #4928 )
2019-07-03 14:03:52 -07:00
Sagar Dhawan
55b8ff72d0
Enable parallel tests to reduce test time ( #4919 )
...
* Add crate to serialize some tests
* Ignore unused attribute warning
* Enable parallel run in CI
* Try to fix lograte tests
* Fix interdependent counter tests
2019-07-02 17:35:03 -07:00
Rob Walker
12ef0c25b5
change vote commission to u8 (from u32) ( #4887 )
...
automerge
2019-07-02 14:18:11 -07:00
Pankaj Garg
3615445a12
Broadcast run for injecting fake blobs in turbine ( #4889 )
...
* Broadcast run for injecting fake blobs in turbine
* address review comments
* new local cluster test that uses fake blob broadcast
* added a test to make sure tvu_peers ordering is guaranteed
2019-07-01 17:54:03 -07:00
Sagar Dhawan
65adce65fa
Always send pull responses to the origin addr ( #4894 )
2019-07-01 16:49:05 -07:00
carllin
c1953dca8f
Cleanup some of banking stage ( #4878 )
...
* Add committable transactions that cause errors like InstructionErrors back to retryable list on MaxHeightReached
* Remove unnecessary logic
* Add comments/renaming for clarity
2019-07-01 12:14:40 -07:00
Tyera Eulberg
d7ed3b8024
Add RPC api to return program accounts ( #4876 )
...
automerge
2019-06-29 09:59:07 -07:00
sakridge
a89589a1d5
Add Measure abstraction over measuring time intervals ( #4851 )
...
Allows one to swap in different implementations. This provides
the normal Insant::now() -> .elapsed() path.
2019-06-29 15:34:49 +02:00
carllin
75b494d4a3
Lower warn to info, fetch from validator root instead of root + 1 ( #4870 )
...
* Lower warn to info, fetch from validator root instead of root + 1
* b/c -> because
2019-06-28 16:17:20 -07:00
dependabot-preview[bot]
f0191a98ab
Bump serde from 1.0.93 to 1.0.94 ( #4864 )
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.93 to 1.0.94.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.93...v1.0.94 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-28 15:07:16 -07:00
sakridge
0fa1af5d47
Cleanup num_threads() and batch_limit numbers ( #4852 )
2019-06-28 10:55:24 +02:00
Tyera Eulberg
66552d7047
Credit-Only Accounts: Cache account balance for thread-safe load/store ( #4691 )
...
* Implement CreditOnlyLocks
* Update credit-only atomic on account load
* Update credit-only atomic after bank.freeze_lock; store credits if all credit-only lock references are dropped
* Commit credit-only credits on bank freeze
* Update core to CreditAccountLocks
* Impl credit-only in System Transfer
* Rework CreditAccountLocks, test, and fix bugs
* Review comments: Pass CreditAccountLocks by reference; Tighten up insert block
* Only store credits on completed slot
* Check balance in bench_exchange funding to ensure commit_credits has completed
* Add is_debitable info to KeyedAccount meta to pass into programs
* Reinstate CreditOnlyLocks check on lock_account
* Rework CreditAccountLocks to remove strong_count usage
* Add multi-threaded credit-only locks test
* Improve RwLocks usage
* Review comments: panic if bad things happen; tighter code
* Assert lock_accounts race does not happen
* Revert panic if bad things happen; not a bad thing
2019-06-27 17:25:10 -04:00
dependabot-preview[bot]
979df17328
Bump serde_derive from 1.0.93 to 1.0.94 ( #4856 )
...
Bumps [serde_derive](https://github.com/serde-rs/serde ) from 1.0.93 to 1.0.94.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.93...v1.0.94 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-27 13:18:19 -07:00
carllin
6cec61dcfc
Re-enable tests ( #4848 )
2019-06-27 12:09:14 -07:00
sakridge
a9b044f0ab
Fix banking_stage benchmark sends ( #4850 )
...
Only one big batch was being sent so only 1
thread active at a time in the benchmark.
2019-06-27 10:37:33 +02:00
sakridge
fbea9d8621
Page-pin packet memory for cuda ( #4250 )
...
* Page-pin packet memory for cuda
Bring back recyclers and pin offset buffers
* Add packet recycler to streamer
* Add set_pinnable to sigverify vecs to pin them
* Add packets reset test
* Add test for recycler and reduce the gc lock critical section
* Add comments/tests to cuda_runtime
* Add recycler to recv_blobs path.
* Add trace/names for debug and PacketsRecycler to bench-streamer
* Predict realloc and unpin beforehand.
* Add helper to reserve and pin
* Cap buffered packets length
* Call cuda wrapper functions
2019-06-27 09:32:32 +02:00
carllin
97c97db97e
Fix early exit clearing all buffered packets ( #4810 )
2019-06-26 22:39:50 -07:00
carllin
9a52b01171
Change to crossbeam channel in banking_threads VerifiedReceiver ( #4822 )
...
* Add crossbeam channel instead of channel in banking_stage
2019-06-26 18:42:27 -07:00
Sagar Dhawan
df1c473341
Add storage point tracking and tie in storage rewards to economics ( #4824 )
...
* Add storage point tracking and tie in storage rewards to epochs and economics
* Prevent validators from updating their validations for a segment
* Fix test
* Retain syscall scoping for readability
* Update Credits to own epoch tracking
2019-06-26 10:40:03 -07:00
Rob Walker
8a64e1ddc3
add fee burning ( #4818 )
2019-06-26 10:13:21 -07:00
dependabot-preview[bot]
eb47538a82
Bump chrono from 0.4.6 to 0.4.7 ( #4812 )
...
Bumps [chrono](https://github.com/chronotope/chrono ) from 0.4.6 to 0.4.7.
- [Release notes](https://github.com/chronotope/chrono/releases )
- [Changelog](https://github.com/chronotope/chrono/blob/master/CHANGELOG.md )
- [Commits](https://github.com/chronotope/chrono/compare/v0.4.6...v0.4.7 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-26 07:58:41 -06:00
Justin Starry
861d6468ca
Stake weighted pruning for the gossip network ( #4769 )
...
* Stake weighted pruning
* Fix compile error
* Fix clippy errors
* Add helper for creating a connected staked network
* Bug fixes and test groundwork
* Small refactor
* Anatoly's feedback and tests
* Doc updates
* @rob-solana's feedback
* Fix test bug and add log trace
* @rob-solana's feedback
2019-06-26 00:30:16 -07:00
carllin
d6737b8cc9
Set epoch schedule in set_root in leader schedule cache ( #4821 )
2019-06-26 00:19:48 -07:00
Trent Nelson
f20ba423ca
Merklize PoH TX mixin hash ( #4644 )
2019-06-25 14:44:27 -06:00
Sathish
9e7f618cff
Set proper count value for account stores ( #4797 )
...
* set count values for store accounts
* Use AppendVecId type
2019-06-25 07:21:45 -07:00
Sagar Dhawan
74a06e4230
Update thinclient to resend the same tx until its blockhash expires ( #4807 )
2019-06-24 16:46:34 -07:00
Pankaj Garg
3f8ff23125
Forward transactions to the leader for next Nth slot ( #4806 )
...
* review comments
2019-06-24 15:56:50 -07:00
anatoly yakovenko
29611fb61d
tower consensus naming ( #4598 )
...
s/locktower/tower/g
2019-06-24 13:41:23 -07:00
Michael Vines
206e62271b
Ignore flaky test_two_unbalanced_stakes ( #4794 )
...
automerge
2019-06-23 20:55:43 -07:00
dependabot-preview[bot]
4e78354ab6
Bump serde_derive from 1.0.92 to 1.0.93 ( #4790 )
...
Bumps [serde_derive](https://github.com/serde-rs/serde ) from 1.0.92 to 1.0.93.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.92...v1.0.93 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-23 20:23:41 -07:00
dependabot-preview[bot]
0e1480b84e
Bump serde from 1.0.92 to 1.0.93 ( #4791 )
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.92 to 1.0.93.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.92...v1.0.93 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-23 17:23:41 -07:00
Sagar Dhawan
11992946a4
Add storage reward pools ( #4779 )
2019-06-22 17:18:35 -07:00
Dan Albert
9911942dbd
Increment cargo.toml files to v0.17.0
2019-06-22 04:35:25 +00:00
Trent Nelson
8acbb4ab2f
Bank cap rpc ( #4774 )
...
* core/rpc: Name magic number for minted lamports in tests genesis block
* core/rpc: Expose bank::capitalization() via getSolTotalSupply RPC method
* book: Add entry for getTotalSupply RPC method
2019-06-21 21:00:26 -07:00
Rob Walker
a49f5378e2
rewrite vote credits redemption to eat from rewards_pools on an epoch-sensitive basis ( #4775 )
...
* move redemption to rewards pools
* rewrite redemption, touch a few other things
* re-establish test coverage
2019-06-21 20:43:24 -07:00
Michael Vines
f39e74f0d7
serde the full FeeCalculator ( #4778 )
...
automerge
2019-06-21 17:23:26 -07:00
Sagar Dhawan
22b767308a
Add insturctions to run a replicator on testnet ( #4733 )
2019-06-21 16:32:23 -07:00
Michael Vines
36aa876833
Avoid linking with CUDA directly
2019-06-21 15:26:22 -07:00
carllin
06ba0b7279
Remove holding cluster_info lock while forwarding packets ( #4773 )
2019-06-21 15:21:49 -07:00
Sagar Dhawan
da925142d1
Update replicator ports and silence socket timeout on windows ( #4770 )
...
automerge
2019-06-21 11:28:52 -07:00
dependabot-preview[bot]
deb83cdef6
Bump rayon from 1.0.3 to 1.1.0 ( #4729 )
...
automerge
2019-06-21 09:32:41 -07:00
dependabot-preview[bot]
20db335aed
Bump reqwest from 0.9.17 to 0.9.18
...
Bumps [reqwest](https://github.com/seanmonstar/reqwest ) from 0.9.17 to 0.9.18.
- [Release notes](https://github.com/seanmonstar/reqwest/releases )
- [Changelog](https://github.com/seanmonstar/reqwest/blob/master/CHANGELOG.md )
- [Commits](https://github.com/seanmonstar/reqwest/compare/v0.9.17...v0.9.18 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-21 08:50:49 -07:00
Michael Vines
36c9e22e3d
Revert "Dynamic erasure ( #4653 )"
...
This reverts commit ada4d16c4c
.
2019-06-20 20:53:03 -07:00
Mark E. Sinclair
ada4d16c4c
Dynamic erasure ( #4653 )
...
Remove erasure-related constants
Remove unneeded `Iterator::collect` call
Document erasure module
Randomize coding blobs used for repair
2019-06-20 20:27:41 -05:00
carllin
aacb38864c
Mark dead forks in replay stage ( #4715 )
...
* Add DeadSlots column family
* Filter dead forks from get_slots_since
* Mark erroring slots as dead in replay stage, add test
* Mark dead forks in progress instead of removing them
* Fix logging process_entries failures in replay_stage
* Unignore test_fail_entry_verification_leader
2019-06-20 15:50:41 -07:00
Michael Vines
4a32bc48d2
ignore unstable test_repairman_catchup
2019-06-20 09:24:11 -07:00
Pankaj Garg
9800e09431
Thread pool for par_iter in EntrySlice::verify ( #4732 )
...
* Use thread pool for entry verify par iter
* some performance metrics
* check batch size and use CPU for smaller batches
2019-06-19 16:31:32 -07:00
carllin
61483c18ca
Change seed for retransmit to use blob signature ( #4727 )
...
* Switch seed for retransmit to use blob signature
* Use seed_len
* Use last bytes of signature as seed instead of first bytes
2019-06-19 15:36:06 -07:00
Rob Walker
41fbdc6e08
use stake ( #4721 )
2019-06-19 11:54:52 -07:00
carllin
46bb79df29
Support for custom BroadcastStage in local cluster tests ( #4716 )
...
* Refactor BroadcastStage to support custom implementations, add FailEntryVerificationBroadcastRun implementation
* Plumb switch on broadcast type through validator
* Add test for validator generating non-verifiable entries to local_cluster
* Fix bad initializers
* Refactor broadcast run code into utils
2019-06-19 00:13:19 -07:00
dependabot-preview[bot]
2da7c7fbd3
Bump nix from 0.14.0 to 0.14.1 ( #4642 )
...
automerge
2019-06-18 11:36:26 -07:00
Michael Vines
5683282c94
Update to solana-perf-libs v0.14.0, with support for both CUDA 10.0 and 10.1
2019-06-18 10:41:03 -07:00
Sathish Ambley
8b41a5d725
periodically save config in separate folders
2019-06-17 22:48:27 -07:00
Sathish Ambley
7fd879b417
Restart validator nodes from snapshots
2019-06-17 22:48:27 -07:00
Sathish Ambley
dc5c6e7cf8
validator restart
2019-06-17 22:48:27 -07:00
Michael Vines
feeaad619a
Avoid panic if no rpc peers exist
2019-06-17 19:47:45 -07:00
sakridge
9cafd1f85e
Change check_txs to ignore recv errors and re-enable test ( #4593 )
...
Use more chunks to avoid duplicate signature failures:
Duplicate signatures can occur because bank.clear_signatures()
can occur before the bank has actually committed the signatures
to the status cache and then error out on the next set of transactions.
2019-06-17 19:04:21 -07:00
Sagar Dhawan
cc48773b03
Add "download from replicator" utility ( #4709 )
...
automerge
2019-06-17 18:12:13 -07:00
Sagar Dhawan
8fbf0e2d9f
Update replicators to use the storage blockhash to generate offsets ( #4712 )
2019-06-17 16:39:26 -07:00
Michael Vines
5bf87de136
Add obvious log message indicating CUDA feature state
2019-06-17 11:01:55 -07:00
Michael Vines
97a136ea20
Set rustc-cfg=cuda explicitly, also code cleanup
2019-06-17 11:01:55 -07:00
Rob Walker
4c6a6d63bf
add MiningPools, fund validator MiningPools from inflation ( #4676 )
...
* add MiningPool fund validator MinigPools from inflation
* fixup
* finish rename of MINIMUM_SLOT_LENGTH to MINIMUM_SLOTS_PER_EPOCH
* deterministic miningpool location
* point_value, not credit_value... use f64
2019-06-14 11:38:37 -07:00
Sagar Dhawan
119467df59
Add storage mining pool to genesis and implement automatic reward redeeming ( #4683 )
...
* Add storage mining pool to genesis and implement automatic reward collection
* Address review comments
2019-06-13 22:30:51 -07:00
Sagar Dhawan
b1ac8f933b
Fix storage program space issues and limit storage transaction data ( #4677 )
2019-06-13 17:53:54 -07:00
Michael Vines
8628f33d0b
Fix HostId field in the testnet dashboard
2019-06-13 16:09:09 -07:00
carllin
8c1b9a0b67
Data plane verification ( #4639 )
...
* Add signature to blob
* Change Signable trait to support returning references to signable data
* Add signing to broadcast
* Verify signatures in window_service
* Add testing for signatures to erasure
* Add RPC for getting current slot, consume RPC call in test_repairman_catchup for more deterministic results
2019-06-12 16:43:05 -07:00
Michael Vines
d807217be7
Simplify and camelCase getEpochVoteAccounts RPC API ( #4658 )
...
* Simplify and camelCase getEpochVoteAccounts RPC API
* Set a commission for testing
2019-06-12 14:12:08 -07:00
Sagar Dhawan
8019bff391
Fixes for storage program and rework storage stage ( #4654 )
...
automerge
2019-06-11 18:27:47 -07:00
Rob Walker
697228a484
rpc vote_accounts by ecurrent pocch, not stakers epoch ( #4651 )
2019-06-11 16:57:47 -07:00
Rob Walker
3217a1d70c
use highest staked node as bootstrap leader, remove bootstrap_leader from genesis_block ( #4635 )
...
* use highest staked node as bootstrap leader, remove bootstrap_leader from genesis_block
* clippy
* fixup
* fixup
2019-06-11 11:44:58 -07:00
dependabot-preview[bot]
1d957b6b80
Bump byteorder from 1.3.1 to 1.3.2 ( #4641 )
...
Bumps [byteorder](https://github.com/BurntSushi/byteorder ) from 1.3.1 to 1.3.2.
- [Release notes](https://github.com/BurntSushi/byteorder/releases )
- [Changelog](https://github.com/BurntSushi/byteorder/blob/master/CHANGELOG.md )
- [Commits](https://github.com/BurntSushi/byteorder/compare/1.3.1...1.3.2 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-11 11:21:26 -07:00
Rob Walker
e56430c9fb
make runtime depend on bpf_loader ( #4601 )
...
* make runtime depend on bpf_loader
* remove vote redundancy, move bpf_loader to genesis, export program\! from bpf_loader crate
* move bpf_loader specification into genesis
* bpf tests to use genesis with bpf
* need to avoid depending on programs, except for macros
2019-06-11 10:27:22 -07:00
Michael Vines
e4d8ea11ac
Make lamports_per_signature dynamic based on cluster load ( #4562 )
...
* Make lamports_per_signature dynamic based on cluster load
* Move transaction-fees.md to implemented
2019-06-10 22:18:32 -07:00
carllin
a4035a3c65
Remove record locks and parent locks from accounts ( #4633 )
...
* Revert "Fix parent record locks usage in child banks (#4159 )"
This reverts commit 69eeb7cf08
.
* Revert "Fix DuplicateSignatures caused by races on frozen banks (#3819 )"
This reverts commit 083090817a
.
* Remove unused imports
2019-06-10 22:05:46 -07:00
dependabot-preview[bot]
64d63966c7
Bump jsonrpc crates to 12.0.0 ( #4553 )
...
* Bump jsonrpc-pubsub from 11.0.0 to 12.0.0
Bumps [jsonrpc-pubsub](https://github.com/paritytech/jsonrpc ) from 11.0.0 to 12.0.0.
- [Release notes](https://github.com/paritytech/jsonrpc/releases )
- [Commits](https://github.com/paritytech/jsonrpc/commits/v12.0.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* Update all jsonrpc crates
2019-06-10 13:22:57 -06:00
Rob Walker
a18c0e34f4
add activate_stake to stake_api ( #4600 )
2019-06-10 12:17:29 -07:00
Michael Vines
0dbe5ee559
Add chacha-sys crate ( #4620 )
...
* af9ff9c7f9/src/cpu-crypt
* Add chacha-sys crate
* Remove chacha feature
* Remove erasure feature
* Add .gitignore
2019-06-10 07:14:02 -07:00
TristanDebrunner
0c4cb76acf
Add GPU based PoH verification ( #4524 )
...
* Add GPU poh verify
* Switch to single PoH verify function
* Add EntrySlice verify tests with hashes and txs
* Add poh-verify benchmarks
2019-06-08 10:21:43 -06:00
Pankaj Garg
ac6dbf8f04
Broadcast blobs even if the peers have no stake ( #4597 )
2019-06-07 14:12:27 -07:00
carllin
c9d63204eb
Replace unneeded seqcst with relaxed on atomic operations ( #4587 )
2019-06-06 23:53:21 -07:00
Michael Vines
cfab54511b
Ignore bench_banking_stage_multi_accounts ( #4590 )
...
automerge
2019-06-06 21:47:07 -07:00
Pankaj Garg
194491ae96
Removed some dead code ( #4563 )
...
* Removed some dead code
* remove dead code from Replicator
2019-06-06 14:26:12 -07:00
anatoly yakovenko
82df267ec9
s/avalanche/turbine ( #4561 )
...
* s/avalanche/turbine/g
2019-06-06 12:48:40 -07:00
Michael Vines
51aacfe3ca
Use pure-rust reed-solomon-erasure for windows ( #4548 )
2019-06-04 21:49:27 -07:00
Michael Vines
8ec5a47027
Add EntryWriter::write() stub for windows ( #4546 )
2019-06-04 20:15:37 -07:00
carllin
5bd3eb4557
Up number of threads ( #4541 )
2019-06-04 18:01:28 -07:00
dependabot-preview[bot]
e9cb4a12dc
Bump serde_derive from 1.0.91 to 1.0.92 ( #4505 )
...
automerge
2019-06-04 15:48:23 -07:00
Sagar Dhawan
de5cad9211
Add account owner to Storage Accounts ( #4537 )
...
* Add account owner to Storage Accounts
* Fix tests
2019-06-04 14:52:52 -07:00
dependabot-preview[bot]
ce2ce76958
Bump serde from 1.0.91 to 1.0.92 ( #4504 )
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.91 to 1.0.92.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.91...v1.0.92 )
2019-06-04 14:32:09 -07:00
dependabot-preview[bot]
d77c98530f
Bump libc from 0.2.55 to 0.2.58 ( #4514 )
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.55 to 0.2.58.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.55...0.2.58 )
2019-06-04 14:31:06 -07:00
Michael Vines
3635a68129
solana-install now compiles for Windows ( #4531 )
...
automerge
2019-06-04 08:51:20 -07:00
Pankaj Garg
70a16e91a5
Randomize avalanche broadcast peer table for each blob ( #4529 )
...
* fix clippy warnings
2019-06-03 20:38:05 -07:00
Sagar Dhawan
a77775cb58
Move validation submissions into its own fn ( #4528 )
...
automerge
2019-06-03 18:27:06 -07:00
Sagar Dhawan
167e15a5ae
Update replicator sampling and proof generation ( #4522 )
...
* Update replicator sampling and proof generation
* Clippy
2019-06-03 17:27:28 -07:00
Rob Walker
c56052ff16
remove from_account from stake_instruction ( #4502 )
2019-06-03 09:04:51 -07:00
Pankaj Garg
3574469052
Add random distribution for avalanche peers ( #4493 )
...
* Add random distribution for avalanche peers
* fix clippy warnings
* bug fixes
* nits
2019-06-01 07:55:43 -07:00
Rob Walker
028e111fbc
remove payer from vote instructions ( #4475 )
2019-05-31 11:45:17 -07:00
Sathish
182096dc1a
Create bank snapshots ( #4244 )
...
* Revert "Revert "Create bank snapshots (#3671 )" (#4243 )"
This reverts commit 81fa69d347
.
* keep saved and unsaved copies of status cache
* fix format check
* bench for status cache serialize
* misc cleanup
* remove appendvec storage on purge
* fix accounts restore
* cleanup
* Pass snapshot path as args
* Fix clippy
2019-05-30 21:31:35 -07:00
Sagar Dhawan
b8aff218e2
Shutdown all services before bailing replicator init ( #4487 )
...
automerge
2019-05-30 14:36:47 -07:00
carllin
045d4d5294
Unignore test test_repairman_catchup ( #4484 )
2019-05-30 13:21:12 -07:00
Michael Vines
39b40dfff8
Remove runtime dependency on storage ( #4480 )
2019-05-30 10:54:28 -07:00
carllin
c82f4a1b6d
Unignore test_repairman_catchup
2019-05-29 21:59:41 -07:00
Michael Vines
7a021dff05
Beautify Cargo.tomls with |cargo tomlfmt| ( #4477 )
2019-05-29 18:30:49 -07:00
carllin
348c2263ba
Remove genesis blockhash ( #4471 )
...
* Remove genesis blockhash
* Remove genesis blockhash from tests
* Fix golden
2019-05-29 17:29:02 -07:00
Pankaj Garg
b5324063f1
Use thread pools for rayon par_iter ( #4473 )
...
* Use thread pools for rayon par_iter
* address review comments
* cleanup
2019-05-29 17:16:36 -07:00
Sagar Dhawan
6ed071c4dd
Fix storage stage operating on empty slots ( #4474 )
...
* Fix storage stage operating on empty slots
* Reduce fn argument count
* Fix tests
2019-05-29 15:01:20 -07:00
sakridge
4404634b14
Coalesce packets better ( #4456 )
2019-05-29 12:17:50 -07:00
Rob Walker
6a1de33138
tighten up packets_to_blobs ( #4464 )
...
* tighten up packets_to_blobs
* missed a test
2019-05-29 10:08:35 -07:00
carllin
534244b322
Fix set_roots to use cached bank parents instead of searching blocktree ( #4466 )
2019-05-29 09:43:22 -07:00
Sagar Dhawan
335dfdc4d5
Fix Gossip skipping push for some values ( #4463 )
...
* Make gossip skip over values from Pruned nodes
* Add test and init blooms to contain the origin
2019-05-28 18:39:40 -07:00
Pankaj Garg
c8a03c7b3d
Save RNG for generating random storage sampling offsets ( #4450 )
...
* Save RNG for generating random storage sampling offsets
* fix clippy
* fix stable-perf
* fix chacha
2019-05-28 14:14:46 -07:00
sakridge
5340800cea
Add some optimizing to ThinClient ( #4112 )
...
Can create a multi-socketed ThinClient which will use request time
from get_recent_blockhash to tune for the best node to talk to.
2019-05-27 20:54:44 -07:00
dependabot-preview[bot]
13c2e50b38
Bump sys-info from 0.5.6 to 0.5.7 ( #4445 )
...
automerge
2019-05-27 20:31:12 -07:00
carllin
65f89d6729
Bump logging level of validator procsesing errors ( #4442 )
2019-05-27 16:19:38 -07:00
Michael Vines
ed6a438c51
v0.16.0
2019-05-26 19:42:15 -07:00
Michael Vines
2adb98a4a0
Ignore flaky test_repairman_catchup ( #4439 )
...
automerge
2019-05-26 12:24:20 -07:00
carllin
aa3c00231a
Fix should_update check to update EpochSlots in gossip ( #4435 )
...
automerge
2019-05-25 06:44:40 -07:00
carllin
d772a27936
Plumb ClusterInfoRepairListener ( #4428 )
...
automerge
2019-05-24 19:20:09 -07:00
Rob Walker
0302f13b97
add datapoint for corrupt vote_account ( #4424 )
2019-05-24 18:34:56 -07:00
Pankaj Garg
1f71d05299
remove copying of forwarded packets ( #4425 )
...
automerge
2019-05-24 17:35:09 -07:00
Sagar Dhawan
4c9b7c9d2b
Submit all incoming proofs as valid ( #4377 )
2019-05-24 14:49:10 -07:00
carllin
cf4bb70d80
Rename id to pubkey in cluster_info_repair_listener ( #4421 )
2019-05-24 04:31:32 -07:00
carllin
57f8a15b96
Fix issues in ClusterInfoRepairListener ( #4418 )
...
* Sort repairmen before shuffling so order is the same across all validators
* Reduce repair redundancy to 1 for now
* Fix local cache of roots so that 1) Timestamps are only updated to acknowledge a repair was sent 2) Roots are updated even when timestamps aren't updated to keep in sync with network
* Refactor code, add test
2019-05-24 00:47:51 -07:00
Michael Vines
cfe5afd34c
_id => _pubkey variable renaming ( #4419 )
...
* wallet: rename *_account_id to *_account_pubkey
* s/from_id/from_pubkey/g
* s/node_id/node_pubkey/g
* s/stake_id/stake_pubkey/g
* s/voter_id/voter_pubkey/g
* s/vote_id/vote_pubkey/g
* s/delegate_id/delegate_pubkey/g
* s/account_id/account_pubkey/g
* s/to_id/to_pubkey/g
* s/my_id/my_pubkey/g
* cargo fmt
* s/staker_id/staker_pubkey/g
* s/mining_pool_id/mining_pool_pubkey/g
* s/leader_id/leader_pubkey/g
* cargo fmt
* s/funding_id/funding_pubkey/g
2019-05-23 23:20:04 -07:00
Michael Vines
94beb4b8c2
More fullnode -> validator renaming ( #4414 )
...
* s/fullnode_config/validator_config/g
* s/FullnodeConfig/ValidatorConfig/g
* mv core/lib/fullnode.rs core/lib/validator.rs
* s/Fullnode/Validator/g
* Add replicator-x.sh
* Rename fullnode.md to validator.md
* cargo fmt
2019-05-23 22:05:16 -07:00
Rob Walker
35e8f966e3
add freeze_lock() and fix par_process_entries() failure to detect self conflict ( #4415 )
...
* add freeze_lock and fix par_process_entries failure to detect self conflict
* fixup
* fixup
2019-05-23 17:35:15 -07:00
Michael Vines
b37d2fde3d
Add storage mining pool ( #4364 )
...
* Add storage mining pool
* Set gossip port
* Add create-storage-mining-pool-account wallet command
* Add claim-storage-reward wallet command
* Create storage account upfront
* Add storage program to genesis
* Use STORAGE_ACCOUNT_SPACE
* Fix tests
* Add wallet commands to create validator/replicator storage accounts
* Add create_validator_storage_account()
* Storage stage no longer implicitly creates a storage account
2019-05-23 14:50:23 -07:00
carllin
6a9e0bc593
Change EpochSlots to use BtreeSet so that serialization/deserialization returns the same order ( #4404 )
...
automerge
2019-05-23 03:50:41 -07:00
carllin
591fd72e0b
Implement listener for serving repairs through Repairman protocol ( #4306 )
...
* Make listener for serving repairs through Repairman protocol
2019-05-23 03:10:16 -07:00
Michael Vines
2ed77b040a
create_genesis_block() now returns a struct ( #4403 )
2019-05-22 20:39:00 -07:00
Pankaj Garg
b8f6c17dee
Don't filter transactions if we are buffering it locally ( #4395 )
...
automerge
2019-05-22 17:54:28 -07:00
Pankaj Garg
36019cb1e3
Tweaks to real PoH based on perf testing ( #4396 )
...
* Some counters for real poh perf analysis
* more metrics
* Comment on CPU affinity change, and reduce hash batch size based on TPS perf
* review comments
2019-05-22 15:54:24 -07:00
Tyera Eulberg
99d2428041
Transaction format changes toward Credit-Only accounts ( #4386 )
...
* Add num_readonly_accounts slice
* Impl programs in account_keys
* Emulate current account-loading functionality using program-account_keys (breaks exchange_program_api tests)
* Fix test
* Add temporary exchange faucet id
* Update chacha golden
* Split num_credit_only_accounts into separate fields
* Improve readability
* Move message field constants into Message
* Add MessageHeader struct and fixup comments
2019-05-22 18:23:16 -04:00
Pankaj Garg
eef2bdf690
Add CPU affinity for PoH service thread ( #4394 )
...
automerge
2019-05-22 14:21:43 -07:00
dependabot[bot]
190656967d
Bump nix from 0.13.0 to 0.14.0 ( #4382 )
...
Bumps [nix](https://github.com/nix-rust/nix ) from 0.13.0 to 0.14.0.
- [Release notes](https://github.com/nix-rust/nix/releases )
- [Changelog](https://github.com/nix-rust/nix/blob/master/CHANGELOG.md )
- [Commits](https://github.com/nix-rust/nix/compare/v0.13.0...v0.14.0 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-22 14:07:35 -07:00
sakridge
1d7a758c97
Bump perf libs version to fix out buffer sizing ( #4385 )
2019-05-22 13:00:03 -07:00
Rob Walker
578c2ad3ea
add bank hash to votes ( #4381 )
2019-05-21 21:45:38 -07:00
sakridge
52d453d06f
Reduce broadcast prints ( #4368 )
2019-05-21 17:02:19 -07:00
Sagar Dhawan
c9ba9e4eb7
Add storage space constant ( #4366 )
...
automerge
2019-05-21 11:07:13 -07:00
sakridge
f877fb8c8f
Don't print leader update message unless leader actually updates ( #4365 )
2019-05-21 11:06:56 -07:00
Michael Vines
6374e69a69
Add mining pool wallet commands ( #4360 )
...
automerge
2019-05-21 07:32:38 -07:00
carllin
1a77486f8e
Make RootedSlotsIterator for traversing slots on the root fork ( #4361 )
2019-05-20 23:09:00 -07:00
Rob Walker
ead15d294e
add get_epoch_vote_accounts rpc ( #4317 )
...
* add get_epoch_vote_accounts rpc
* fixups
* documentation and type updates
2019-05-20 22:21:13 -07:00
carllin
f1e5edee14
Modify Roots Column To Support Multiple Roots ( #4321 )
...
* Fix 1) Roots column family to handle storing multiple slots, 2) Store all slots on the rooted path in the roots column family
2019-05-20 19:04:18 -07:00
sakridge
7153abd483
Revert "Performance tweaks ( #4340 )" ( #4350 )
...
* Revert "Performance tweaks (#4340 )"
This reverts commit 55cee5742f
.
* Revert Rc change
2019-05-20 17:48:42 -07:00
Sagar Dhawan
af82b0dce9
Fix sending root slots instead of current slot ( #4354 )
...
automerge
2019-05-20 15:01:55 -07:00
Rob Walker
d4da2fbacd
fix bench warnings ( #4356 )
2019-05-20 14:32:23 -07:00
Rob Walker
86e03a6d1b
support issuing vote instructions from system account ( #4338 )
...
* issue vote instructions from system account
* fixup
* bring back KeypairUtil
2019-05-20 13:32:32 -07:00
Michael Vines
114e2989fa
Improve PoH unit test asserts ( #4351 )
...
automerge
2019-05-20 13:02:44 -07:00
sakridge
7024c73e9b
Revert banking threads increase which seems to be slower in testing. ( #4349 )
2019-05-20 11:42:37 -07:00
Michael Vines
f079a78c5e
Remove fee arg from system_transaction::* ( #4346 )
...
automerge
2019-05-20 10:03:19 -07:00
Michael Vines
6365c4c061
Use cleanup ( #4347 )
2019-05-20 09:58:27 -07:00
sakridge
55cee5742f
Performance tweaks ( #4340 )
...
* Use Rc to prevent clone of Packets
* Fix min => max in banking_stage threads.
Coalesce packet buffers better since a larger batch will
be faster through banking and sigverify.
Deconstruct batches into banking_stage from sigverify since
sigverify likes to accumulate batches but then a single banking_stage
thread will be stuck with a large batch. Maximize parallelism by
creating more chunks of work for banking_stage.
2019-05-20 09:15:00 -07:00
Michael Vines
034eda4546
Fix a couple replicator nits ( #4345 )
...
automerge
2019-05-20 08:55:45 -07:00
Sagar Dhawan
06eb2364f2
Handle missed slots in storage stage ( #4337 )
...
* Handle missed slots in storage stage
* Fix test compile
* Make test use the new missed slot support
2019-05-18 15:24:50 -07:00
Michael Vines
392a39dd54
Poh subsystem cleanup, genesis plumbing, enable real PoH on edge testnet ( #4292 )
...
* Remove unused PohServiceConfig::Step
* Clarify variable name
* Poh::hash() now takes an iteration counter
* man -> max
* Inline functions with single call site
* Move PohServiceConfig into GenesisBlock
* Add plumbing to enable real PoH on testnets
* Batch hashes to improve PoH hash rate
* Ensure a constant hashes_per_tick
* Remove PohEntry mixin field
* Poh/PohEntry no longer maintains tick_height
* Ensure a constant hashes_per_tick
* ci/localnet-sanity.sh: Use real PoH
* Rework Poh/PohService to keep PohRecorder unlocked as much as possible while hashing
2019-05-18 14:01:36 -07:00
Pankaj Garg
9476fe5ce3
Use log levels for datapoint metrics ( #4335 )
...
* Use log levels for datapoint metrics
* address review comments
* fix cyclomatic complexity
2019-05-17 17:34:05 -07:00
Sagar Dhawan
788290ad82
Rework Storage Program to accept multiple proofs per segment ( #4319 )
...
automerge
2019-05-17 14:52:54 -07:00
dependabot[bot]
6b5bcfaa58
Bump libc from 0.2.54 to 0.2.55 ( #4324 )
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.54 to 0.2.55.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.54...0.2.55 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-17 13:24:12 -07:00
sakridge
b114bc3674
Add benchmark for sigverify stage ( #4320 )
2019-05-17 11:09:42 -07:00
Pankaj Garg
b2ce5dc9f5
Adjust log level for counter metrics ( #4323 )
2019-05-17 07:00:06 -07:00
Pankaj Garg
e920191de0
Rate limit metrics per log level ( #4313 )
...
* Rate limit metrics per log level
* fix tests
2019-05-16 22:27:05 -07:00
Rob Walker
39e85a3e53
kill some bs58 ( #4316 )
...
* kill some bs58
* fixup
2019-05-16 21:43:18 -07:00
carllin
b3e45fd6b7
Add erroring tx to unexpected validator error logging ( #4314 )
...
* Add tx logging to error
* Add tx logging to unexpected validator errors
2019-05-16 14:59:22 -07:00
Rob Walker
87414de3e2
switch over to passive stakes ( #4295 )
...
* add failing test
* switch over to passive stakes
* test multiple stakers
2019-05-16 08:23:31 -07:00
Sagar Dhawan
a0ffbf50a5
Correctly remove replicator from data plane after its done repairing ( #4301 )
...
* Correctly remove replicator from data plane after its done repairing
* Update discover to report nodes and replicators separately
* Fix print and condition to be spy
2019-05-16 07:14:58 -07:00
carllin
abd7f6b090
Change slot_meta_iterator() to return an iterator not a cursor ( #4303 )
...
automerge
2019-05-15 18:28:23 -07:00
Sagar Dhawan
d8735df1de
Update replicator to use cluster_info instead of cached client ( #4302 )
2019-05-15 18:14:04 -07:00
dependabot[bot]
481853e1b1
Bump reqwest from 0.9.16 to 0.9.17 ( #4296 )
...
Bumps [reqwest](https://github.com/seanmonstar/reqwest ) from 0.9.16 to 0.9.17.
- [Release notes](https://github.com/seanmonstar/reqwest/releases )
- [Changelog](https://github.com/seanmonstar/reqwest/blob/master/CHANGELOG.md )
- [Commits](https://github.com/seanmonstar/reqwest/compare/v0.9.16...v0.9.17 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-15 16:02:17 -07:00
Sagar Dhawan
fd3f2cb910
Add Storage accounts for all nodes ( #4298 )
...
* Setup storage keypairs for all nodes
* Clean up naming
* clippy
* Update arg value_names
2019-05-15 15:19:29 -07:00
Sagar Dhawan
4576250342
Fix bug in storage processor and remove duplicate Constant ( #4294 )
...
* Fix bug in storage processor and remove duplicate Constant
* Add test
* Bump replicator timeout
2019-05-15 13:28:56 -07:00
Rob Walker
628128b376
add passive staking to local_cluster ( #4285 )
...
* add passive staking to local_cluster
* add stake_program to genesis
* use equal stakes in local_cluster tests
2019-05-15 12:15:31 -07:00
Sagar Dhawan
916017ca2c
Fix repair for a range of slots ( #4286 )
...
* Fix repair for a range of slots
* Delete RepairInfo
2019-05-15 11:37:20 -07:00
dependabot[bot]
1d327a5167
Bump bincode from 1.1.3 to 1.1.4 ( #4290 )
...
Bumps [bincode](https://github.com/TyOverby/bincode ) from 1.1.3 to 1.1.4.
- [Release notes](https://github.com/TyOverby/bincode/releases )
- [Commits](https://github.com/TyOverby/bincode/compare/v1.1.3...v1.1.4 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-15 09:47:55 -06:00
carllin
a79fbbafc9
SlotMeta is incorrectly updated on insertion of erasure blobs ( #4289 )
...
* Fix put_coding_blob_bytes to properly update slotmetas and chaining
2019-05-15 00:28:31 -07:00
Sagar Dhawan
1d54d29076
Fix reading ledger for chacha encrypt ( #4288 )
2019-05-14 16:59:17 -07:00
Sagar Dhawan
10b9a4806b
Fix incorrect genesis blockhashes on restart ( #4287 )
2019-05-14 16:32:44 -07:00
Rob Walker
0c1191c3ee
rework staking_utils ( #4283 )
2019-05-14 16:15:51 -07:00
Rob Walker
18b386cd10
remove unused make_active_set_entries ( #4284 )
2019-05-14 15:08:49 -07:00
Rob Walker
216e9a61a0
expose stake directly from bank ( #4281 )
2019-05-14 13:35:14 -07:00
Rob Walker
0f498e6265
remove unused filter_zero_balance ( #4279 )
2019-05-14 10:44:29 -07:00
Rob Walker
e8ad822111
get program names from programs ( #4273 )
...
* get program names from programs
* fixup
2019-05-14 10:44:16 -07:00
carllin
65a82ebf50
Fix broken tip ( #4278 )
...
automerge
2019-05-14 02:35:32 -07:00
carllin
e20a8329d3
Add API to iterate over slot's blobs ( #4276 )
2019-05-13 22:04:54 -07:00
Sagar Dhawan
88c2d0fad4
Add genesis blockhash to replicators and blob filter for window ( #4275 )
...
* Add genesis blockhash to replicators and blob filter for window
* Fixes to mining submission and ledger download
* Add todo over sleep
* Update log
2019-05-13 21:19:51 -07:00
carllin
3bd921264a
Move EpochSchedule into own module ( #4272 )
2019-05-13 16:24:32 -07:00
carllin
7501ed65e5
Initialize and Update EpochSlots in RepairService ( #4255 )
...
* Initialize EpochSlots in RepairService
* Fix flaky test
2019-05-13 15:37:50 -07:00
Michael Vines
2eaa64c4e8
valhashators -> validators
2019-05-13 15:29:23 -07:00
Pankaj Garg
c9b86018c6
Filter out all unprocessed transactions before forwarding them ( #4266 )
...
* Filter out all unprocessed transactions before forwarding them
* fix clippy
2019-05-13 14:40:05 -07:00
Mark E. Sinclair
796000e96f
Improve erasure metrics ( #4268 )
...
* Improve erasure metrics
* Simplify metrics submission
2019-05-13 16:04:43 -05:00
Sagar Dhawan
5e91f8f59d
Update reported tx count to exclude errors ( #4201 )
2019-05-13 13:23:52 -07:00
Michael Vines
a2e3a92b01
Extend GetBlockHash RPC API to include the fee scehdule for using the returned blockhash ( #4222 )
2019-05-13 12:49:37 -07:00
Tyera Eulberg
1b68da7572
Use solana-ed25519-dalek v0.2.0 ( #4264 )
...
automerge
2019-05-13 09:51:59 -07:00
Pankaj Garg
133be2df51
Check for transaction forwarding delay to detect an expired transaction before forwarding it ( #4249 )
...
Also refactored code for forwarding packets, and added test for it
2019-05-10 14:28:38 -07:00
Tyera Eulberg
06a93dcb43
Move to solana-ed25519-dalek ( #4248 )
2019-05-10 15:26:46 -06:00
carllin
ad7f04a245
Add genesis_blockhash to erasure blobs so they don't get filtered out by window_service ( #4247 )
2019-05-10 14:06:31 -07:00
Jack May
f567877d1d
Cleanup metrics ( #4230 )
2019-05-10 08:33:58 -07:00
carllin
9881820444
RepairService saves db_iterator instead of reconstructing on every search ( #4242 )
2019-05-09 19:57:51 -07:00
Rob Walker
81fa69d347
Revert "Create bank snapshots ( #3671 )" ( #4243 )
...
This reverts commit abf2b300da
.
2019-05-09 19:27:27 -07:00
Sathish
abf2b300da
Create bank snapshots ( #3671 )
...
* Be able to create bank snapshots
* fix clippy
* load snapshot on start
* regenerate account index from the storage
* Remove rc feature dependency
* cleanup
* save snapshot for slot 0
2019-05-09 19:27:06 -07:00
carllin
575a0e318b
Add newly completed slots signal to Blocktree ( #4225 )
...
* Add channel to blocktree for communicating when slots are completed
* Refactor RepairService options into a RepairStrategy
2019-05-09 14:10:04 -07:00
Sagar Dhawan
a031b09190
Add replicator support to multinode demo ( #4221 )
...
automerge
2019-05-09 13:43:39 -07:00
sakridge
5d0d467287
fix banking_stage benches ( #4231 )
2019-05-09 11:20:26 -07:00
carllin
bba94c43b9
Add BankForks to RepairService ( #4223 )
...
automerge
2019-05-08 18:51:43 -07:00
sakridge
9cdffc7d64
Don't push empty vecs into the unprocessed buffers ( #4214 )
2019-05-08 17:58:07 -07:00
carllin
b8fd51e97d
Add new gossip structure for supporting repairs ( #4205 )
...
* Add Epoch Slots to gossip
* Add new gossip structure to support Repair
* remove unnecessary clones
* Setup dummy fast repair in repair_service
* PR comments
2019-05-08 13:50:32 -07:00
Rob Walker
a80176496d
add /target/ to .gitignore files for all crates ( #4217 )
...
* add /target/ to .gitignore files for all crates
* shellcheck
2019-05-08 12:15:05 -07:00
Pankaj Garg
1a2b131ceb
Don't forward transactions that are expired or failed signature check ( #4199 )
2019-05-08 10:32:25 -07:00
carllin
791ee411a5
Add root to bank forks ( #4206 )
2019-05-07 23:34:10 -07:00
Jack May
427963f554
Core depends on vote and budget program directly ( #4204 )
2019-05-07 22:41:47 -07:00
Rob Walker
b49f8c0984
reduce replicode, introduce passive staking support ( #4207 )
2019-05-07 22:22:43 -07:00
dependabot[bot]
674a49f8d7
Bump serde_derive from 1.0.90 to 1.0.91 ( #4172 )
...
Bumps [serde_derive](https://github.com/serde-rs/serde ) from 1.0.90 to 1.0.91.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.90...v1.0.91 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-07 20:05:41 -07:00
carllin
69eeb7cf08
Fix parent record locks usage in child banks ( #4159 )
...
* Introduce record locks on txs that will be recorded
* Add tests for LockedAccountsResults
* Fix broken bench
* Exit process_entries on detecting conflicting locks within same entry
2019-05-07 15:51:35 -07:00
Michael Vines
55e3b7d380
Storage transactions are now paid for by a system account ( #4193 )
...
* Pay program loading fees from a system account
* Pay transaction fees from a system account
2019-05-07 15:01:10 -07:00
Sagar Dhawan
2107e15bd3
Reduce Avalanche redundancy and implement traditional fanout ( #4174 )
...
* Reduce Avalanche redundancy and implement traditional fanout
* Revert tiny fanout
* Update diagrams and docs based on review comments
2019-05-07 13:24:58 -07:00
Michael Vines
4f3b22d04e
Minor code restyling, no functional changes
2019-05-07 12:35:29 -07:00
Michael Vines
2c78a93001
GenesisBlock::new(X) => create_genesis_block(X)
2019-05-07 12:34:17 -07:00
Rob Walker
8e400fc4bd
rework genesis (passive staking groundwork) ( #4187 )
...
* rework genesis
* fixup
2019-05-07 11:16:22 -07:00
Pankaj Garg
29c2a63c8b
Retry transactions that failed due to account lock ( #4184 )
...
* added test
2019-05-07 10:23:02 -07:00
dependabot[bot]
57038529e0
Bump hex-literal from 0.1.4 to 0.2.0 ( #4185 )
...
Bumps [hex-literal](https://github.com/RustCrypto/utils ) from 0.1.4 to 0.2.0.
- [Release notes](https://github.com/RustCrypto/utils/releases )
- [Commits](https://github.com/RustCrypto/utils/compare/hex-literal-v0.1.4...hex-literal-v0.2.0 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-07 07:14:16 -07:00
Pankaj Garg
e9f80e5542
Don't use default ticks per slot in calculating next slot leader ( #4169 )
2019-05-06 11:23:06 -07:00
Greg Fitzgerald
a19df7a36c
Add type annotations for external crates ( #4125 )
2019-05-06 10:11:50 -06:00
Tyera Eulberg
71f9b44687
Add Confirmations parameter to RPC Subscriptions ( #4154 )
...
* Add optional depth parameter to pubsub, and store in subscriptions
* Pass bank_forks into rpc_subscription; add method to check depth before notify and impl for account subscriptions
* Impl check-depth for signature subscriptions
* Impl check-depth for program subscriptions
* Plumb fork id through accounts
* Use fork id and root to prevent repeated account notifications; also s/Depth/Confirmations
* Write tests in terms of bank_forks
* Fixup accounts tests
* Add pubsub-confirmations tests
* Update pubsub documentation
2019-05-06 08:31:50 -06:00
carllin
297328ff9a
Fix improper tick sleeping time in test ( #4155 )
...
automerge
2019-05-03 20:15:10 -07:00
Pankaj Garg
3ef961fe37
Record poh ticks even when the node is not in leader schedule ( #4148 )
...
* remove obsolete test
2019-05-03 16:41:19 -07:00
Sagar Dhawan
a7b695c27a
Change replicators to slot-based ( #4118 )
2019-05-03 16:27:53 -07:00
Mark E. Sinclair
ed48d8323c
Reduce locking in Blocktree ( #4075 )
...
* Reduce lock contention in blocktree
* Store root slot in separate column
2019-05-03 16:46:02 -05:00
Michael Vines
7fe3c75c6b
Add a node-specific ip echo service to remove dependency on ifconfig.co ( #4137 )
2019-05-03 11:01:35 -07:00
Pankaj Garg
441e76ebeb
Index buffered transactions at the correct offset ( #4126 )
...
* tests
2019-05-02 19:05:53 -07:00
carllin
c2dfb9900e
Revert "Change forwarded metrics to be in line with fetch stage metrics ( #4068 )" ( #4135 )
...
automerge
2019-05-02 17:36:19 -07:00
Mark E. Sinclair
916458e132
Change erasure set size to 8:8 ( #4129 )
...
* Change erasure set size to 8:8
* Change tests to be agnostic to exact set size and ratio
* Add convenience methods for setting presence
2019-05-02 19:04:40 -05:00
Rob Walker
7f75cc8906
update nightly to 2019-05-01 ( #4111 )
...
* update nightly to 2019-05-01
* cargo fmt
* cargo fmt
* increase bench timeout
2019-05-01 20:08:42 -07:00
sakridge
1ab5098576
Move get_clients into gossip_service ( #4109 )
2019-05-01 17:14:01 -07:00
Pankaj Garg
3eec3cfac2
Cleanup banking stage in lieu of recent transaction forwarding changes ( #4101 )
2019-05-01 15:13:10 -07:00
Pankaj Garg
4f18fc836f
Forward transactions to the next slot leader ( #4092 )
...
- this ensures that transactions will reach in time for the next node to process them
2019-05-01 11:37:29 -07:00
Rob Walker
cb528af4e2
fix accounts_db storage.reset() ( #4094 )
...
* fix accounts_db storage.reset()
* fix compilation errors, remove unused, fix test_accounts_grow() failure
2019-05-01 09:27:13 -07:00
Sagar Dhawan
9add8d0afc
Add alternative to Spy Nodes that can fully participate in Gossip ( #4087 )
...
automerge
2019-04-30 16:42:56 -07:00
sakridge
408bdbce7a
Add non_default_stream parameter to cuda_verify ( #4079 )
2019-04-30 13:34:46 -07:00
carllin
1a259d4a3f
Prevent Requests/Caching of leader schedules for epochs beyond confirmed roots ( #4033 )
...
automerge
2019-04-30 13:23:21 -07:00
carllin
73f250f03a
Make minimum warmup period 32 slots long ( #4031 )
...
* Make minimum warmup period 32 slots long
* PR fixes
2019-04-29 15:26:52 -07:00
carllin
3b2adbc9df
Change forwarded metrics to be in line with fetch stage metrics ( #4068 )
...
automerge
2019-04-29 13:50:14 -07:00
Sagar Dhawan
4e41c81bc7
Fix the output from Gossip Discovery ( #4067 )
...
automerge
2019-04-29 13:19:24 -07:00
carllin
fabba82173
ignore non-descendants of roots in blocktree ( #4032 )
2019-04-29 12:29:14 -07:00
anatoly yakovenko
3e14af5033
bast bank ancestor check ( #4050 )
2019-04-28 10:27:09 -07:00
Michael Vines
656e2649a7
v0.15.0
2019-04-27 07:38:46 -07:00
Pankaj Garg
87f1bd58b9
Reduce submit frequency of counters that are very frequent and killing metrics DB ( #4027 )
2019-04-26 20:37:40 -07:00
sakridge
a056c1f18f
Don't send packets when msgs len is 0 ( #4030 )
...
And don't send metrics every iteration.
2019-04-26 17:27:31 -07:00
Jack May
b912ee7fdf
Nit: Spelling ( #4025 )
2019-04-26 16:02:37 -07:00
Mark E. Sinclair
8b1724bb70
Serialize blocktree writes by locking the database ( #4008 )
...
Move several private methods to free functions
2019-04-26 10:52:10 -05:00
Michael Vines
e71ab55288
Rename in-tree program_ids to be base-58 human readable ( #4001 )
2019-04-25 17:58:49 -07:00
Pankaj Garg
15aa07f2a0
Fix node count metrics ( #3997 )
...
- the count was truncated to avalanche neighborhood size
2019-04-25 13:47:38 -07:00
carllin
e4536621df
Log all uncommittable errors on validator ( #3999 )
2019-04-25 13:37:30 -07:00
Sagar Dhawan
a3c302c36a
Add signature polling to SyncClient ( #3996 )
...
automerge
2019-04-25 12:46:40 -07:00
carllin
c4d9dff590
Cherry-pick #3934 ( #3982 )
...
* Fix inserting bogus is_last blobs into blocktree
* Check for pre-existing blob before insert
* Ignore test that performs concurrent writes on blocktree as that is not supported
2019-04-25 00:04:49 -07:00
Sagar Dhawan
cf91ff8694
Remove Thin Client from storage stage ( #3976 )
...
automerge
2019-04-24 22:34:10 -07:00
Mark E. Sinclair
9a40ad76bd
Fix race in erasure metadata tracking ( #3962 )
...
* Fix erasure metadata race condition
* make erasure return the underlying error without wrapping it in the `solana::Error` type
* Add metric for erasure failures
* add tests to `ErasureMeta` indexing logic
* Add test to ensure erasure recovery failures don't cause panics
2019-04-24 17:53:01 -05:00
Pankaj Garg
9c7ccc0e2b
More metrics to track memory usage ( #3966 )
...
automerge
2019-04-24 11:11:30 -07:00
Sagar Dhawan
0cbac26591
Add genesis blockhash to blobs ( #3953 )
2019-04-23 16:24:44 -07:00
carllin
ab11327e34
Fix mismatch between leader/validator bank votability ( #3942 )
...
* Fix mismatch between leader/validator bank votability
2019-04-23 15:32:19 -07:00
Michael Vines
c309cd80aa
Add getClusterNodes/getSlotLeader JSON RPC API ( #3940 )
...
* Minor cleanup
* Include _this_ node in the contact info trace
* Add getClusterNodes/getSlotLeader RPC API
2019-04-23 14:46:41 -07:00
Pankaj Garg
d22a1c9b1f
Use smaller batch size in sigverify stage if CUDA is not available ( #3951 )
2019-04-23 12:41:50 -07:00
Pankaj Garg
7372ec9e1a
Use poh would_be_leader check in banking stage to hold or forward txs ( #3948 )
2019-04-23 11:56:30 -07:00
Pankaj Garg
de6af95061
Process forwarded packets only when the node is about to be the leader ( #3935 )
...
* Tests and metrics
2019-04-22 19:49:32 -07:00
Sagar Dhawan
43f7cd8149
Fix Retransmit slamming the leader with its own blobs ( #3938 )
2019-04-22 18:41:01 -07:00
Rob Walker
4b04c37c36
verify that blobs match a known leader for the slot ( #3927 )
...
* validate that blobs match a known leader for the slot
* clippy
2019-04-22 15:21:10 -07:00
sakridge
95a16426f3
Cleanup bench-exchange ( #3919 )
...
* bench-exchange changes
Generate new keypair for each bench-exchange
Add metrics
Tweak network sleep parameters for better reliability.
* Bench-exchange contract metrics
2019-04-22 13:16:28 -07:00
Michael Vines
af9ebf1d1a
Add status logging while processing a ledger ( #3916 )
2019-04-20 20:17:57 -07:00
Sagar Dhawan
349e8a9462
Ensure forwarded Blobs don't break Erasure ( #3907 )
2019-04-20 16:44:06 -07:00
Sagar Dhawan
c0bffb56df
Update Avalanche to use Epoch Stakes ( #3900 )
2019-04-19 22:31:40 -07:00
Sagar Dhawan
970cc32e65
Fix Data Plane computation when stakes are equal ( #3913 )
2019-04-19 21:07:21 -07:00
Rob Walker
3ab492ccf8
save erasure set size, initialize coding blob erasures with that size ( #3910 )
...
* save erasure set size, initialize coding blob erasures with that size
* fixup
* fixup
2019-04-19 20:22:51 -07:00
Rob Walker
efbb573316
add an env::var driven localcluster test ( #3906 )
2019-04-19 15:47:03 -07:00
Rob Walker
c3155a6e39
silence sigverify disabled, make disabling sigverify easier ( #3901 )
...
* silence sigverify disabled, make disabling sigverify easier
* fixup
2019-04-19 14:18:19 -07:00
Rob Walker
320bd66c84
handle zero num_will_fit ( #3892 )
...
* handle zero num_will_fit
* clippy
2019-04-19 12:02:33 -07:00
carllin
512bfc93cb
Add a cache for leader schedules ( #3841 )
...
* Add a cache for leader schedules
2019-04-19 02:39:44 -07:00
Rob Walker
6eac5951ed
Revert "Revert "revert-revert-erasure and erasure fixes ( #3833 )" ( #3855 )" ( #3889 )
...
This reverts commit 596f611ede
.
2019-04-18 21:56:43 -07:00
Sagar Dhawan
475a74d37f
Reduce packet recv batches ( #3894 )
...
* Reduce packet recv batches
* Fix type
2019-04-18 19:24:37 -07:00
Sagar Dhawan
7e409a13cd
Ack on empty Gossip Pull Responses and keep Entrypoint around ( #3881 )
...
* Ack on empty Gossip Pull Responses and keep Entrypoint around
* Address comments and fix test
* Update core/src/cluster_info.rs
Co-Authored-By: sagar-solana <sagar@solana.com>
* Update core/src/cluster_info.rs
Co-Authored-By: sagar-solana <sagar@solana.com>
2019-04-18 15:12:17 -07:00
Rob Walker
67b8ad6a0f
fix entries.to_blobs() ( #3882 )
...
* * rename Entry::serialized_size() to Entry::to_blob_size() to better
reduce confusion with bincode, et al. and to better reflect its
real meaning
* fix implementation of to_blob_size() to actually return what happens
when we do entries.to_blobs() (i.e. we serialize Vec<Entry>, not Entry)
* update tests to be more rigorous
* clippy
2019-04-18 14:45:41 -07:00
Tyera Eulberg
a9cfae486c
Revert-revert migrate to ed25519-dalek crate ( #3877 )
...
* Revert "Revert "Migrate from ring to ed25519-dalek, take 2 (#3844 )" (#3868 )"
This reverts commit 6a878602f2
.
* Fix Signature::verify method
2019-04-18 14:37:20 -06:00
Pankaj Garg
f2187780d2
Do not forward vote transactions ( #3871 )
2019-04-18 11:18:49 -07:00
Tyera Eulberg
6a878602f2
Revert "Migrate from ring to ed25519-dalek, take 2 ( #3844 )" ( #3868 )
...
This reverts commit e9b82bacda
.
2019-04-18 11:47:34 -06:00
Michael Vines
f8543a268f
solana-gossip now displays other spy nodes and contact info age ( #3867 )
2019-04-18 09:48:21 -07:00
Tyera Eulberg
e9b82bacda
Migrate from ring to ed25519-dalek, take 2 ( #3844 )
...
* Migrate from ring to ed25519-dalek
* Move gen_keypair_file test to a more appropriate location
* Fixup bench-exchange and add helper fn for single deterministic keypair
* Update golden
2019-04-18 10:38:32 -06:00
Pankaj Garg
2f4a3ed190
Use a separate channel to process votes in banking stage ( #3861 )
...
- This will help expedite the vote processing on peer nodes
2019-04-17 21:07:45 -07:00
Mark E. Sinclair
aa21f5343a
Remove broken read().unwrap() call to a non-shared packet
2019-04-17 21:24:40 -05:00
Sagar Dhawan
9c2809db21
Delete SharedPackets ( #3843 )
...
* Delete SharedPackets
* Fix bench and sigverify
2019-04-17 18:15:50 -07:00
Pankaj Garg
596f611ede
Revert "revert-revert-erasure and erasure fixes ( #3833 )" ( #3855 )
...
This reverts commit 6bef16a6a1
.
2019-04-17 18:04:30 -07:00
Sagar Dhawan
2b3218b5f2
Fix flaky tests by waiting for test node to boot ( #3845 )
2019-04-17 17:50:34 -07:00
Pankaj Garg
a2c8e3952f
Fixes to TPS calculation and reporting ( #3836 )
...
Fixes to TPS calculations and reporting
2019-04-17 15:37:01 -07:00
Rob Walker
6bef16a6a1
revert-revert-erasure and erasure fixes ( #3833 )
...
* fix erasure, more tests for full blobs, more metrics
* Revert "Revert "Use Rust erasure library and turn on erasure (#3768 )" (#3827 )"
This reverts commit 4b8cb72977
.
2019-04-17 15:13:54 -07:00
Rob Walker
01657ddfe7
packet.rs optimizations ( #3818 )
...
* packet.rs optimizations
* remove redundant and aggressive metric submission
* remove metrics submit(), get compiling again, honor log level in inc()
2019-04-17 14:14:57 -07:00
Greg Fitzgerald
51a2988bb2
Revert "Rename programs to instruction_processors ( #3789 )" ( #3824 )
...
This reverts commit 34344982a9
.
2019-04-17 15:05:49 -06:00
sakridge
4b8cb72977
Revert "Use Rust erasure library and turn on erasure ( #3768 )" ( #3827 )
...
This reverts commit b9bb5af4a5
.
2019-04-17 12:52:12 -07:00
Mark E. Sinclair
b9bb5af4a5
Use Rust erasure library and turn on erasure ( #3768 )
...
* split out erasure into new crate; add implementation using rust reed-solomon-library
* Track erasures with a &[bool] instead of indexes
* fix bug that reported the number of erasures incorrectly
* Introduce erasure `Session` for consistent config
* Increase test coverage; fix bugs
* Add ability to remove blobs from erasure meta tracking. test added
* Track deletion of coding blobs in blocktree via ErasureMeta. Added to
test
* Remove unused functions in blocktree
* add randomness to recovery thread to exercise recovery due to either new
data or coding blobs
* Add unit test for ErasureMeta index handling
* Re-enable test in broadcast stage
2019-04-16 23:00:24 -05:00
Rob Walker
e94f268346
reduce sigverify verbosity ( #3813 )
2019-04-16 18:25:53 -07:00
Amr Ali
34344982a9
Rename programs to instruction_processors ( #3789 )
...
* Rename programs to instruction_processors
* Updates around the code base to support instruction_processors rename
* Kabab instruction_processors
* Update Cargo.toml files and scripts to use instruction-processors
* Update Cargo.toml to use instruction-processors
* Update CI scripts to use instruction-processors
2019-04-16 22:39:00 +02:00
Michael Vines
63d66ece57
net/ testnet nodes now stake more lamports ( #3812 )
...
* Add --bootstrap-leader-lamports
* Generalize --no-stake into --stake NUM
* Use a large stake for net/ fullnodes
* Setup vote account before starting fullnode to avoid mixed log output
2019-04-16 13:03:01 -07:00
Michael Vines
d77359914f
Log the spy node id by default for better debug ( #3796 )
2019-04-15 20:58:37 -07:00
Dan Albert
8638b3bb19
Update Cargo.toml files for version = 0.14.0
2019-04-16 02:50:20 +00:00
anatoly yakovenko
68fc303b9b
Rework Accounts for fast squash, hashing state and checkpoint recovery. ( #3613 )
...
* accounts rewrite
* ignore grow tests
* skip duplicate roots
* allow for a root race
* logger
* accounts_index tests
* tests
* tests
2019-04-15 17:15:50 -07:00
Sagar Dhawan
3fcf03ff3e
Refactor LocalCluster and add support for listener nodes ( #3790 )
2019-04-15 15:27:45 -07:00
Greg Fitzgerald
80f3568062
Upgrade to Rust 1.34.0 ( #3781 )
...
* Upgrade to Rust 1.34.0
* Remove redundant closures
Thanks Clippy!
2019-04-15 15:56:08 -06:00
Michael Vines
d026ebb83a
Use tvu_peers() since validators no longer run an RPC port by default ( #3784 )
2019-04-15 13:25:09 -07:00
Rob Walker
64c6f05da2
persist set_root() and use it in blocktree_processor to limit squashes ( #3782 )
...
* rename locktower's slot to epoch
* persist set_root() and use it in blocktree_processor to limit squashes
2019-04-15 13:12:28 -07:00
Rob Walker
5c4689a326
rename locktower's slot to epoch ( #3776 )
2019-04-15 10:46:14 -07:00
Rob Walker
6859907df9
more rigorous erasure constants, comments ( #3766 )
...
* more rigorous erasure constants, comments
* new header size means new golden
2019-04-14 21:10:09 -07:00
Rob Walker
de52747950
remove max_tick_height replicode ( #3765 )
2019-04-14 19:15:31 -07:00
Rob Walker
bd1db51e07
delete db_window.rs, move contents to window_service, clean up process_blobs ( #3746 )
2019-04-14 18:52:05 -07:00
Rob Walker
dd005fb50e
fix broadcast to *always* call erasure generation, simplify generator, test slot reset better ( #3764 )
2019-04-14 18:12:37 -07:00
Rob Walker
542bafeb71
groom packet.rs, add blob.data alignment ( #3763 )
2019-04-14 17:30:08 -07:00
Rob Walker
e57a0ab05d
test some bits ( #3762 )
2019-04-14 17:10:30 -07:00
Pankaj Garg
2c745ce108
Shorten recv wait when there are buffered packets in banking stage ( #3757 )
...
- packets are buffered on leader rotation, when the next leader is
unknown
- shortening the wait allows the banking stage to poll for next
leader more frequently
2019-04-14 12:34:07 -07:00
Michael Vines
f6aa90e193
Add fullnode --dynamic-port-range option
2019-04-14 07:08:29 -07:00
Michael Vines
2277a39dd2
Default solana-gossip log-level to 'info'
2019-04-14 07:07:15 -07:00
Pankaj Garg
ee35ed5250
Refactored buffered packet forwarding code ( #3750 )
...
- Added unit tests
- Don't consume packets if bank is not known
2019-04-13 23:19:54 -07:00
Stephen Akridge
92b5e131fe
Name sigverify threads
2019-04-13 11:24:36 -07:00
Sagar Dhawan
1e8f83a74a
Use a better name for new api
2019-04-12 14:58:22 -07:00
Sagar Dhawan
1db80d79fc
Update get recent blockhashes to return confirmed blockhashes only
2019-04-12 14:58:22 -07:00
Stephen Akridge
1dac4c33b8
Change sigverify counter from entries to packets
...
batch or entries kind of useless since it can have some
variable number of packets
2019-04-12 13:19:46 -07:00
Pankaj Garg
44ebfa736a
Don't forward buffered packet to the same node ( #3712 )
...
- instead, process the packets
2019-04-11 17:23:45 -07:00
Sagar Dhawan
877ec08280
Send recent votes in Vote Transactions ( #3734 )
2019-04-11 14:48:36 -07:00
Rob Walker
efd19b07e7
implement erasure-based recovery inside blocktree ( #3739 )
...
* implement recover in blocktree
* erasures metric
* erasure metrics only
* fixup
2019-04-11 14:14:57 -07:00
carllin
787dc5748a
Fixed DuplicateSigs ( #3727 )
...
* Fixed DuplicateSigs by not recording errors in signature cache of bank
2019-04-11 11:51:34 -07:00
Rob Walker
e1d5bb1a26
add redundant broadcast ( #3724 )
...
* add redundant broadcast
* crank up to full redundancy
* Update broadcast_stage.rs
* Update broadcast_stage.rs
* Update broadcast_stage.rs
* Update broadcast_stage.rs
2019-04-11 09:15:17 -07:00
Jack May
d0f46d6a8a
Cleanup client traits and create super trait ( #3728 )
2019-04-11 00:25:14 -07:00
Rob Walker
4b6c0198ad
reset coding generator on slot boundaries ( #3726 )
2019-04-10 18:18:55 -07:00
Rob Walker
f1e7237c09
vote_api cleanup ( #3710 )
...
* vote_api cleanup
* fixups
* fixup
* remove unused code
* revert removal of serialize and deserialize
* ...
* increase coverage, bootstrap staking
* Sagar's STAKE to my VOTE
2019-04-10 17:52:47 -07:00
Sagar Dhawan
1b5845ac3e
Fix getting votes from gossip ( #3723 )
2019-04-10 17:16:08 -07:00
Sagar Dhawan
d2ea782372
Always use bootstrap vote account for leader
2019-04-10 15:51:00 -07:00
Greg Fitzgerald
894135a084
Less pub in PohRecorder
2019-04-10 12:50:45 -07:00
Pankaj Garg
7da4142d33
Process votes from gossip only in leader node ( #3707 )
2019-04-09 22:06:32 -07:00
carllin
003fd6545c
Logging for unexpected validator errors ( #3697 )
2019-04-09 15:05:43 -07:00
Stephen Akridge
2c93062f54
Improve banking_stage performance messages
...
Use transaction count instead of batch count,
and set the recv_start from when we finished processing
the previous batch to get a more accurate number.
2019-04-09 14:54:12 -07:00
Pankaj Garg
dc6c34da5d
Fast-track vote signature verification and processing ( #3695 )
2019-04-09 12:57:12 -07:00
carllin
d4eebcc2aa
Check for frozen in confirm_forks ( #3678 )
2019-04-09 11:45:38 -07:00
carllin
483cc2fa4e
Support old repair strategy for reparing slots in a range for supporting replicators ( #3665 )
2019-04-08 12:46:23 -07:00
Jack May
44b391096d
Configurable local cluster native processors ( #3676 )
2019-04-08 11:15:58 -07:00
carllin
444e87f888
Fix metric ( #3664 )
2019-04-06 21:57:01 -07:00
carllin
20aa4434e2
Fix repair ( #3581 )
...
Add DetachedHeads repair protocol
Add DetachedHeads repair test
Repair starting from root
2019-04-06 19:41:22 -07:00
Greg Fitzgerald
878a842611
Move append_vec bench to the crate with append_vec ( #3650 )
...
* Move append_vec bench to the crate with append_vec
* Use black_box to tell the compiler not to optimize away test data
```
pub fn black_box<T>(dummy: T) -> T {
unsafe {
let ret = std::ptr::read_volatile(&dummy);
std::mem::forget(dummy);
ret
}
}
```
* Revert "Use black_box to tell the compiler not to optimize away test data"
This reverts commit 5610b8ee957f1d8bf6e270e392859e8b23b1e472.
* Use black_box to tell the compiler not to optimize away test data
* Create bench directories
2019-04-06 07:18:56 -06:00
Tyera Eulberg
68e21911eb
Remove redundant transfer_signed
2019-04-05 22:04:32 -07:00
Tyera Eulberg
95cc36af96
Impl SyncClient and AsyncClient for ThinClient
2019-04-05 22:04:32 -07:00
Tyera Eulberg
f349c1f0dc
Get everything off RpcSignatureStatus
2019-04-05 22:09:29 -06:00
Tyera Eulberg
90c1300bb6
Plumb TransactionError through Rpc
2019-04-05 22:09:29 -06:00
Sagar Dhawan
f5f4434e0a
Remove unnecessary lock in sigverify
2019-04-05 16:57:45 -07:00
Sagar Dhawan
adcda3c715
Remove airdrop dependency from replicators
2019-04-05 16:11:39 -07:00
Rob Walker
a5b5248a09
move vote_accounts up ( #3647 )
2019-04-05 14:23:00 -07:00
Tyera Eulberg
ef5df6f3fe
Add server specification
2019-04-05 11:44:57 -07:00
Tyera Eulberg
2f90f9fbd4
Version all jsonrpc crates, in core too
2019-04-05 11:44:57 -07:00
Greg Fitzgerald
46e6911ec1
Add get_signature_status() to SyncClient
...
And move bank::Result to transaction module.
2019-04-05 10:22:05 -07:00
carllin
4ea19b90a4
Fix update_ancestor_stakes in locktower ( #3631 )
...
* Fix update_ancestor_stakes in locktower
* Add test for vote threshold
2019-04-05 03:05:31 -07:00
Greg Fitzgerald
35298e01a8
Remove Instruction wrapper structs and name functions after enum fields
2019-04-03 13:34:27 -07:00
Greg Fitzgerald
867f6f107b
Rename SystemInstruction::Move to SystemInstruction::Transfer
2019-04-03 08:35:57 -06:00
Greg Fitzgerald
43bb813cbe
Rename 'new_account' to 'new_user_account'
...
And 'new_program_account' to 'new_account'
2019-04-02 21:24:42 -06:00
Greg Fitzgerald
978ff87b76
Fix potential storage bug
...
The previous code was assuming the instruction index and the
program_id index were the same. That's always true for
single-instruction transactions, but not for multiples.
2019-04-02 19:00:35 -06:00
Greg Fitzgerald
4c0bc1fd88
Add program_ids() methods
...
Added CompiledInstruction::program_id() so that we don't need to pass
around instruction indexes just for Message::program_id().
Also added Message.program_ids() that returns a slice so that we
can move those pubkeys into Message::account_keys.
2019-04-02 19:00:35 -06:00
Greg Fitzgerald
20189c5d45
Bump hashbrown to 0.2.0
2019-04-02 16:37:21 -06:00
Mark E. Sinclair
d90b8c331d
Refactor blocktree storage abstraction ( #3588 )
2019-04-02 16:58:07 -05:00
Sagar Dhawan
cd634801a2
Re-enable test but remove replicators from config
2019-04-02 10:38:30 -07:00
Sagar Dhawan
5f10a87dec
Ignore Flaky Local Cluster test
2019-04-02 10:56:29 -06:00
Greg Fitzgerald
fa1c1e3734
Rename native programs to native instruction processors
2019-04-02 10:36:19 -06:00
carllin
d228b6467c
Implement finalizer so that all locked accounts are dropped ( #3585 )
...
* Implement finalizer so that all locked accounts are dropped when finalizer goes out of scope
* Add test for tx error with lock conflict
* Fix double unlock from destructor running after a call to unlock
2019-04-02 03:55:42 -07:00
Tyera Eulberg
6ff2a0a75e
Rework discover to handle additional parameters, and be unit-testable
2019-04-01 23:05:25 -06:00
Greg Fitzgerald
fcef54d062
Add a constructor to generate random pubkeys
2019-03-31 16:23:18 -06:00
carllin
8660c3581e
Add squashing metrics ( #3573 )
2019-03-29 21:21:59 -07:00
carllin
f886b3b12b
Fix resetting PohRecorder to wrong bank ( #3553 )
...
* Check whether future slot already has transmission
2019-03-29 20:00:36 -07:00
Greg Fitzgerald
5646daa820
Delete lots of fee parameters
...
So many zeros!
2019-03-29 19:21:51 -06:00
Greg Fitzgerald
7896e8288d
Replace Transaction::fee with a FeeCalculator
2019-03-29 19:21:51 -06:00
carllin
9369ea86ea
Track detached slots in blocktree ( #3536 )
...
* Add contains_all_parents flag to SlotMeta to prep for tracking detached heads
* Add new DetachedHeads column family
* Remove has_complete_parents
* Fix test
2019-03-29 16:07:24 -07:00
carllin
dee5ede16d
Get rid of unnecessary frozen banks ( #3572 )
2019-03-29 16:06:48 -07:00
Stephen Akridge
0887832b00
Early exit if buffered packets is empty
2019-03-29 13:40:07 -07:00
Greg Fitzgerald
8e04fadb05
Cleanup magic numbers
...
Rename `num_signatures` to `num_required_signatures` to
disambiguate it from `tx.signatures.len()`.
2019-03-29 13:03:29 -07:00
Greg Fitzgerald
31f8b6d352
Integrate Message into Transaction
2019-03-29 13:03:29 -07:00
Greg Fitzgerald
98d60e6124
Expose a method for getting the Message from a Transaction
...
This currently constructs the message, but when message
is integrated, it can return a `&Message`.
2019-03-29 13:03:29 -07:00
Tyera Eulberg
f482c9ab61
Functionalize tx serialization; make testing more explicit
2019-03-29 11:31:46 -06:00
Tyera Eulberg
75dcd97f5f
Update test to deserialize txs
2019-03-29 11:31:46 -06:00
Tyera Eulberg
4776dc36ab
Map entry txs to serialized txs in blockstream
2019-03-29 11:31:46 -06:00
Greg Fitzgerald
753d0dcabe
Fix the cuda build
...
And add a test to check the condition that the cuda tests are
exercising.
2019-03-29 08:25:56 -06:00
Greg Fitzgerald
b708998d9d
Fix chacha build
2019-03-29 08:25:56 -06:00
Greg Fitzgerald
c4bc710d3a
Use Serde's `with` attribute to shorten length encodings in Transaction
2019-03-29 08:25:56 -06:00
Sathish Ambley
857dc2ba47
Remove custom serialization
2019-03-29 08:25:56 -06:00
Greg Fitzgerald
7a81f327ce
Add sigverify tests
2019-03-28 19:42:11 -06:00
Greg Fitzgerald
2ab50cbae8
Move untested code out of SDK
...
verify_signature() was only used in a test that was testing
binary layout. It only worked because the test transaction only
had one signature.
from() was only used by verify_signature() and that's something
we'd typically called `pubkey()`.
hash() didn't return the hash of the Transaction, as you might
guess. It's only used for PoH, so move it into Entry.
2019-03-28 14:24:59 -06:00
Stephen Akridge
0482f153d0
Lower a bunch of debug
...
Can't afford to be printing on every transaction error, it will slow
the system down.
2019-03-28 12:24:47 -07:00
Mark E. Sinclair
50b0a5ae83
Blocktree+Erasure tests of basic erasure functionality ( #3535 )
...
* Remove WindowSlot; add Blocktree based tests to erasure
2019-03-28 01:55:51 -05:00
Sagar Dhawan
7d0ff8e713
Re-enable Replicator test ( #3534 )
2019-03-27 17:21:49 -07:00
Sagar Dhawan
e8cc566b2b
Storage Account setup for replicators and validators ( #3516 )
...
* Setup Storage Accounts for replicators
* Setup Storage Accounts for validators
* Add Replicator Info to Local Cluster and Add test
2019-03-27 15:54:09 -07:00
Anatoly Yakovenko
e45f7afd85
use the right id for delegate id
2019-03-27 15:04:09 -07:00
Sagar Dhawan
36ea088387
Fix Storage Stage not receiving entries when node is leader ( #3528 )
2019-03-27 13:10:33 -07:00
Anatoly Yakovenko
0346b9cb5c
hang out on progress until fork is confirmed
2019-03-27 08:41:41 -07:00
Anatoly Yakovenko
6bfe497ab5
remove leader confirmaiton
2019-03-27 08:41:41 -07:00
Anatoly Yakovenko
6956bf635e
validator confirmaiton
2019-03-27 08:41:41 -07:00
Anatoly Yakovenko
e27d6d0988
validator confirmation
2019-03-27 08:41:41 -07:00
Greg Fitzgerald
cecdb7061e
Remove blockhash parameter from Bank::transfer
...
That parameter is an artifact from the Loom days, when I thought
Bank should implement the same interace as ThinClient.
2019-03-27 08:51:10 -06:00
Mark
16ff4ac1a8
Simplify storage interface in blocktree ( #3522 )
2019-03-27 01:36:39 -05:00
Greg Fitzgerald
8c69c40834
Make space for a new Transaction::new
2019-03-26 20:06:05 -06:00
Anatoly Yakovenko
9d73fbb84a
also check the delegate_id
2019-03-26 12:03:22 -07:00
anatoly yakovenko
420cbc45cd
Record the current nodes locktower votes from the bank ( #3502 )
...
* observed_locktower_stats
* fixup! observed_locktower_stats
2019-03-26 11:06:31 -07:00
carllin
615472b52c
Initailize locktower with heaviest bank ( #3489 )
2019-03-25 20:00:11 -07:00
Greg Fitzgerald
4bc3f70150
Boot VoteTransaction
2019-03-25 17:11:57 -07:00
Anatoly Yakovenko
59b4f40f4e
fixup! fixup! keep track of locktower slots and stakes
2019-03-25 16:05:28 -07:00
Anatoly Yakovenko
93c57934cb
fixup! keep track of locktower slots and stakes
2019-03-25 16:05:28 -07:00
Anatoly Yakovenko
e8e1d6b8ce
keep track of locktower slots and stakes
2019-03-25 16:05:28 -07:00
Stephen Akridge
4916cd8da5
bench-tps in a cargo test
2019-03-25 15:05:56 -07:00
anatoly yakovenko
51004881f8
filter out banks that have an older epoch ( #3472 )
2019-03-25 11:09:39 -07:00
Greg Fitzgerald
aefa9891c0
Delete unused code
2019-03-24 21:44:04 -07:00
Greg Fitzgerald
33972ef89e
Boot BudgetTransaction
2019-03-24 14:52:06 -06:00
Greg Fitzgerald
c49e84c75b
Boot StorageTransaction
2019-03-24 13:51:02 -07:00
Greg Fitzgerald
8ff1987d2d
Reorg Storage program to look more like the others
2019-03-24 13:51:02 -07:00
Greg Fitzgerald
acedf4ca5a
Move Instruction into its own module
2019-03-23 20:31:55 -07:00
carllin
68c35bfde6
Restart node test ( #3459 ) ( #3465 )
...
* Restart node test (#3459 )
* Add test to local_cluster for restarting a node
* fix so that we don't hit end of epoch - leader not found before trying to transfer
* Do not look for confirmations, b/c nobody is voting on empty transmissions in this single node test
2019-03-23 19:19:55 -07:00
Sathish
e1a3708844
Ensure accounts are unlocked ( #3458 )
2019-03-23 13:30:56 -07:00
Pankaj Garg
46ecac3310
Update leader slot in poh recorder if we skipped it ( #3452 )
...
* reset poh recorder with the original start slot
2019-03-23 13:07:09 -07:00
Michael Vines
f09b8d3921
Demote log level
2019-03-22 17:00:09 -07:00
anatoly yakovenko
52f6c33ff9
Make sure banking stage is recording with the same bank that it read ( #3447 )
...
* make sure banking stage is recording with the same bank that it read with
2019-03-22 14:17:39 -07:00
Sathish
06b0c98c75
Remove accounts when the fork is removed ( #3384 )
...
* Fix test
* Cleanup accounts when the fork is removed
* Update test to check for deleted accounts
2019-03-21 17:36:10 -07:00
Greg Fitzgerald
d0761f57e8
Add _program suffix to directories of crates with _program suffix
2019-03-21 16:24:06 -06:00
Stephen Akridge
412ebfcaf2
ReplayStage::new is too long
...
break into more functions
2019-03-21 14:08:11 -07:00
Greg Fitzgerald
07d55d0092
Downgrade 'No next leader found' to warning
2019-03-21 11:18:49 -06:00
anatoly yakovenko
148e08a8a5
Enable cluster tests ( #3372 )
...
* Cluster tests
* stable!
* fixup! stable!
* fixup! fixup! stable!
* fixup! fixup! fixup! stable!
* fixup! fixup! fixup! fixup! stable!
* fixed space
* add getNumBlocksSinceSignatureConfirmation entry for the json rpc docs
* Check in upcoming epochs for potential leadership slots in next_leader_slot()
2019-03-21 07:43:21 -07:00