Pankaj Garg
2dd20c38b2
fix the test
2019-01-31 12:55:17 -08:00
Pankaj Garg
aa1bd603e6
Fix recvmmsg test for timeout
2019-01-31 12:55:17 -08:00
anatoly yakovenko
2754ceec60
StatusDeque split into separate objects with their own root checkpoint strategy ( #2613 )
...
Split up StatusDeque into different modules
* LastIdQueue tracks last_ids
* StatusCache keeps track of signature statuses
* StatusCache stores success as a bit in a bloom filter
* Overhead for 1m Ok transactions is 4mb in memory
* Less concurrency between the objects, last_id and status_cache are read and written to at different points in the pipeline
* Each object has its own strategy for merging into the root checkpoint
2019-01-31 06:53:52 -08:00
Greg Fitzgerald
609e915169
Fix clippy warning
...
Always pass Arcs by reference. Then you'll only need to clone()
to cross thread boundaries.
2019-01-30 21:59:05 -07:00
Greg Fitzgerald
11f1c00ca7
Only send pubkey to ReplayStage
2019-01-30 21:59:05 -07:00
Greg Fitzgerald
a74b24fdf0
Only store the fullnode's pubkey
...
Only vote_signer is used for signing
2019-01-30 21:59:05 -07:00
Greg Fitzgerald
e25992a011
Always give Fullnode a vote signer
...
This will allow us to use the the signer's pubkey as the node id.
Disable voting with a configuration option.
2019-01-30 21:59:05 -07:00
Rob Walker
1b50fbbc90
remove Result<> from Blob accessors, add parent ( #2608 )
...
* remove Result<> from Blob accessors, add parent
* update chacha's golden
* fixup benches
2019-01-30 20:18:28 -08:00
Pankaj Garg
a746969995
Don't set socket as blocking in recvmmsg for non Linux targets ( #2611 )
...
* Don't set socket as blocking in recvmmsg for non Linux targets
- The user of the function is controling this flag
* added a test
2019-01-30 19:47:53 -08:00
Michael Vines
c01290438f
Move virtual genesis tick into the ledger proper as entry 0
2019-01-30 14:02:07 -08:00
Michael Vines
9e9c82869a
create_tmp_sample_ledger() need not return the genesis block
2019-01-30 14:02:07 -08:00
Michael Vines
494b143453
Delete create_tmp_genesis
2019-01-30 14:02:07 -08:00
Michael Vines
8cc1cde0fe
create_tmp_sample_ledger() now returns entry_height and last_id
2019-01-30 14:02:07 -08:00
Greg Fitzgerald
883fc39c80
Rename EntryTree to Blocktree
2019-01-30 13:29:34 -07:00
Anatoly Yakovenko
1c0758e3bd
Accounts refactoring for forking.
...
* Move last_id and signature dup handling out of Accounts.
* Accounts that handle overlays.
2019-01-30 11:36:49 -08:00
Greg Fitzgerald
668d353add
Inline VoteSigner::new_vote_account
...
So that we can stop using the validator keypair to fund the
the voting account.
2019-01-30 10:42:42 -07:00
Greg Fitzgerald
06a1681fdc
Remove redundant annotations
2019-01-30 10:42:42 -07:00
Michael Vines
16e705dc75
Boil away unneeded Fullnode::new_* functions
2019-01-29 20:10:10 -08:00
Michael Vines
b52228feb9
Remove assumption that the mint starts with 10_000 tokens
2019-01-29 20:10:10 -08:00
Michael Vines
25f25d0f82
new_fullnode: don't return the genesis_block, nobody uses it
2019-01-29 17:51:07 -08:00
Greg Fitzgerald
85e7046caf
Use signer for signing transactions, not constructing them
2019-01-29 18:35:05 -07:00
Greg Fitzgerald
c741a960b9
Generalize Transaction::new to accept anything that implements KeypairUtil
2019-01-29 18:35:05 -07:00
Greg Fitzgerald
34c8b2cc2f
Remove redundant Arc
2019-01-29 18:35:05 -07:00
Greg Fitzgerald
278effad49
Implement KeypairUtil for VoteSignerProxy
2019-01-29 18:35:05 -07:00
Rob Walker
a0bed5375d
remove println!, add check to keep it out ( #2585 )
...
* remove debugging prints
* remove println!, add check to keep it out
2019-01-29 16:02:03 -08:00
Michael Vines
a2c3369713
storage_state field doesn't actually exist
2019-01-29 12:34:59 -08:00
Rob Walker
1f9ab7f58f
copy bank for TPU
2019-01-29 12:11:48 -08:00
Anatoly Yakovenko
3e1a926aa6
wip
2019-01-29 12:11:48 -08:00
Michael Vines
df136578d4
Remove unnecessary FullnodeConfig::rpc_port option
2019-01-29 10:22:39 -08:00
Michael Vines
ae7f169027
Add FullnodeConfig struct to Fullnode::new* functions
...
This avoids having to touch *every* Fullnode::new* call site when
a new fullnode option is added
2019-01-29 09:42:48 -08:00
Tyera Eulberg
6da7a784f2
Stream entries ( #2582 )
...
* Add entry streaming option
* Fix tests
* Remove obsolete comment
* Move entry stream functionality to struct w/ trait in order to test without i/o
2019-01-29 00:21:27 -08:00
Michael Vines
12cddf725e
Harmonize Fullnode::new* function arguments
2019-01-28 22:37:56 -08:00
Michael Vines
bfaf5634a1
.unwrap() in tests instead of assert!()ing .is_ok() for a better failure message
2019-01-28 16:10:32 -08:00
Stephen Akridge
53afa64634
Remove storage_state from the bank
...
Construct in TVU and pass to RPC and StorageStage instead.
2019-01-28 15:41:41 -08:00
Rob Walker
c9bf9ce094
eliminate re-use of a TX here, we're testing for empty account balance ( #2576 )
2019-01-28 15:21:08 -08:00
Pankaj Garg
637f58364a
remove io from the tests
2019-01-28 13:52:13 -08:00
Pankaj Garg
1bd04b26e5
Remove ignore flag from rpc_pubsub tests
2019-01-28 13:52:13 -08:00
Michael Vines
29ef9370a6
Remove LeaderSchedulerConfig options
2019-01-28 13:51:01 -08:00
Stephen Akridge
2262f279d5
Reduce boilerplate code with helper function to create
...
fullnode/bank/genesis
2019-01-28 13:48:58 -08:00
Michael Vines
e4f477cf90
Retype num_ticks as u64 to reduce casting
2019-01-28 11:24:50 -08:00
Greg Fitzgerald
33f921235d
Improve message-signing ergonomics
2019-01-26 14:57:22 -07:00
Greg Fitzgerald
1bae87d4b3
Add unit-test-friendly VoteSignerProxy constructor
2019-01-26 14:56:49 -07:00
Greg Fitzgerald
1e43fb587e
Rename the module that now contains only GenKeys
2019-01-26 06:57:24 -08:00
Sagar Dhawan
d65e7b9fcc
Speedup rotation ( #2468 )
...
Speedup leader to validator transitions
2019-01-26 13:58:08 +05:30
Michael Vines
4bb6549895
Genesis block is now a json file
2019-01-25 09:05:15 -08:00
Rob Walker
e9e01557b7
fix leaked threads from unclosed fullnode
2019-01-25 03:02:49 -08:00
Sathish
e0f046b7a5
Optimize Transaction/Instruction serialization with custom routine ( #2515 )
...
* Optimize transaction serialization with custom routine to reduce the serialized size.
* Update serialized_size to accept self as parameter
* Optimize serialize / deserialize operations
2019-01-24 21:14:15 -08:00
Pankaj Garg
81c82b5af9
Add test for ignore ProgramErrors in process_entries ( #2544 )
2019-01-24 13:37:12 -08:00
Pankaj Garg
a9b083e585
Set fetch stage socket non blocking to false while during recv ( #2542 )
...
* Set fetch stage socket non blocking to false while during recv
* remove ProgramError changes from this PR
2019-01-24 12:46:40 -08:00
Tyera Eulberg
b7be5b9a7a
Add no-signer argument
2019-01-24 10:47:37 -08:00