behzad nouri
28956d7653
removes feature gate code preventing crediting accounts that end rent paying ( #28818 )
2022-11-15 19:55:34 +00:00
Brooks Prumo
d798e751a0
Disables EAH with short epochs ( #28803 )
2022-11-15 13:26:19 -05:00
Jeff Washington (jwash)
b572422d24
test ancient append vecs with dead slots ( #28800 )
2022-11-15 10:21:38 -08:00
Jeff Washington (jwash)
a21f536b3a
add scan statistics in hash calc for ancient append vecs ( #28816 )
2022-11-15 09:31:24 -08:00
Brooks Prumo
ac9b11762a
Lowers test's account data size to avoid hitting MaxLoadedAccountsDataSizeExceed ( #28814 )
2022-11-15 16:52:35 +00:00
Jeff Washington (jwash)
84cfdf23fc
remove LoadedAccount::stored_size ( #28802 )
2022-11-15 05:47:12 -08:00
Jeff Washington (jwash)
ec58cda2e7
improve ancient append vec test ( #28799 )
2022-11-15 05:46:09 -08:00
Brooks Prumo
d4cf18421d
Use 400 slots-per-epoch in EAH tests ( #28801 )
2022-11-14 17:49:20 -05:00
Ikko Ashimine
c882d165e2
Fix typo in cost_tracker.rs ( #28781 )
...
Substract -> Subtract
2022-11-14 14:36:59 -07:00
Brooks Prumo
503da50f2c
Verifies EAH in SnapshotHash ( #28775 )
2022-11-14 16:02:08 -05:00
Brooks Prumo
0bfea02056
Snapshots wait for EAH calculations to complete ( #28777 )
2022-11-14 11:34:44 -06:00
Tao Zhu
81dc2e56ac
Cap accounts data a transaction can load by its requested limit ( #27840 )
...
- Add new compute-budget instruction to set transaction-wide accounts data size limit
- Set default accounts data limit to 10MB, and max to 100MB, per transaction;
- Add getters to make changing default and/or max values easier in the future with feature gates;
- added error counter for transactions exceed data size limit
2022-11-14 10:29:35 -06:00
Jeff Washington (jwash)
f69e847137
allow ancient append vec threshold to be set on cli ( #28707 )
...
* allow ancient append vec threshold to be set on cli
* pr responses
2022-11-11 11:30:05 -08:00
Jeff Washington (jwash)
b2ece6368f
shrink ancient append vecs at 90% ( #28736 )
2022-11-10 20:05:34 -08:00
Alexander Meißner
4142f42319
Refactor - Move `Executor` in program-runtime crate ( #28782 )
...
* Moves CreateMetrics into the program-runtime crate.
* Moves the Executor trait into executor.rs
* Removes the first_instruction_account parameter from Executor::execute().
2022-11-10 21:11:00 +01:00
Brooks Prumo
628ac0d4ea
Refactors SnapshotPackage::new() to use let-else statements ( #28779 )
2022-11-10 11:29:51 -05:00
Jeff Washington (jwash)
552248906e
report ancient stats correctly in drop_or_recycle_stores ( #28747 )
2022-11-10 07:27:38 -08:00
Brooks Prumo
8eeabf9042
Skips taking a bank snapshot for EAH requests ( #28757 )
2022-11-10 15:14:26 +00:00
Brooks Prumo
4d6653598b
Upgrades to Rust 1.65.0 ( #28741 )
2022-11-09 17:15:03 -05:00
Brooks Prumo
d1ba42180d
clippy for rust 1.65.0 ( #28765 )
2022-11-09 19:39:38 +00:00
Brooks Prumo
df81cd11ba
Refactors snapshot_archive_info in bank_from_snapshot_archives() ( #28776 )
2022-11-09 18:41:27 +00:00
Brooks Prumo
9e1cdc7e60
Enables not taking a bank snapshot ( #28756 )
2022-11-09 12:43:33 -05:00
Brooks Prumo
d4c2900590
Removes `snapshot_bank()` wrapper fn ( #28753 )
2022-11-07 15:09:31 +00:00
Brooks Prumo
0873b90d5f
Treats all bank snapshot errors as fatal ( #28752 )
2022-11-07 11:03:11 +00:00
Jeff Washington (jwash)
0bc66c82aa
remove unused stat ancient.skipped_shrink ( #28749 )
2022-11-05 08:09:19 -07:00
Jeff Washington (jwash)
99565570b8
add ancient append vec stats ( #28737 )
2022-11-05 08:08:52 -07:00
Jeff Washington (jwash)
5937a10810
ancient append vec stat fixes ( #28731 )
2022-11-04 04:48:19 -07:00
Brooks Prumo
064cfc70d2
Removes cluster_type from AccountsPackage ( #28725 )
2022-11-02 18:21:13 -04:00
Jeff Washington (jwash)
88d7f6cc9d
add ability to flush read only accounts cache ( #28726 )
2022-11-02 12:03:32 -07:00
Jeff Washington (jwash)
faf32e2a94
add ancient append vec tests ( #28712 )
...
add test test_combine_ancient_slots_simple
2022-11-02 11:24:08 -07:00
Brooks Prumo
0a62f01cab
Removes EAH string from datapoint metric ( #28724 )
2022-11-02 14:14:08 -04:00
Jeff Washington (jwash)
ee0320c9f3
fix ancient append vec throwing away stores bug ( #28710 )
2022-11-02 08:21:03 -07:00
Jeff Washington (jwash)
7885fdca37
ancient append vecs: pass through can_randomly_shrink ( #28706 )
2022-11-01 11:55:28 -07:00
Jeff Washington (jwash)
9ff9051d87
move test function to test mod ( #28704 )
2022-11-01 11:18:02 -07:00
Jeff Washington (jwash)
daf71003d3
add tests for handle_dropped_roots_for_ancient ( #28703 )
2022-11-01 09:03:54 -07:00
Jeff Washington (jwash)
0b51b15af2
remove duplicate pubkey during shrink ( #28689 )
2022-11-01 07:45:52 -07:00
behzad nouri
17680fe837
removes feature gate code preserving rent_epoch for rent exempt accounts ( #28507 )
...
* removes feature gate code preserving rent_epoch for rent exempt accounts
* update test expected hashes
Co-authored-by: jeff washington <jeff.washington@solana.com>
2022-11-01 13:36:59 +00:00
Brooks Prumo
f0f108905e
Always verifies deserialized bank's slot and snapshot hash ( #28688 )
2022-10-31 17:48:18 -04:00
Jeff Washington (jwash)
cb4c3668c7
.pubkey() instead of meta.pubkey for stored account ( #28682 )
2022-10-31 13:58:42 -07:00
Jeff Washington (jwash)
1ba81acf9a
remove public from rent code ( #28687 )
2022-10-31 13:37:36 -07:00
Jeff Washington (jwash)
c47515d055
remove duplicate pubkey when shrinking or combining ancient ( #28678 )
2022-10-31 12:00:55 -07:00
Brooks Prumo
59bf1809fe
Uses SnapshotHash type in snapshot archive fields ( #28681 )
2022-10-31 14:28:35 -04:00
Dmitri Makarov
34865d032c
chore: update Solana docs and code comments that specify "BPF" to "SBF"
2022-10-31 14:14:25 -04:00
Brooks Prumo
37507a2de6
Removes EAH parameter from serde_snapshot::reserialize_bank() ( #28669 )
2022-10-31 09:43:17 -04:00
Jeff Washington (jwash)
fad6c99e9f
add test variations for shrink_collect ( #28640 )
...
add test variations
2022-10-29 14:24:08 -07:00
Jeff Washington (jwash)
5889ee30b0
add test_get_keys_to_unref_ancient ( #28664 )
2022-10-29 14:23:41 -07:00
Brooks Prumo
bfa62da29e
Renames variant to CalcAccountsHashDataSource::IndexForTests ( #28623 )
2022-10-29 08:55:33 -04:00
Brooks Prumo
2ebf248f47
Renames fn to Bank::update_accounts_hash() ( #28619 )
2022-10-28 17:31:16 -04:00
Brooks Prumo
f98e4d9198
Renames BankHashInfo field to accounts_hash ( #28665 )
2022-10-28 15:18:25 -04:00
Brooks Prumo
5a3d252899
Renames fn to Bank::update_accounts_hash_for_tests() ( #28620 )
2022-10-28 14:33:05 -04:00
Jeff Washington (jwash)
8924829e7b
extract 'unref_pubkeys' for shared code ( #28653 )
2022-10-28 10:12:29 -07:00
Brooks Prumo
0232944c95
Uses Storages to update accounts hash in bank_to_snapshot_archive() ( #28618 )
2022-10-28 12:22:58 -04:00
Jeff Washington (jwash)
0b2bc987ca
tests for maybe_unref_accounts_already_in_ancient ( #28652 )
2022-10-28 08:24:10 -07:00
Jeff Washington (jwash)
0c1df82d48
add current_ancient tests ( #28651 )
2022-10-28 07:32:23 -07:00
Jeff Washington (jwash)
8ae5af2822
ancient append vec tests ( #28635 )
2022-10-27 15:10:22 -07:00
Jeff Washington (jwash)
3d7cca6296
cleanup drop in ancient append vecs ( #28617 )
2022-10-27 11:16:46 -07:00
steviez
7b70aef33c
Add help text to genesis creation time assert ( #28629 )
...
If a validator starts with a snapshot from the wrong cluster, an assert
will trigger complaining about the genesis_creation_time encoded in the
snapshot differing from the genesis_creation_time embedded in
genesis.bin.
This could be a fairly easy mistake to make so add a help string to the
assertion to point operators in the right direction.
2022-10-27 18:02:36 +02:00
Jeff Washington (jwash)
646514e4d5
give metric around 'remove_old_stores_shrink" better name ( #28613 )
2022-10-27 07:33:01 -07:00
Jeff Washington (jwash)
4ac52c2a9d
ancient append vec comments and cleanup ( #28616 )
2022-10-27 07:32:42 -07:00
Jeff Washington (jwash)
251cab4c8b
extract handle_dropped_roots_for_ancient from ancient append vec code ( #28611 )
2022-10-27 07:32:04 -07:00
Ian Macalinao
a2b0d0e6f0
runtime: use correct module doc comments ( #27889 )
2022-10-27 14:39:44 +02:00
Jeff Washington (jwash)
decf3de453
extract ancient maybe_unref_accounts_already_in_ancient ( #28610 )
2022-10-26 14:20:32 -07:00
Jeff Washington (jwash)
d4db649e7c
extract common code remove_old_stores_shrink from shrink and ancient append vecs ( #28588 )
2022-10-26 11:49:10 -07:00
Brooks Prumo
27269d833c
Uses enum for data source with calc_accounts_hash() ( #28584 )
2022-10-26 13:04:01 -04:00
Jeff Washington (jwash)
252d7f68da
combine all_are_zero_lamports ( #28567 )
2022-10-26 08:55:20 -07:00
Justin Starry
2d8665d307
Record inner instruction stack height ( #28430 )
...
* Record inner instruction stack height
* fix sbf tests
* feedback
2022-10-26 10:37:44 +08:00
Brooks Prumo
1dbcb78de7
Renames fn to update_accounts_hash() ( #28574 )
2022-10-25 16:43:19 -04:00
Jeff Washington (jwash)
51e1a7f2af
simplify mark_dirty_dead_stores ( #28565 )
2022-10-25 11:34:58 -07:00
Jeff Washington (jwash)
470ed4f06e
update stats in shrink_collect ( #28563 )
2022-10-25 11:27:33 -07:00
Brooks Prumo
e79c1cba03
Renames fn to update_accounts_hash_for_tests() ( #28571 )
2022-10-25 14:03:19 -04:00
Jeff Washington (jwash)
8c57efb828
ancient append vecs: get rid of some locals in shared code ( #28559 )
2022-10-25 09:32:14 -07:00
Jeff Washington (jwash)
2c837ba4e3
reorder code to prepare for sharing ( #28564 )
2022-10-25 09:15:26 -07:00
Brooks Prumo
f158bab0ef
Tracks how long background requests wait before processing ( #28581 )
2022-10-25 12:10:53 -04:00
Brooks Prumo
bf214d36e3
Renames fn to calculate_accounts_hash_with_verify() ( #28573 )
2022-10-25 11:55:26 -04:00
Brooks Prumo
e2438cf3e2
Renames fn to calculate_accounts_hash() ( #28572 )
2022-10-25 11:53:41 -04:00
Jeff Washington (jwash)
1ca7c8244f
rename merge() -> accumulate() ( #28561 )
2022-10-25 08:52:02 -07:00
Brooks Prumo
bc02789c43
Renames fn to calculate_accounts_hash_from_storages() ( #28566 )
2022-10-24 21:07:00 -04:00
Brooks Prumo
2354a0a343
Renames fn to calculate_accounts_hash_from_index() ( #28568 )
2022-10-24 19:20:08 -04:00
Jeff Washington (jwash)
dde8f0dfad
CurrentAncientAppendVec for clarity ( #28528 )
2022-10-24 15:28:52 -07:00
Jeff Washington (jwash)
8acd6bb34a
share index_read_elapsed code ( #28557 )
2022-10-24 15:19:40 -07:00
Jeff Washington (jwash)
a422387ca8
cleanup ancient append vec merge stats ( #28556 )
2022-10-24 13:11:12 -07:00
Jeff Washington (jwash)
8a538f8da5
skip_rewrite skips almost all accounts with no rent ( #28552 )
2022-10-24 11:48:00 -07:00
Trent Nelson
1fbd818647
runtime: remove `Default` req on account scan interfaces ( #28533 )
2022-10-21 17:53:06 -06:00
Jeff Washington (jwash)
993583d9b3
simplify get_store_for_shrink ( #28524 )
2022-10-21 14:49:34 -07:00
Ashwin Sekar
9eafad467c
Add convenience methods to VoteInstruction to distinguish vote types ( #28526 )
...
* Add convenience methods to VoteInstruction to distinguish vote types
* use matches! macro instead
2022-10-21 14:17:40 -06:00
Jeff Washington (jwash)
fb94e50678
remove single use function for clarity ( #28523 )
2022-10-21 11:42:27 -07:00
Ashwin Sekar
f207af765e
Split out voting and banking threads in banking stage ( #27931 )
...
* Split out voting and banking threads in banking stage
Additionally this allows us to aggressively prune the buffer for voting threads
as with the new vote state only the latest vote from each validator is
necessary.
* Update local cluster test to use new Vote ix
* Encapsulate transaction storage filtering better
* Address pr comments
* Commit cargo lock change
* clippy
* Remove unsafe impls
* pr comments
* compute_sanitized_transaction -> build_sanitized_transaction
* &Arc -> Arc
* Move test
* Refactor metrics enums
* clippy
2022-10-20 21:10:48 +00:00
Trent Nelson
cb7fe87abb
bank: factor accumulation out to helper on `TotalAccountsStats`
2022-10-20 10:50:51 -07:00
Jeff Washington (jwash)
09ede8b85c
reuse update_shrink_stats for combine_ancient_slots ( #28466 )
2022-10-19 14:17:34 -07:00
Alexander Meißner
5aca7df232
Bank::create_executor() ( #28474 )
...
* Moves the integration test test_bpf_loader_upgradeable_deploy_with_max_len() from the bpf_loader into the runtime.
* Adds Bank::create_executor().
* Adds a test for Bank::create_executor().
2022-10-19 22:28:57 +02:00
Brooks Prumo
70e83e82c6
Waits to handle snapshot requests until after startup verification is complete ( #28481 )
2022-10-19 13:39:47 -04:00
Jeff Washington (jwash)
2b11926c9e
simplify combine_ancient_slots ( #28464 )
2022-10-19 09:35:21 -07:00
Jeff Washington (jwash)
8b115ff489
factor out update_shrink_stats ( #28465 )
...
* use local for shrink_stats
* renames and remove .as_us()
* factor out update_shrink_stats
* use integer to report us in metrics
2022-10-19 08:08:04 -07:00
Jeff Washington (jwash)
040035063f
share shrink_collect code ( #28454 )
...
* share shrink_collect code
* use correct stats
2022-10-19 08:07:05 -07:00
Brooks Prumo
1cc9cf927c
Supports warping with Epoch Accounts Hash ( #28459 )
2022-10-19 10:37:14 -04:00
Jeff Washington (jwash)
ca115594ff
remove concept of 'full' ancient append vec ( #28449 )
2022-10-18 15:08:04 -07:00
Jeff Washington (jwash)
c89bd0d6a4
make ancient shrink consistent with shrink ( #28457 )
2022-10-18 15:05:32 -07:00
Jeff Washington (jwash)
825b83c95c
simple minor refactoring ( #28456 )
2022-10-18 15:05:06 -07:00
Jeff Washington (jwash)
3835ac166e
refactor load_accounts_index_for_shrink for easier sharing ( #28455 )
2022-10-18 14:55:10 -07:00
Jeff Washington (jwash)
d52e28ac22
combine sort into get_unique_accounts_from_storages ( #28450 )
2022-10-18 11:52:48 -07:00