Brooks
b7d31e134c
Refactors Accounts::new_from_parent() ( #30475 )
2023-02-23 16:50:51 -05:00
Pankaj Garg
6c58033df5
API to enumerate executable program accounts in tx batch ( #30371 )
2023-02-16 13:29:38 -08:00
Brooks
5680c76c86
Refactors Accounts::new() fns ( #30343 )
2023-02-15 18:34:52 -05:00
HaoranYi
615d1a8b69
Extract BankHashLamportsVerifyConfig ( #30320 )
...
* refactor BankHashLamportsVerifyConfig
* clippy
* comments
* fix bench
2023-02-15 16:03:50 -06:00
ivandzen
2f9146e8c8
Replace txn_signature in ReplicaAccountInfo with transaction ( #30189 )
...
#### Current implementation of ReplicaAccountInfo restricts
possibilities for inflight account filtration
Current implementation includes transaction signature in
ReplicaAccountInfo. This approach does not allow to filter accounts by
matching other accounts in transaction in-flight (e. g. accept only
those accounts included in transactions for specific programs). Current
implementation forces to collect ALL accounts and transactions for some
period of time and perform such complex filtration afterwards.
#### Pass reference to transaction object instead of transaction
signature into ReplicaAccountInfo
Advanced in-flight filtration can be implemented in plugins by passing
reference to transaction for every update_account event. This change
doesn't bring any overhead comparing to current implementation (only
data type of reference is changed) and brings only minor changes in
source code.
2023-02-09 12:00:33 -08:00
Tao Zhu
4293f11cf1
feature gate to enable compute_budget::request_heap_frame on mainnetBeta ( #30077 )
2023-02-03 09:21:57 -06:00
Brooks
3249e4a123
Removes {get,set}_bank_hash_info_from_snapshot() ( #30087 )
2023-02-02 16:50:44 -05:00
Brooks
33165040bf
Only insert default BankHashStats in Accounts::new_from_parent() ( #30063 )
2023-02-01 17:47:55 -05:00
Tao Zhu
090b990e15
remove congestion multiplier from transaction fee calculation ( #29828 )
2023-02-01 16:26:50 -06:00
Tao Zhu
a5af54669a
Limit loaded data per transaction to a fixed cap ( #29743 )
2023-01-31 22:51:35 -06:00
Alexander Meißner
ac7d0ff633
Feature - Disable builtin loader ownership chains ( #29959 )
...
* Adds feature disable_builtin_loader_ownership_chains.
* Removes test_load_accounts_max_call_depth().
2023-01-29 19:27:49 +01:00
Alexander Meißner
aa2e3487ba
Refactor - Simplify program accounts in transaction loading ( #29728 )
...
* Refactors the "!validated_fee_payer" case from an "else" branch to an early "return".
* Moves the early return upward.
* Removes empty entries.
* Adds account_found_and_dep_index.
* cargo fmt.
* Replaces call site of load_executable_accounts().
* Adjusts number of total loaded accounts in test_load_accounts_multiple_loaders().
* Removes test_accounts_account_not_found().
* Removes load_executable_accounts().
* Refactor back to built-in loader ownership chain loop.
2023-01-27 21:24:21 +01:00
Brooks
867d2581a6
Moves impl of bank_hash_info_at() into hash_internal_state() ( #29913 )
2023-01-25 22:24:51 -05:00
Brooks
dde4b5d1ef
Adds AccountsDb::get_bank_hash_info() ( #29908 )
2023-01-25 17:01:01 -05:00
Brooks
bda0c606a1
Renames fn to calculate_accounts_delta_hash() ( #29876 )
2023-01-24 18:55:56 -05:00
behzad nouri
272e667cb2
deprecates Pubkey::new in favor of Pubkey::{,try_}from ( #29805 )
...
The commit deprecates Pubkey::new which lacks type-safety and instead
implements TryFrom<&[u8]> and TryFrom<Vec<u8>> for Pubkey.
2023-01-21 18:06:27 +00:00
Brooks
6baab92ab5
Refactors calculate_capitalization() ( #29790 )
2023-01-20 13:38:41 -05:00
Brooks
0a0c532c86
Refactors verify_bank_hash_and_lamports() ( #29783 )
2023-01-19 16:14:39 -05:00
Tao Zhu
1d88654116
Revert "Cap accounts data a transaction can load by its requested limit" ( #29373 )
...
Revert "Cap accounts data a transaction can load by its requested limit (#27840 )"
This reverts commit 81dc2e56ac
.
2023-01-17 11:34:18 +01:00
Jeff Washington (jwash)
a2933f7fa6
remove some uses of write_version ( #29680 )
2023-01-13 12:05:15 -08:00
Jeff Washington (jwash)
ad400419b5
assert write version is increasing per slot as we read from a slot ( #29624 )
2023-01-10 13:34:30 -08:00
Jeff Washington (jwash)
9692cfef98
accounts tests use store_for_tests ( #29555 )
2023-01-06 15:30:42 -08:00
Jeff Washington (jwash)
2f0d849c84
set rent epoch to max on new account creation ( #29528 )
...
* set rent epoch to max on new account creation
* add comment
2023-01-06 14:21:10 -08:00
Jeff Washington (jwash)
2a0a185846
accounts tests use store_for_tests ( #29554 )
2023-01-06 12:07:36 -08:00
behzad nouri
12da2da389
fixes errors from clippy::redundant_clone ( #29536 )
...
https://rust-lang.github.io/rust-clippy/master/index.html#redundant_clone
2023-01-05 18:42:19 +00:00
Jeff Washington (jwash)
cf1aa4beea
feature: set rent_epoch to Epoch::MAX ( #28690 )
...
* check android builds
* feature: set rent_epoch to Epoch::MAX
* tweaks
* Update runtime/src/rent_collector.rs
Co-authored-by: Brooks Prumo <brooks@prumo.org>
* simplify changes to tests
* back out some test changes
* calculate_rent_result passes through Exempt
* move calc outside loop
* if rent epoch is already max, use 'NoRentCollectionNow'
Co-authored-by: Brooks Prumo <brooks@prumo.org>
2023-01-02 07:51:08 -08:00
Jeff Washington (jwash)
4a64f6d421
test_utils::create_test_accounts pre-allocates an append vec first ( #29336 )
...
* test_utils::create_test_accounts pre-allocates an append vec first
* remove comment
2022-12-21 09:02:42 -08:00
Brooks
053775ad77
Elides unnecessary lifetimes ( #29299 )
2022-12-20 12:44:17 -05:00
Jeff Washington (jwash)
7034f4cbbe
remove new_with_config_for_benches(caching_enabled) ( #29231 )
2022-12-13 07:19:24 -08:00
Jeff Washington (jwash)
536b879aa7
remove accounts.new_with_config_for_tests.caching_enabled ( #29168 )
2022-12-12 11:31:51 -08:00
Jeff Washington (jwash)
5e799ad563
remove AccountsDb::new_with_config.caching_enabled ( #29167 )
2022-12-12 08:50:00 -08:00
Jeff Washington (jwash)
db2cc53967
remove skip rewrites from bank ( #29182 )
2022-12-10 09:27:15 -08:00
Jeff Washington (jwash)
99f0113450
remove Accounts::new_with_config_for_tests.caching_enabled ( #29169 )
2022-12-09 10:44:56 -08:00
Jeff Washington (jwash)
ea19fe9219
support for accounts tests loading accounts with excluded feature ( #29142 )
2022-12-08 11:46:37 -08:00
Jeff Washington (jwash)
2f4731570a
ledger-tool create-snapshot uses write cache ( #29119 )
...
* ledger-tool create-snapshot uses write cache
* ledger tool create snapshot works with write cache
2022-12-08 06:09:52 -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
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
Brooks Prumo
ff7e82b5ff
Removes Accounts::bank_hash_at() ( #28879 )
2022-11-21 13:25:48 -05:00
Brooks Prumo
7787cb2ab2
Renames BankHashInfo field to accounts_delta_hash ( #28878 )
2022-11-18 15:35:03 -05: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
Trent Nelson
53a579bed1
ledger-tool: stream output of `accounts` subcommand
2022-11-17 12:45:26 -07:00
behzad nouri
28956d7653
removes feature gate code preventing crediting accounts that end rent paying ( #28818 )
2022-11-15 19:55:34 +00: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
Brooks Prumo
d1ba42180d
clippy for rust 1.65.0 ( #28765 )
2022-11-09 19:39:38 +00: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
27269d833c
Uses enum for data source with calc_accounts_hash() ( #28584 )
2022-10-26 13:04:01 -04:00
Brooks Prumo
1dbcb78de7
Renames fn to update_accounts_hash() ( #28574 )
2022-10-25 16:43:19 -04:00
Trent Nelson
1fbd818647
runtime: remove `Default` req on account scan interfaces ( #28533 )
2022-10-21 17:53:06 -06:00
Jeff Washington (jwash)
fd2e671861
remove slot# from account hash ( #28405 )
...
* remove slot# from account hash
* add feature
* fix tests
* constants to help clarify 'irrelevant' changes
* move to enum for enforcing irrelevancy
* ignore unsupported tests
2022-10-18 08:03:37 -07:00