Commit Graph

3524 Commits

Author SHA1 Message Date
Jeff Washington (jwash) c668a58b8e
do_full_clean_refcount uses write cache (#29112) 2022-12-06 14:33:28 -08:00
Jeff Washington (jwash) d3fa93907b
test_clean_zero_lamport_and_dead_slot uses write cache (#29114) 2022-12-06 14:33:07 -08:00
behzad nouri 9524c9dbff patches errors from clippy::uninlined_format_args
https://rust-lang.github.io/rust-clippy/master/index.html#uninlined_format_args
2022-12-06 19:32:15 +00:00
behzad nouri 9433c06745 patches errors from clippy::unchecked_duration_subtraction
https://rust-lang.github.io/rust-clippy/master/index.html#unchecked_duration_subtraction
2022-12-06 19:32:15 +00:00
behzad nouri 401f66c830 patches errors from clippy::seek_to_start_instead_of_rewind
https://rust-lang.github.io/rust-clippy/master/index.html#seek_to_start_instead_of_rewind
2022-12-06 19:32:15 +00:00
Jeff Washington (jwash) ca8372efc1
with_chained_zero_lamport_accounts works with write cache (#29104) 2022-12-06 10:56:37 -08:00
Jeff Washington (jwash) 26472a13ea
migrating tests to use write cache (#29101)
* test_account_update uses write cache

* test_accounts_db_purge_keep_live works with write cache

* enable caching for test_accounts_db_purge_keep_live
2022-12-06 10:25:37 -08:00
Jeff Washington (jwash) 5d0d4a6b95
test_accounts_db_serialize_zero_and_free uses write cache (#29102) 2022-12-06 10:25:07 -08:00
Jeff Washington (jwash) 7180345ee1
test_verify_bank_capitalization works with write cache (#29107) 2022-12-06 10:24:43 -08:00
Jeff Washington (jwash) 5833e2f85e
test_account_grow uses write cache (#29099) 2022-12-06 09:28:24 -08:00
Jeff Washington (jwash) 94a6665995
test_clean_multiple_zero_lamport_decrements_index_ref_count uses write cache (#29088) 2022-12-06 08:56:37 -08:00
Jeff Washington (jwash) fe8b15b43a
test_accountsdb_count_stores uses write cache (#29086) 2022-12-06 07:40:51 -08:00
Jeff Washington (jwash) 93cc3b1d3d
test_shrink_stale_slots_skipped only uses non-write cache (#29081) 2022-12-06 07:03:30 -08:00
Jeff Washington (jwash) 4de13be926
test_accounts_db_serialize1 uses write cache (#29085) 2022-12-06 06:36:28 -08:00
Jeff Washington (jwash) f88398cbcf
test_shrink_stale_slots_processed uses write cache (#29082) 2022-12-06 06:35:49 -08:00
Jeff Washington (jwash) ed0c9e285b
test_partial_clean supports write cache (#29091) 2022-12-06 06:35:02 -08:00
Jeff Washington (jwash) c106c7e349
test_clean_accounts_with_last_full_snapshot_slot uses write cache (#29087) 2022-12-05 20:41:11 -08:00
Jeff Washington (jwash) 6935ff74ce
test_uncleaned_roots_with_account uses write cache (#29084) 2022-12-05 20:37:42 -08:00
Jeff Washington (jwash) 1b49c52d98
store_uncached -> store_for_tests (#29083) 2022-12-05 14:42:16 -08:00
Jeff Washington (jwash) b4075a0e29
bank tests use write cache (#28885) 2022-12-05 14:08:28 -08:00
Jeff Washington (jwash) 9746eb2c8d
test_lazy_gc_slot can use write cache (#29080) 2022-12-05 12:48:15 -08:00
Jeff Washington (jwash) 8c47e2168e
test_accounts_clean_after_snapshot_restore_then_old_revives can use write cache (#29050)
* test_accounts_clean_after_snapshot_restore_then_old_revives can use write cache

* combine flush and set root
2022-12-05 12:39:26 -08:00
Jeff Washington (jwash) 293a5860b8
test_process_stale_slot_with_budget never uses write cache (#29076) 2022-12-05 11:40:14 -08:00
Jeff Washington (jwash) 1036d4409b
test_verify_snapshot_bank works without write cache (#29075) 2022-12-05 11:00:01 -08:00
Brooks Prumo c65a8ce6c3
AccountsDb::get_snapshot_storages() takes a Range for slots (#29054) 2022-12-05 11:21:21 -05:00
Brooks Prumo 544e430a0d
Use AccountsHash instead of bare Hash (#29052) 2022-12-05 11:19:29 -05:00
Jeff Washington (jwash) 7f268e0f6d
rebuild_bank_from_snapshots uses write cache (#29047) 2022-12-02 13:28:21 -08:00
Jeff Washington (jwash) babc241345
tests use write cache (#29027)
* test_add_precompiled_account uses write cache

* test_add_precompiled_account_squatted_while_not_replacing uses write cache
2022-12-02 10:26:51 -08:00
Jeff Washington (jwash) 5104f4ef0d
test_bank_update_vote_stake_rewards works with write cache (#29044) 2022-12-02 10:19:43 -08:00
Jeff Washington (jwash) 00ba78bd2d
test_bank_update_rewards_determinism works with write cache (#29043) 2022-12-02 09:56:58 -08:00
Jeff Washington (jwash) 6852d5768a
test_add_builtin_account* works with write cache (#29030) 2022-12-02 09:48:21 -08:00
Jeff Washington (jwash) 87a3130226
test_bank_hash_internal_state works with write cache (#29042) 2022-12-02 09:37:22 -08:00
Jeff Washington (jwash) d17a740a99
test_bank_hash_internal_state_verify works with write cache (#29041) 2022-12-02 09:22:42 -08:00
Tao Zhu 0809a4df78
remove redundant internal functions (#29035)
remove redundant _internal functions
2022-12-02 10:21:25 -06:00
Jeff Washington (jwash) 63e19c0068
do_test_clean_dropped_unrooted_banks uses write cache (#29029) 2022-12-02 08:04:57 -08:00
Jeff Washington (jwash) 911a8d2a4a
test_add_instruction_processor_for_existing_unrelated_accounts works with write cache (#29031) 2022-12-02 08:04:34 -08:00
Tao Zhu 5850af5316
Refactor to remove requested_cu from cost_trarcker (#29015)
* refactor cost tracker by removing requested_cu from it, call sites to use cost_model forr consistency

* review fix
2022-12-02 00:25:09 +00:00
Jeff Washington (jwash) 20aeff3632
test_purge_empty_accounts uses write cache (#29018) 2022-12-01 15:22:26 -08:00
Jeff Washington (jwash) dbd6ce8f21
test_bank_update_sysvar_account uses write cache (#29022)
* test_add_precompiled_account_inherited_cap_while_replacing uses write cache

* test_bank_update_sysvar_account uses write cache
2022-12-01 15:21:05 -08:00
Jeff Washington (jwash) a9c8f26a66
test_add_precompiled_account_inherited_cap_while_replacing uses write cache (#29019) 2022-12-01 14:07:39 -08:00
Jeff Washington (jwash) 631d93dd2d
tests use write cache (#29012) 2022-12-01 12:17:13 -08:00
Jeff Washington (jwash) e6cc5052c3
pass alive bytes to AccountsToStore::new (#28994) 2022-11-30 15:46:52 -08:00
Jeff Washington (jwash) 2c912c9049
use files for merkle tree inputs on accounts hash (#28965)
* use files for merkle tree inputs on accounts hash

* remove multi-pass scan, simplify

* cleanup and comments

* rework writing into the hash file for clarity

* add test, cleanup

* rename

* move count into option
2022-11-30 12:27:27 -08:00
Jeff Washington (jwash) 58e12cf963
avoid copies when writing to an ancient append vec (#28981)
* avoid copies when writing to an ancient append vec

* update comments
2022-11-30 10:09:23 -08:00
Jeff Washington (jwash) 2427004dba
add 'bytes' to aligned/alive_total for clarity (#28982) 2022-11-30 07:38:57 -08:00
Jeff Washington (jwash) c8cc1270f1
log # append vecs open (#28958) 2022-11-29 16:48:02 -08:00
Jeff Washington (jwash) e42649a8ba
remove cli arg to specify # accounts hash scan passes (#28976) 2022-11-29 16:47:51 -08:00
Jeff Washington (jwash) 19d86bd2b1
add balance to cap overflow message (#28975) 2022-11-29 13:55:07 -08:00
Brooks Prumo 9327658007
Promotes accounts hash to a strong type (#28930) 2022-11-28 10:09:47 -05:00
Brooks Prumo 267bbcadcf
Cleans up accounts hash testing in ABS (#28931) 2022-11-23 10:07:22 -05:00
Jeff Washington (jwash) 9a24743d2a
expect only 1 store per slot (#28844)
expect only 1 store per slot in shrink
2022-11-23 06:20:36 -08:00
Brooks Prumo 04016e3bcf
Don't wait for EAH unless feature is enabled (#28938) 2022-11-23 09:11:28 -05:00
Brooks Prumo 40a7c6d46a
Renames fn to insert_default_bank_hash() (#28929) 2022-11-22 19:31:59 -05:00
Jeff Washington (jwash) 5d88a9b32b
improve perf of storing accounts for shrink/ancient (#28880)
* improve perf of storing accounts for shrink/ancient

* rename

* phantom data

* update comment

* make impl Borrow<Hash> consistent

* remove unused static
2022-11-22 15:36:57 -08:00
Maximilian Schneider c8b0c3ede9
Update cost model to use requested_cu instead of estimated cu #27608 (#28281)
* Update cost model to use requested_cu instead of estimated cu #27608

* remove CostUpdate and CostModel from replay/tvu

* revive cost update service to send cost tracker stats

* CostModel is now static

* remove unused package

Co-authored-by: Tao Zhu <tao@solana.com>
2022-11-22 11:55:56 -06:00
Jeff Washington (jwash) efc681b348
rename test var for clarity (#28914) 2022-11-21 13:22:16 -08:00
Jeff Washington (jwash) d449b9ea26
test_new_from_file_crafted_zero_lamport_account uses static append vec file (#28911) 2022-11-21 12:43:03 -08:00
Jeff Washington (jwash) 8addf93de7
test_store_reuse uses write cache (#28901) 2022-11-21 11:17:33 -08:00
Brooks Prumo ff7e82b5ff
Removes Accounts::bank_hash_at() (#28879) 2022-11-21 13:25:48 -05:00
Jeff Washington (jwash) b29dea7a56
comment function (#28906) 2022-11-21 09:56:07 -08:00
Brooks Prumo d698f982ee
Renames to AccountsHasher (#28883) 2022-11-18 18:25:44 -05:00
Jeff Washington (jwash) 8cbe83c725
cleanup CalcAccountsHashDataSource (#28882) 2022-11-18 14:49:22 -08:00
Jeff Washington (jwash) f22104d46b
use write cache by default in some tests (#28876) 2022-11-18 14:35:52 -08:00
Jeff Washington (jwash) aa1d319d48
add shrink ancient test (#28858)
* add shrink ancient test

* improvements
2022-11-18 13:11:57 -08:00
Brooks Prumo 7787cb2ab2
Renames BankHashInfo field to accounts_delta_hash (#28878) 2022-11-18 15:35:03 -05:00
Jeff Washington (jwash) dcfb73f664
extract test append_account function (#28875) 2022-11-18 10:57:02 -08:00
Jeff Washington (jwash) 9acfa08838
remove per-account slot in ancient append vecs (#28851)
* remove per-account slot in ancient append vecs

* review fixes
2022-11-18 10:15:41 -08:00
Justin Starry 4c85850a73
Refactor: Rename `load_transaction` to `load_transaction_accounts` (#28746)
* Refactor: Rename load_transaction to load_transaction_accounts

* Refactor: map over account keys to load transaction accounts
2022-11-18 23:44:09 +08:00
Justin Starry 7371608722
Support versioned transactions in program test framework (#28739)
* Support versioned transactions in program test framework

* use working bank

* Update to process_transaction_with_metadata

* Migrate client apis from Transaction to Into<VersionedTransaction>

* feedback
2022-11-18 23:43:52 +08:00
Jeff Washington (jwash) 813f1f993a
remove test only append_account (#28850) 2022-11-17 12:26:51 -08:00
Trent Nelson 53a579bed1 ledger-tool: stream output of `accounts` subcommand 2022-11-17 12:45:26 -07:00
Jeff Washington (jwash) e269fe3383
refactor into combine_one_store_into_ancient (#28845) 2022-11-17 08:42:42 -08:00
Brooks Prumo 2bafb0cb12
Requires EAH state cannot be Invalid (#28817) 2022-11-17 11:01:01 -05:00
K-anon e8c8235474
Get Index Key Size RPC Support (#28383)
Co-authored-by: K-anon <IntokuSatori@users.noreply.github.com>
2022-11-16 20:39:11 -07:00
Jeff Washington (jwash) 83a7b2ca6c
only log ancient append vec stats when they are useful (#28843) 2022-11-16 17:15:43 -08:00
Tao Zhu ae48ac97dd
fix account resize test by requesting max tx data size (#28826)
* fix account resize test by requesting max tx data size
* define data size limit in incremental of 1024
2022-11-16 17:52:15 -06:00
Jeff Washington (jwash) c17d594684
collect storage_read_elapsed for shrink and ancient (#28833) 2022-11-16 11:14:07 -08:00
Jeff Washington (jwash) 4837dc071f
cleanup return value from append_accounts (#28836) 2022-11-16 10:59:11 -08:00
Jeff Washington (jwash) f7139532a6
acct hash: don't init accum or create hash file if no storages (#28839) 2022-11-16 10:58:39 -08:00
Jeff Washington (jwash) 2b1db39faa
refactor test ancient population code (#28823) 2022-11-16 08:31:39 -08:00
Brooks Prumo c1e440acb6
Warping calculates and sets new EAH (#28809) 2022-11-15 23:16:38 -05:00
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