apfitzge
f2b81fe665
Separate field_from_stream to get bank/account fields from individual snapshot stream ( #26679 )
2022-07-21 12:27:31 -05:00
Alexander Meißner
075a5ac44e
Removes `AccountSharedData` from `SysvarCache`. ( #26712 )
...
* Removes AccountSharedData from SysvarCache.
* Fixes incorrect transaction account index in stake_instruction::test_set_lockup().
2022-07-21 18:32:28 +02:00
Alexander Meißner
cbb74a190f
Cleanup: `record_instruction_in_transaction_context_push` ( #26658 )
...
Cleanup feature gate of record_instruction_in_transaction_context_push.
2022-07-21 12:49:34 +02:00
HaoranYi
6ec89ee861
log error for cache_hash_data save failure ( #26676 )
...
log error for cach_hash_data save
2022-07-20 16:19:35 -05:00
Jack May
39a34db52a
cleanup feature: default units per instruction ( #26684 )
2022-07-20 19:13:34 +00:00
apfitzge
b20edd232b
Remove useless enumerate from test_hold_range_in_memory2 ( #26683 )
2022-07-20 10:06:08 -05:00
Jeff Washington (jwash)
9f2f2a45cd
AcctIdx: ref_count_from_storage remove Arc::clone ( #26678 )
2022-07-20 10:05:13 -05:00
Justin Starry
f8e9af5f1e
Cap the number of accounts passed to a bpf program ix ( #26630 )
...
* Cap the number of accounts passed to a bpf program ix
* update bank abi hash
* fix ci failures
2022-07-20 14:12:43 +02:00
apfitzge
07f41628db
untar_snapshot_create_shared_buffer doesn't need to return a result ( #26686 )
2022-07-19 23:15:41 +00:00
Jeff Washington (jwash)
2d689ac53a
get rid of rwlock per bin in accounts index ( #26675 )
2022-07-19 17:48:40 -05:00
apfitzge
e7cd6daebe
Add helper fn to create shared buffer - simplify archive format matching ( #26674 )
2022-07-19 20:30:30 +00:00
apfitzge
84c8cfe901
Refactor/hardened unpack more generic unpack archive ( #26677 )
...
* Add entry_processor fn to unpack_archive - not used yet
* Add generic unpack_snapshot_with_processors to separate account paths handling from entry checking
2022-07-19 14:48:57 -05:00
Jeff Washington (jwash)
7efe72a74f
eliminate write lock usage in acct idx ( #26673 )
2022-07-19 13:24:03 -05:00
apfitzge
77843306c7
rename parallel_archivers -> parallel_divisions for consistency ( #26672 )
...
parallel_archivers -> parallel_divisions for consistency
2022-07-19 13:15:33 -05:00
Jeff Washington (jwash)
263911e7fd
save off what we find when calculating hash ( #26663 )
2022-07-19 09:55:52 -05:00
Jeff Washington (jwash)
738c4a79b7
metric for 'ancient_account_cleans' ( #26664 )
2022-07-19 09:16:23 -05:00
Jeff Washington (jwash)
6efe7e095b
temporarily make ancient append vecs 10x smaller to find intermittent bugs ( #26574 )
2022-07-19 08:51:36 -05:00
Jeff Washington (jwash)
c4d2c95540
move hash stat to correct level for ahv to work ( #26649 )
2022-07-18 12:44:33 -05:00
Jeff Washington (jwash)
1c08f83c7e
eliminate flatten().collect() of reclaims in clean ( #26647 )
2022-07-18 12:37:17 -05:00
Justin Starry
fd6038884b
Clean up forgotten error log
2022-07-17 12:21:52 +02:00
Jeff Washington (jwash)
be8813e588
shrink stops using HandleReclaims ( #26594 )
2022-07-15 17:54:48 -05:00
Jeff Washington (jwash)
83c614da3c
change type to be more clear ( #26646 )
2022-07-15 17:17:17 -05:00
Jeff Washington (jwash)
47716a5e01
async hash verify on load ( #26208 )
...
* verify accounts hash in bg on startup
* fix some tests and loading from genesis
* add extra state for when background thread has completed
2022-07-15 14:29:56 -05:00
behzad nouri
bf225bae73
restricts rent-paying accounts lifetime extension ( #26606 )
...
https://github.com/solana-labs/solana/pull/22292
prevents rent paying accounts creation going forward. However a rent
paying account can linger on for ever if it is continually topped up but
stays below the rent-exempt minimum.
This can prevent eliminating accounts-rewrites and the problematic
rent_epoch field in accounts.
Link to discord discussion:
https://discord.com/channels/428295358100013066/943609352068145162/995202300001927219
This commit restricts rent-paying accounts lifetime extension by
preventing increasing lamports on the account if the account stays below
the rent-exempt minimum.
2022-07-15 13:23:37 +00:00
Alexander Meißner
038da82b6f
Feature: Early verification of account modifications in `BorrowedAccount` ( #25899 )
...
* Adjusts test cases for stricter requirements.
* Removes account reset in deserialization test.
* Removes verify related test cases.
* Replicates account modification verification logic of PreAccount in BorrowedAccount.
* Adds TransactionContext::account_touched_flags.
* Adds account modification verification to the BPF ABIv0 and ABIv1 deserialization, CPI syscall and program-test.
* Replicates the total sum of all lamports verification of PreAccounts in InstructionContext
* Check that the callers instruction balance is maintained during a call / push.
* Replicates PreAccount statistics in TransactionContext.
* Disable verify() and verify_and_update() if the feature enable_early_verification_of_account_modifications is enabled.
* Moves Option<Rent> of enable_early_verification_of_account_modifications into TransactionContext::new().
* Relaxes AccountDataMeter related test cases.
* Don't touch the account if nothing changes.
* Adds two tests to trigger InstructionError::UnbalancedInstruction.
Co-authored-by: Justin Starry <justin@solana.com>
2022-07-15 09:31:34 +02:00
Tao Zhu
f13b5c832d
Remove obsoleted metrics reporting to reduce lock contention on cost_model ( #26608 )
...
remove obsoleted metrics reporting to reduce lock contention on cost_model
2022-07-14 23:02:49 -05:00
HaoranYi
819d6512ab
add PartialEq, Eq and spell correction ( #26614 )
2022-07-14 14:55:03 +00:00
Jeff Washington (jwash)
3e9bd6170c
use OnceCell instead of RwLock for rent_paying_accounts_by_partition ( #26601 )
2022-07-14 08:52:41 -05:00
Jeff Washington (jwash)
4dea32e8e5
fix active_scans metric to not swap ( #26602 )
2022-07-13 20:11:23 -05:00
Jeff Washington (jwash)
2b7cc107d8
typo ( #26618 )
2022-07-13 17:55:02 -05:00
HaoranYi
1aa9215411
Refactor: add account_iter api for appendvec ( #26591 )
...
* add account iterator for appendvec
* semicolon
2022-07-12 23:56:05 +00:00
Jeff Washington (jwash)
6b0eb5a42b
handle rent paying accounts differently ( #26487 )
...
* handle rent paying accounts differently
* restore collection
* downgrade assert to metric and warn until we get more runtime
2022-07-12 17:51:33 -05:00
Brooks Prumo
1dfbb225e3
Fix test_accounts_data_size_and_rent_collection ( #26576 )
2022-07-12 17:05:21 -05:00
Jeff Washington (jwash)
c62c55a16b
shrink stores by id ( #26490 )
2022-07-12 15:43:41 -05:00
Jeff Washington (jwash)
9d31216d23
add StoreReclaims::Ignore ( #26489 )
2022-07-12 15:05:47 -05:00
HaoranYi
bf14440895
clean up and optimize account hash verify ( #26560 )
...
* remove unused code
* extract test related fault hash inject fn
* use rotate to optimize hashes removal
* use rotate to optimize snapshot hashes removal
* address code reveiw feedbacks
* revise comments
* inline
2022-07-12 19:27:28 +00:00
Jeff Washington (jwash)
f54f528148
make bank test creation standard ( #26519 )
2022-07-12 09:07:55 -05:00
github-actions[bot]
fd5df1cf25
Bump Version to 1.11.4 ( #26578 )
...
Co-authored-by: willhickey <willhickey@users.noreply.github.com>
2022-07-11 23:30:38 -05:00
Jeff Washington (jwash)
1db136a8be
do not count 0 lamport accounts as rent-paying ( #26514 )
2022-07-11 22:16:46 -05:00
Jeff Washington (jwash)
36bd46bece
ancient append vec: reuse AccountsToStore ( #26572 )
2022-07-11 22:13:09 -05:00
Nicholas Clarke
ee0a40937e
Add validator argument log_messages_bytes_limit to change log truncation limit.
...
Add new cli argument log_messages_bytes_limit to solana-validator to control how long program logs can be before truncation
2022-07-11 10:53:18 -05:00
behzad nouri
ba785cf8ab
removes erroneous uses of std::mem::swap ( #26536 )
...
All instances should be replace by std::mem::{replace,take},
or just plain assignment.
2022-07-11 11:33:15 +00:00
Jeff Washington (jwash)
602da5e51f
add accounts db config to bank tests ( #26517 )
2022-07-10 19:42:06 -05:00
Jeff Washington (jwash)
2b6c9852f1
add more slop to test_age_time ( #26537 )
2022-07-10 17:52:07 -05:00
Jeff Washington (jwash)
1babf460ab
collapse some bank test creation fns ( #26532 )
2022-07-10 17:51:38 -05:00
behzad nouri
105c7e19e1
moves check for feature activation out of accounts loop ( #26535 )
2022-07-10 17:39:19 +00:00
Jeff Washington (jwash)
8576832f2a
rename Bank::new_with_config_for_tests ( #26533 )
2022-07-10 09:33:13 -05:00
Brooks Prumo
785a7a5936
Track more accounts data size changes ( #26467 )
2022-07-08 19:17:15 -05:00
behzad nouri
c99d9f00a9
preserves rent_epoch for rent exempt accounts ( #26479 )
...
https://github.com/solana-labs/solana/pull/22292
prevents rent paying account creation going forward. As a result
rent_epoch field for rent exempt accounts is redundant, and advancing
this field will incur expensive account rewrites and cause discrepancy
between accounts-db and cached vote/stake accounts.
This commit adds a feature which upon activation preserves rent_epoch
field for rent exempt accounts so that the field is frozen and is no
longer advanced.
2022-07-08 20:04:08 +00:00
HaoranYi
995756a550
Use RefCount type alias instead of u64 ( #26472 )
...
use RefCount type alias instead of u64
2022-07-08 13:51:16 -05:00