Ryo Onodera
148a58865e
Make creating new snapshot.tar.bz2 truly-atomic ( #6902 )
2019-11-12 14:21:56 -07:00
Ryo Onodera
3faeb7fa79
Rename solana-netutil to solana-net-utils for consistency ( #6895 )
...
* sed -i -e 's/netutil/net_utils/g' $(git grep --files-with-matches netutil :**.rs)
* sed -i -e 's/netutil/net-utils/g' $(git grep --files-with-matches netutil)
* git mv netutil/ net-utils
* Tweak a bit
* Fix rustfmt & clippy
2019-11-12 13:37:13 -07:00
Rob Walker
bb00904fc8
add rent reserve for bootstrap stakes ( #6876 )
...
* genesis investor stakes
* assert rent is sufficient for these bootstrappers
2019-11-12 12:33:40 -08:00
Sunny Gleason
5903339c17
feat: return bank/block info with block-related results ( #6716 )
2019-11-12 14:49:41 -05:00
Michael Vines
c6b108ef4f
Don't panic in sdk/ when genesis fails to load ( #6892 )
2019-11-12 10:24:49 -07:00
Tyera Eulberg
7e82450d7b
Serialize transaction in proper wire format instead of json ( #6889 )
2019-11-12 10:45:10 -05:00
Sagar Dhawan
95d6586dd7
Remove debug datapoint that isn't being plotted ( #6873 )
2019-11-11 14:25:25 -08:00
Sagar Dhawan
816b2d7ff8
Tune repair to be less aggressive ( #6868 )
2019-11-11 13:12:22 -08:00
Michael Vines
4be646c695
discover() by gossip sockaddr instead of just by gossip ip address ( #6865 )
2019-11-11 12:42:58 -07:00
Tyera Eulberg
cc6e1ea200
Stub out `getBlocksSince` and `getBlock` methods ( #6853 )
...
* Add getBlocksSince rpc method, and initial stub of getBlock method
* Return test transactions from getBlock method
* clippy
* Add comment on get_block method
2019-11-11 13:18:34 -05:00
Michael Vines
cfab36cb1d
Include channel and commit info in the version of pre-release builds ( #6819 )
2019-11-10 22:39:13 -07:00
Justin Starry
5835b3b8eb
Increase timeout when confirming airdrop for max commitment ( #6858 )
...
* Increase timeout when confirming airdrop for max commitment
* Add commitment to airdrop rpc trace
* Flip commitment check
2019-11-10 12:20:52 -05:00
Michael Vines
1ddf90ed08
Compress contact_info_trace() output to improve CI log rendering ( #6852 )
2019-11-09 01:12:18 -07:00
Justin Starry
9807f47d4e
Rename genesis block to genesis config ( #6816 )
2019-11-08 23:56:57 -05:00
Justin Starry
02058ea699
Reject blocks with invalid last ticks in replay stage ( #6833 )
...
* Reject blocks with invalid last ticks in replay stage
* slot_full
2019-11-08 20:21:54 -05:00
Michael Vines
d1daeb44e6
Remove custom stack_size() ( #6844 )
2019-11-08 17:11:07 -07:00
Michael Vines
efdfc5c327
Remove TODOs ( #6843 )
2019-11-08 16:43:18 -07:00
Michael Vines
9c00ad9ff2
Remove some low-hanging TODOs ( #6839 )
2019-11-08 16:41:36 -07:00
Pankaj Garg
da425cc225
Don't insert coding shreds into blocktree on leader ( #6831 )
2019-11-08 13:54:23 -08:00
Michael Vines
b800642fa4
Add new fork log message for when the node is leader for consistency ( #6808 )
2019-11-08 12:30:25 -07:00
Parth
5bd05fba09
require `to` account signature ( #6658 )
...
* require to signature
* fixing invocation to create_account
* fix create_account references
* address review comment
* whacking bugs in tests
* fixing stake program tests
2019-11-08 15:57:35 +05:30
sakridge
8e81bc1b49
Fix pinning ( #6604 )
...
Remove Deref implementations and add more pass-throughs to the PinnedVec
wrapper.
Warm recyclers
set_pinnable
2019-11-07 19:48:33 -08:00
Rob Walker
b64b54f48f
unfork dalek ed25519 ( #6776 )
2019-11-07 17:08:10 -08:00
Sagar Dhawan
67d1e2903c
Upgrade Repair be more intelligent and agressive ( #6789 )
...
* Upgrade Repair be more intelligent and agressive
* Fix u64 casts
* Fix missing bracket
* Add 1 second delay to test to allow repair to kick in
2019-11-07 11:08:09 -08:00
Jack May
65de227520
Don't panic on packet data ( #6769 )
2019-11-06 14:32:37 -08:00
Pankaj Garg
0ace79939b
Add reference tick to data shreds ( #6772 )
...
* Add reference tick to data shreds
* fix tests
2019-11-06 13:27:58 -08:00
Tyera Eulberg
b3a75a60a4
Use rooted bank by default in rpc bank selection ( #6759 )
...
* Name anonymous parameters for clarity
* Add CommitmentConfig to select bank for rpc
* Add commitment information to jsonrpc docs
* Update send_and_confirm retries as per commitment defaults
* Pass CommitmentConfig into client requests; also various 'use' cleanup
* Use _with_commitment methods to speed local_cluster tests
* Pass CommitmentConfig into Archiver in order to enable quick confirmations in local_cluster tests
* Restore solana ping speed
* Increase wallet-sanity timeout to account for longer confirmation time
2019-11-06 14:15:00 -07:00
anatoly yakovenko
5e8668799c
Fewer recyclers. ( #6770 )
...
automerge
2019-11-06 12:35:51 -08:00
anatoly yakovenko
67f636545a
Refactor sigverify to stage for signing shreds on the GPU ( #6635 )
...
automerge
2019-11-06 10:52:30 -08:00
carllin
7ff2a44a63
Make last shred for an interrupted slot signed + typed ( #6760 )
2019-11-06 08:25:17 -07:00
Michael Vines
b5074d8577
Enable JSON RPC request/response logging by default ( #6758 )
2019-11-06 08:23:13 -07:00
carllin
24102a7435
Allow voting on empty banks ( #6719 )
...
* Allow votes on empty banks
* Remove making first bank is_delta true, no longer necessary for idling
* Remove votable from ledger tool
2019-11-06 01:02:26 -08:00
Jack May
9614d17024
Limit deserialization of data coming off the wire ( #6751 )
...
* Limit deserialization of data coming off the wire
* Feedback and cleanup
2019-11-06 00:07:57 -08:00
Michael Vines
09e648f957
ledger-tool/: Include full validator voting history in fork-graph ( #6756 )
2019-11-05 19:40:00 -07:00
carllin
8f91b5aab3
Add threshold to repairman for same slot ( #6728 )
2019-11-05 12:48:45 -08:00
sakridge
c312d4fba0
Calculate proofs collected and don't encrypt if there are none ( #6698 )
2019-11-05 11:38:50 -08:00
Michael Vines
7203036e3e
Adjust nofiles within Blocktree::open() for all ledger/ users ( #6737 )
...
automerge
2019-11-05 11:18:49 -08:00
Tyera Eulberg
c6931dcb07
Remove credit-only account handling ( #6726 )
...
* Renaming
- credit-only/credit-debit to read-only/read-write
- debitable to writable
* Remove credit handling, making credit-only accounts read-only
* Update programs to remove deprecated credit-only account designation
* Use readonly and writable instead of underscored types
2019-11-05 09:38:35 -07:00
Michael Vines
fba1af6ea9
ledger-tool can now load a ledger snapshot ( #6729 )
2019-11-04 22:14:55 -07:00
anatoly yakovenko
b825d04597
Pull perf into a separate module. ( #6718 )
...
automerge
2019-11-04 20:13:43 -08:00
Michael Vines
4d52f47f87
Move get_bank_forks() into ledger/ so its available for use by ledger-tool/ ( #6720 )
2019-11-04 19:10:06 -07:00
anatoly yakovenko
f54cfcdb8f
Store and persists full stack of tower votes in gossip ( #6695 )
...
* vote array
wip
wip
wip
update
gossip index should match tower index
tests build
clippy
test index after expired vote
test
bank specific last vote sync time
* verify
* we are likely to see many more warnings about old votes now
2019-11-04 16:19:54 -08:00
sakridge
57983980a7
Lower verify-batch-size to debug ( #6722 )
...
automerge
2019-11-04 16:00:59 -08:00
Tyera Eulberg
33f4aaf3fd
Rename confidence to commitment ( #6714 )
2019-11-04 16:44:27 -07:00
Pankaj Garg
c138d692b1
Show all ports for nodes in gossip table ( #6717 )
...
* Show all ports for nodes in gossip table
* review comments
2019-11-04 15:05:08 -08:00
Michael Vines
5e3697807c
Fail gracefully if AVX support is missing ( #6705 )
2019-11-04 11:03:39 -07:00
Sagar Dhawan
568475e2db
Fix incorrectly signed CrdsValues ( #6696 )
2019-11-03 10:07:51 -08:00
anatoly yakovenko
9ea398416e
Sign shreds on the GPU ( #6595 )
...
* sign gpu shreds
* wip
* checks
* tests build
* test
* tests
* test
* nits
* sign cpu test
* write out the sigs in parallel
* clippy
* cpu test
* prepare secret for gpu
* woot!
* update
* bump perf libs
2019-11-02 06:23:14 -07:00
Michael Vines
50a17fc00b
Use Slot and Epoch type aliases instead of raw u64 ( #6693 )
...
automerge
2019-11-02 00:38:30 -07:00
Sagar Dhawan
a57f6b70da
Fix swapped repair and forwards addrs ( #6691 )
...
automerge
2019-11-01 16:01:42 -07:00
anatoly yakovenko
385b4ce959
Get rid of verified packets and use the Meta::discard flag ( #6674 )
...
* get rid of verified packets and use the disabled meta field everywhere
2019-11-01 14:23:03 -07:00
Sagar Dhawan
2d67962c2f
Send repairman shreds to the repair socket ( #6671 )
2019-10-31 18:23:50 -07:00
Justin Starry
e8e5ddc55d
Verify number of hashes for each block of entries ( #6262 )
...
* Verify number of hashes for each block of entries
* Fix blocktree processor tick check
* Rebase once more
2019-10-31 16:38:50 -04:00
carllin
59f3dc3b6b
Fix PohRecorder Metrics ( #6644 )
...
* Update Poh Recorder Dashboard
* Update PohRecorder logging
2019-10-30 18:55:29 -07:00
Rob Walker
fa12a5f70b
kill rent calculator ( #6625 )
2019-10-30 16:25:12 -07:00
sakridge
38491c8c4b
Reduce verify-batch-size log ( #6623 )
2019-10-30 13:41:11 -07:00
Sagar Dhawan
801337a422
Refactor Weighted Shuffle ( #6614 )
...
automerge
2019-10-29 21:02:11 -07:00
Sagar Dhawan
ef3aa2731c
Fix Weighted Best calculation ( #6606 )
...
automerge
2019-10-29 17:04:11 -07:00
anatoly yakovenko
34a9619806
SigVerify stage for shreds. ( #6563 )
2019-10-28 16:07:51 -07:00
Sagar Dhawan
579a02529d
Fix unnecessarily copying shreds in broadcast stage ( #6588 )
...
* Optimize coalesce_shreds to not explictly clone
* Remove Coalesce Shreds altogether
* fn no longer needs clippy exception
2019-10-28 14:58:27 -07:00
anatoly yakovenko
243fa6cf63
Shred gpu sigverify ( #6520 )
...
Implement APIs for verifying shred signatures on the GPU.
2019-10-28 10:29:38 -07:00
carllin
6efaaa9d7a
Blocktree metrics ( #6527 )
...
* Add metrics for blocktree performance
* Plumb metrics through window service
2019-10-26 16:15:59 -07:00
sakridge
53c7be32b6
Add more retransmit and streamer stats ( #6534 )
2019-10-24 19:27:19 -07:00
Michael Vines
397ea05aa7
spy nodes are now gossip entrypoints ( #6532 )
2019-10-24 15:35:33 -07:00
Rob Walker
b4119c454a
credit_only credits forwarding ( #6509 )
...
* credit_only_credits_forwarding
* whack transfer_now()
* fixup
* bench should retry the airdrop TX
* fixup
* try to make bench-exchange a bit more robust, informative
2019-10-23 22:01:22 -07:00
sakridge
03d29a8311
Async poh verify ( #6353 )
...
* Async poh verify
* Up ticks_per_s to 160
GPU poh verify needs shorter poh sequences or it takes forever to
verify. Keep slot time the same at 400ms.
* Fix stats
* Don't halt on ticks
* Increase retries for local_cluster tests and make repairman test serial
2019-10-23 12:11:04 -07:00
Michael Vines
35cc74ef25
Add GenesisBlock::OperatingMode to control how cluster features are activated ( #6430 )
2019-10-23 11:50:10 -07:00
Sunny Gleason
0b2d4f32fa
feat: get epoch schedule rpc, update cli ( #6500 )
2019-10-22 16:41:18 -04:00
sakridge
e6438098e1
Increase archiver polling timeout ( #6501 )
...
automerge
2019-10-22 12:15:55 -07:00
carllin
b38bf90de7
Deshred blocks in parallel ( #6461 )
...
* Deshred in parallel
* Add tests for corrupt slots and parallel deshred
* Rename load_blocktree_entries to load_blocktree_entries_with_shred_count
2019-10-21 16:15:10 -07:00
Pankaj Garg
84e911361a
Use constants instead of lazy_static for shred header sizes ( #6472 )
2019-10-21 12:46:16 -07:00
Sagar Dhawan
364583ea5c
Fix copying packets in Window Service ( #6429 )
...
* Fix copying packets in Window Service
* Parallelize over batches instead of within batches
2019-10-21 12:04:52 -07:00
Greg Fitzgerald
9232057e95
Rename replicator to archiver ( #6464 )
...
* Rename replicator to archiver
* cargo fmt
* Fix grammar
2019-10-21 11:29:37 -06:00
Greg Fitzgerald
2636418659
Move blocktree_processor to solana_ledger ( #6460 )
...
* Drop core::result dependency in bank_forks
* Move blocktree_processor into solana_ledger
2019-10-20 09:54:38 -06:00
Justin Starry
31e9074ae5
Rename leader_after_slots to leader_after_n_slots ( #6459 )
2019-10-19 23:28:33 -04:00
Rob Walker
e2c316d2d0
system_instruction_processor updates ( #6448 )
...
* zero lamport account creation
* whack create_user_account, take 2
* target->to
* ..
* ..
* update chacha golden
* update chacha golden
* ..
* ..
2019-10-19 18:23:27 -07:00
sakridge
74ee88d9bc
Add storage stage and bank_forks tests to integration ( #6458 )
2019-10-19 12:09:45 -07:00
Pankaj Garg
badeb4d31a
Rework shred headers to fix position of signature ( #6451 )
...
* Rework shred headers to fix position of signature
* fix clippy
2019-10-18 22:55:59 -07:00
Tyera Eulberg
785c2574cd
Check that transaction fee-payer is a debitable account ( #6454 )
...
automerge
2019-10-18 20:39:05 -07:00
sakridge
1a77f7ce3b
Change to 0x7f which is a valid short_vec len ( #6455 )
...
automerge
2019-10-18 19:56:48 -07:00
Greg Fitzgerald
6e7dccbbfb
Add an error enum to snapshot_utils ( #6453 )
2019-10-18 19:16:06 -06:00
sakridge
32bfced6a4
Add offset checks for sigverify ( #6452 )
...
* Add offset checks for sigverify
* decode_len returning error instead of unwrap
2019-10-18 17:52:59 -07:00
Greg Fitzgerald
e81ba8e79f
Split snapshot_package module ( #6447 )
...
automerge
2019-10-18 14:58:16 -07:00
Greg Fitzgerald
a19ffb353d
Don't hide serialization errors ( #6443 )
...
automerge
2019-10-18 13:35:05 -07:00
Ryo Onodera
193c9a08e0
Reject TXs when there is a mismatch ( #6236 )
...
automerge
2019-10-18 09:48:35 -07:00
Greg Fitzgerald
5468be2ef9
Add solana-ledger crate ( #6415 )
...
automerge
2019-10-18 09:28:51 -07:00
TristanDebrunner
9cf9de6044
Remove the Cursor struct ( #6426 )
2019-10-18 09:18:36 -06:00
carllin
27c0d30a07
Fix logging ( #6417 )
2019-10-18 02:06:41 -07:00
Pankaj Garg
6c33c3a5ba
Update shred tests to use specific error codes ( #6428 )
...
automerge
2019-10-17 22:50:38 -07:00
Sagar Dhawan
298ba34c3c
Add flag to mark a packet as discarded ( #6427 )
2019-10-17 16:26:29 -07:00
Greg Fitzgerald
24846b7b61
Don't use BlocktreeError from Shredder ( #6423 )
...
automerge
2019-10-17 15:44:15 -07:00
TristanDebrunner
9e52d11ad0
Remove Backend trait ( #6407 )
2019-10-17 15:19:27 -06:00
Greg Fitzgerald
d3068c3918
Remove circular dependencies in core ( #6408 )
...
* Remove core::result dependency from blocktree
* Remove core::result dependency from shred
* Move Packet from core::packet to sdk::packet
This way we don't need to split perf_libs yet.
* Disable packet when compiling BPF programs
2019-10-17 11:37:30 -06:00
Greg Fitzgerald
a931ad40c8
Remove unused code in entry ( #6414 )
...
automerge
2019-10-17 09:59:40 -07:00
Pankaj Garg
83c1831a01
Fix replay stage test ( #6406 )
2019-10-16 15:41:43 -07:00
carllin
ccb4e32ee0
ReplayStage metrics ( #6358 )
...
* ReplayStage metrics
* Add more metrics
* Refactor get_slot_entries_with_shred_count() to detect wasted work
* Update dashboard
* Update broadcast slots to micros
* Add broadcast dashboard
2019-10-16 14:32:18 -07:00
Justin Starry
7e6e7e8406
Remove special handling of first ledger tick ( #6263 )
...
* Remove special handling of first ledger tick
* Fix subtraction overflow
* @garious feedback
* Back to height
* More tick_height name changes
* Fix off-by-one
* Fix leader tick error
* Fix merge conflict
* Fix recently added test
2019-10-16 15:53:11 -04:00
Ryo Onodera
e267dfacdd
Stabilize some banking stage tests ( #6251 )
...
* Stabilize some banking stage tests
Fixes #5660
* Fix CI...
* clean up
* Fix ci
* Address review nits
* Use bank.max_tick_height due to off-by-one for no PohRecord's clearing bank
* Fix CI...
* Use bank.max_tick_height() instead for clarity
2019-10-16 12:37:27 -07:00
Ryo Onodera
f4c5da3c72
Fix unaligned read of short_vec pubkey_size in sigverify ( #6388 )
...
automerge
2019-10-16 11:09:17 -07:00
Pankaj Garg
a258e1e0b3
Fix flaky test_recv_mmsg_batch_size ( #6399 )
...
automerge
2019-10-16 11:01:41 -07:00