sakridge
ce98088457
Track inserted repair shreds ( #12455 )
2020-09-29 14:13:21 -07:00
Justin Starry
6601ec8f26
Record and store invoked instructions in transaction meta ( #12311 )
...
* Record invoked instructions and store in transaction meta
* Enable cpi recording if transaction sender is some
* Rename invoked to innerInstructions
2020-09-24 22:36:22 +08:00
Justin Starry
731a943239
Remove transaction encoding from storage layer ( #12404 )
2020-09-24 13:10:29 +08:00
Josh
65a6bfad09
Add blockstore column to store performance sampling data ( #12251 )
...
* Add blockstore column to store performance sampling data
* introduce timer and write performance metrics to blockstore
* introduce getRecentPerformanceSamples rpc
* only run on rpc nodes enabled with transaction history
* add unit tests for get_recent_performance_samples
* remove RpcResponse from rpc call
* refactor to use Instant::now and elapsed for timer
* switch to root bank and ensure not negative subraction
* Add PerfSamples to purge/compaction
* refactor to use Instant::now and elapsed for timer
* switch to root bank and ensure not negative subraction
* remove duplicate constants
Co-authored-by: Tyera Eulberg <tyera@solana.com>
2020-09-22 12:26:32 -07:00
Tyera Eulberg
05db41fe9c
Cache block time in Blockstore ( #11955 )
...
* Add blockstore column to cache block times
* Add method to cache block time
* Add service to cache block time
* Update rpc getBlockTime to use new method, and refactor blockstore slightly
* Return block_time with confirmed block, if available
* Add measure and warning to cache-block-time
2020-09-09 09:33:14 -06:00
carllin
1c1a3f979d
Detect and notify when deserializable shreds are available ( #11816 )
...
* Add logic to check for complete data ranges
* Add RPC signature notification
Co-authored-by: Carl <carl@solana.com>
2020-09-01 22:06:06 -07:00
Michael Vines
247f27af37
Submit a vote timestamp every vote ( #10630 )
...
* Submit a timestamp for every vote
* Submit at most one vote timestamp per second
* Submit a timestamp for every new vote
Co-authored-by: Tyera Eulberg <tyera@solana.com>
2020-08-21 11:10:51 -06:00
Trent Nelson
8841c3398c
Bump MacOS nofile recommendation message
2020-08-20 23:57:07 +00:00
carllin
b7ed06b17a
Cleanup test utilities ( #11723 )
...
* Add voting utility
* Add blockstore utility
Co-authored-by: Carl <carl@solana.com>
2020-08-20 05:04:38 +00:00
Trent Nelson
11951eb009
Sync FD limit and max maps to 500k
2020-08-19 16:36:03 +00:00
Michael Vines
d15173ad9d
Address latest nightly clippy lints, but globally disable stable_sort_primitive
2020-08-17 22:36:10 -07:00
Michael Vines
adc984a225
Rename Binary64 to Base64. Establish Base58 encoding
2020-08-17 17:26:29 -07:00
Michael Vines
b5f3ced860
Add base64 (binary64) encoding for getConfirmedTransaction/getConfirmedBlock
2020-08-17 17:26:29 -07:00
Tyera Eulberg
6c5b8f324a
Rpc: Add until parameter for getConfirmedSignaturesForAddress2 ( #11644 )
...
* Refactor bigtable apis to accept start and end keys
* Make helper fn to deserialize cell data
* Refactor get_confirmed_signatures_for_address to use get_row_data range
* Add until param to get_confirmed_signatures_for_address
* Add until param to blockstore api
* Plumb until through client/cli
* Simplify client params
2020-08-15 10:42:17 -06:00
Tyera Eulberg
99fb36fe45
RPC: getConfirmedSignaturesForAddress2 only returns confirmed signatures ( #11615 )
...
* Add failing test case
* Limit to only rooted slots
2020-08-13 11:07:42 -06:00
Tyera Eulberg
de5fb3ba0e
Blockstore address signatures: handle slots that cross primary indexes, and refactor get_confirmed_signatures_for_address2 ( #11497 )
...
* Freeze address-signature index in the middle of slot to show failure case
* Secondary filter on signature
* Use AddressSignatures iterator instead of manually decrementing slots
* Remove unused method
* Add metrics
* Add transaction-status-index doccumentation
2020-08-10 10:27:38 -06:00
Tyera Eulberg
5530ee4c95
Add address-based lower bound to get_confirmed_signatures_for_address2 loop ( #11426 )
2020-08-06 22:29:25 +00:00
Tyera Eulberg
1061b50665
Fix blockstore empty panic ( #11423 )
...
* Add panicking test
* Add failing test: fresh transaction-status column shouldn't point at valid root 0
* Prevent transaction status match outside of primary-index bounds
* Initialize transaction-status and address-signature primer entries with Slot::MAX
* Revert "Add failing test: fresh transaction-status column shouldn't point at valid root 0"
This reverts commit cbad2a9fae22e5531e3b4ff1b0a9d6a223826c71.
* Revert "Initialize transaction-status and address-signature primer entries with Slot::MAX"
This reverts commit ffaeac0669d0cbe18dd68b5ce177e15a92360b72.
2020-08-06 22:21:46 +00:00
Michael Vines
02c0981ecf
Rename startAfter to before
2020-08-05 14:33:14 -07:00
Michael Vines
a11f137810
Rework get_confirmed_signatures_for_address2
2020-08-05 14:33:14 -07:00
Michael Vines
1b2276520b
Add getConfirmedSignaturesForAddress2 RPC method
2020-08-05 14:33:14 -07:00
Michael Vines
494968be66
UiTransactionEncoding is now copy
2020-08-05 14:27:12 -07:00
Michael Vines
eefcf484cb
clippy
2020-08-03 18:35:15 +00:00
Michael Vines
491f5ae61a
Add block time placeholder to getConfirmedBlock
2020-07-10 14:47:11 +00:00
carllin
3f6042d8b3
Add RepairWeight to track votes seen in gossip for weighted repair ( #10903 )
...
* Add RepairWeight
Co-authored-by: Carl <carl@solana.com>
2020-07-06 22:49:40 -07:00
sakridge
58a475b789
Add db recovery methods ( #10838 )
2020-07-06 12:43:45 -07:00
carllin
f014c94369
Add breakdown of erasure blobs ( #10912 )
...
Co-authored-by: Carl <carl@solana.com>
2020-07-03 17:44:32 -07:00
carllin
f17ac70bb2
Add weighted traversal ( #10877 )
...
Co-authored-by: Carl <carl@solana.com>
2020-07-02 14:33:04 -07:00
Tyera Eulberg
2669ccb864
Update struct prefixes to Ui ( #10874 )
...
* Update comments
* Use Ui prefix
2020-07-01 20:06:40 +00:00
Ryo Onodera
b89e506cbb
Consistently create temp dirs under ledger/farf ( #10848 )
2020-07-01 11:38:59 +09:00
sakridge
583cec922b
Remove ledger purge batching ( #10830 )
2020-06-29 14:44:35 -07:00
Greg Fitzgerald
1c498369b5
Remove fee-payer guesswork from Message and Transaction ( #10776 )
...
* Make Message::new_with_payer the default constructor
* Remove Transaction::new_[un]signed_instructions
These guess the fee-payer instead of stating it explicitly
2020-06-24 14:52:38 -06:00
carllin
77b8de193c
Add utility functions for testing ( #10749 )
...
* Add ancestor iterator
* Add blockstore generation from trees
Co-authored-by: Carl <carl@solana.com>
2020-06-23 12:05:00 -07:00
carllin
a33fef9af2
Add repair breakdown by slot and index ( #10717 )
...
* Slot full logging
* Repair stats logging
Co-authored-by: Carl <carl@solana.com>
2020-06-19 18:28:15 -07:00
Greg Fitzgerald
0550b893b0
Fix typos ( #10675 )
...
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-06-17 20:54:52 -07:00
Greg Fitzgerald
6ee222363e
Move BankForks to solana_runtime ( #10637 )
...
* Move BankForks to solana_runtime
* Update imports
2020-06-17 15:27:03 +00:00
Kristofer Peterson
e23340d89e
Clippy cleanup for all targets and nighly rust (also support 1.44.0) ( #10445 )
...
* address warnings from 'rustup run beta cargo clippy --workspace'
minor refactoring in:
- cli/src/cli.rs
- cli/src/offline/blockhash_query.rs
- logger/src/lib.rs
- runtime/src/accounts_db.rs
expect some performance improvement AccountsDB::clean_accounts()
* address warnings from 'rustup run beta cargo clippy --workspace --tests'
* address warnings from 'rustup run nightly cargo clippy --workspace --all-targets'
* rustfmt
* fix warning stragglers
* properly fix clippy warnings test_vote_subscribe()
replace ref-to-arc with ref parameters where arc not cloned
* Remove lock around JsonRpcRequestProcessor (#10417 )
automerge
* make ancestors parameter optional to avoid forcing construction of empty hash maps
Co-authored-by: Greg Fitzgerald <greg@solana.com>
2020-06-09 09:38:14 +09:00
Ryo Onodera
caa7f7a0c9
Support opening an in-use rocksdb as secondary ( #10209 )
...
automerge
2020-06-02 21:32:44 -07:00
Tyera Eulberg
eee9a08376
Purge TransactionStatus and AddressSignatures exactly from ledger-tool ( #10358 )
...
* Add failing test
* Add execution path to purge primary-index columns exactly
* Fail gracefully if older TransactionStatus rocksdb keys are present
* Remove columns_empty check for special columns
* Move blockstore purge methods to submodule
* Remove unused column empty check
2020-06-02 19:49:31 -06:00
Greg Fitzgerald
19d11800bf
Remove WithSigner ( #10325 )
...
automerge
2020-05-29 23:17:44 -07:00
carllin
bc37dfc4c1
log leader ( #10316 )
...
automerge
2020-05-29 04:35:20 -07:00
Kristofer Peterson
fb4d8e1f62
cleanup clippy tests ( #10172 )
...
automerge
2020-05-29 00:26:06 -07:00
Michael Vines
5ac2ae1178
Purge next slots to avoid a blockstore_processor panic on restart ( #10281 )
2020-05-27 19:55:40 -07:00
Michael Vines
156387aba4
LedgerCleanupService no longer causes an OOM and actually purges ( #10199 )
...
* cleanup_ledger() now services new_root_receiver while purging
* purge_slots() now fully deletes before compacting
* Add ledger pruning grafana graph
2020-05-24 21:41:54 -07:00
carllin
97f2bcff69
master: Add nonce to shreds repairs, add shred data size to header ( #10109 )
...
* Add nonce to shreds/repairs
* Add data shred size to header
Co-authored-by: Carl <carl@solana.com>
2020-05-19 12:38:18 -07:00
Michael Vines
7080fb9b37
Abort if the open fd limit cannot be increased ( #10064 )
...
automerge
2020-05-15 12:14:21 -07:00
Kristofer Peterson
58ef02f02b
9951 clippy errors in the test suite ( #10030 )
...
automerge
2020-05-15 09:35:43 -07:00
sakridge
9575afc8fa
Refactor blockstore recovery code ( #10008 )
2020-05-13 10:09:38 -07:00
sakridge
903a8a3196
Add retransmit packets_by_slot metrics ( #9975 )
2020-05-11 13:49:10 -07:00
carllin
ad3c8fb812
More logging around failure ( #9967 )
...
automerge
2020-05-10 16:01:20 -07:00