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
Jeff Washington (jwash)
b583ec79e1
add tests for should_move_to_ancient_append_vec ( #28438 )
...
add tests for should_moev_to_ancient_append_vec
2022-10-18 11:41:35 -07: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
Jeff Washington (jwash)
682999a423
accounts hash calculation uses files instead of memory ( #28065 )
2022-10-18 07:51:38 -07:00
Jeff Washington (jwash)
b669b827fb
refactor and test get_sorted_potential_ancient_slots ( #28436 )
2022-10-18 07:45:43 -07:00
Justin Starry
70445b7402
Refactor: Rename `max_invoke_depth` to `max_invoke_stack_height` ( #28427 )
...
Refactor: Rename max_invoke_depth to max_invoke_stack_height
2022-10-17 23:54:56 +08:00
Jeff Washington (jwash)
28a89a1d99
remove expected rent collection and rehashing completely ( #28422 )
2022-10-17 07:24:42 -07:00
Jeff Washington (jwash)
f896513864
remove unnecessary clones ( #28406 )
2022-10-16 20:33:07 -07:00
Jeff Washington (jwash)
0807105c5a
refactoring of accounts hash to prepare for using files always ( #28379 )
2022-10-14 12:29:43 -07:00
Brooks Prumo
31c2b29941
Sends both an EAH and a snapshot request from `set_root()` ( #28363 )
2022-10-14 11:00:04 -04:00
Brooks Prumo
dd7fee8f32
Re-enqueues unhandled ABS requests ( #28362 )
2022-10-13 16:25:39 -04:00
Brooks Prumo
9cbd00fdbc
Converts PendingAccountsPackage to a channel ( #28352 )
2022-10-13 12:47:36 -04:00
Jeff Washington (jwash)
72d6927fa1
factor out hashing of storages for caching ( #28261 )
2022-10-13 08:53:54 -07:00
Jeff Washington (jwash)
53a1a14868
eliminate worthless work in store_accounts_to ( #28365 )
2022-10-12 13:30:20 -07:00
Alexander Meißner
664339e239
Refactor - executor_cache ( #28332 )
...
* Renames CachedExecutors => BankExecutorCache.
* Renames TransactionExecutor => TransactionExecutorCacheEntry.
* Renames TransactionExecutorStatus => TxBankExecutorCacheDiff.
* Adds TransactionExecutorCache.
* Renames the items of TxBankExecutorCacheDiff.
2022-10-12 18:09:03 +02:00
steviez
db9e32d71d
Revert "log adding root every 10s ( #28280 )" ( #28334 )
...
This reverts commit 16853acf35
.
We get similar coverage from the slot field of bank-forks_set_root;
additionally, we can see banks with bank-new_from_parent-heights.
2022-10-11 12:49:49 -05:00
Brooks Prumo
020cc090d5
Refactors ABS snapshot request handling ( #28326 )
2022-10-11 13:17:06 -04:00
Ian Macalinao
cdf77bb824
runtime: fix typo 'transaction' ( #27948 )
2022-10-11 07:47:10 -07:00
Jeff Washington (jwash)
7a120b8b62
accounts_db::load returns None for zero lamport accounts ( #28311 )
2022-10-11 07:43:03 -07:00
Brooks Prumo
d500391006
Removes redundant accounts_package_type ( #28325 )
2022-10-10 17:11:38 +00:00
Alexander Meißner
2fc8e533a2
Refactor - Move `executor_cache` to program-runtime crate ( #28322 )
...
* Moves CachedExecutors, related structs, consts and tests into the program-runtime crate.
* Moves TransactionExecutor, related enum and type defs into executor_cache mod.
2022-10-10 15:01:41 +02:00
Jeff Washington (jwash)
16853acf35
log adding root every 10s ( #28280 )
2022-10-07 09:19:34 -07:00
Jeff Washington (jwash)
a1fe8dd444
add info for load race condition asserts ( #28277 )
2022-10-07 08:55:01 -07:00
Tao Zhu
0324573667
report additional transaction errors to metrics ( #28285 )
2022-10-07 10:36:22 -05:00
Jeff Washington (jwash)
a400178744
hash calc chunking cleanup ( #28274 )
2022-10-06 23:23:26 -07:00
Jeff Washington (jwash)
76c30e7bd0
move accounts_db::load_without_fixed_root to test mod ( #28271 )
2022-10-06 17:11:08 -07:00
Jeff Washington (jwash)
66cd290d04
add chunk tracking in SplitAncientStorages ( #28202 )
2022-10-06 11:19:53 -07:00
Jeff Washington (jwash)
bb9a19ac86
minor refactoring of accounts hash cache ( #28260 )
2022-10-06 10:50:16 -07:00
Jeff Washington (jwash)
435d4aded9
run initial hash calc in background, using background threads ( #28239 )
2022-10-05 19:42:06 -07:00
Brooks Prumo
eec2a2a301
Move epoch accounts hash utility functions ( #28219 )
2022-10-05 23:29:22 +00:00
Jeff Washington (jwash)
456d4ae93a
accounts hash calc, add get_ancient_slots ( #28240 )
2022-10-05 15:32:39 -07:00
Jeff Washington (jwash)
ad0742c7cf
exit early deep in bank freeze, avoiding some unnecessary work ( #28238 )
...
exit early on bank freeze
2022-10-05 14:49:33 -07:00
Brooks Prumo
a8c6a9e5fc
Bank::freeze() waits for EAH calculation to complete ( #28170 )
2022-10-05 17:44:35 -04:00
Jeff Washington (jwash)
3f5eec32cd
refactor SplitAncientStorages::new for testing ( #28235 )
2022-10-05 12:56:29 -07:00
Jeff Washington (jwash)
f464c69764
refactor into SplitAncientStorages::new ( #28228 )
2022-10-05 08:46:53 -07:00
Jeff Washington (jwash)
3339570a70
accounts hash scan refactoring ( #28220 )
2022-10-04 10:19:50 -07:00
Jeff Washington (jwash)
fd11e261dd
use ref for snapshot_storages.iter_range ( #28205 )
2022-10-04 09:11:44 -07:00
Justin Starry
ddf95c181c
RPC: Support versioned txs in getFeeForMessage API ( #28217 )
...
* RPC: Support versioned txs in getFeeForMessage API
* Update sdk/program/src/message/sanitized.rs
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
2022-10-05 00:00:34 +08:00
Jeff Washington (jwash)
39b37e2c6f
remove LoadZeroLamports enum ( #28204 )
...
remove feature return_none_for_zero_lamport_accounts
2022-10-04 08:06:56 -07:00
Jeff Washington (jwash)
e2c0999568
rename fields in SplitAncientStorages ( #28200 )
2022-10-03 17:18:08 -07:00
Jeff Washington (jwash)
df76cb5ad9
refactor into split_storages_ancient ( #28194 )
2022-10-03 14:25:33 -07:00
Jeff Washington (jwash)
7b4a6ded5b
remove feature return_none_for_zero_lamport_accounts ( #28144 )
2022-10-03 12:22:56 -07:00
Jeff Washington (jwash)
05ebd42ac5
remove troublesome assert ( #28195 )
2022-10-03 12:18:48 -07:00
Jeff Washington (jwash)
2d4c88574c
add accounts hash get_binned_data() ( #28168 )
2022-10-03 12:17:32 -07:00
Brooks Prumo
5d044ccb34
abs: Update last_full_snapshot_slot before calling clean_accounts() ( #27940 )
2022-10-03 09:34:13 -04:00
Jeff Washington (jwash)
adc4e633a2
accounts hash calc refactoring ( #28164 )
2022-10-01 17:09:50 -07:00
Jeff Washington (jwash)
7fd8540b49
refactor CacheHashDataFile to use mmapped data ( #28163 )
...
reafactor CacheHashDataFile to use mmapped data
2022-10-01 17:09:36 -07:00
Jeff Washington (jwash)
929a311155
refactor accts hash tests ( #28165 )
2022-10-01 17:09:29 -07:00
Jeff Washington (jwash)
9255506e92
refactor some accts hash tests ( #28167 )
2022-09-30 14:24:48 -07:00
Brooks Prumo
2f8f6c6a31
Send Epoch Accounts Hash requests from set_root() ( #27764 )
2022-09-30 14:59:41 -04:00
Jeff Washington (jwash)
cfc124c825
acct idx can no longer use write cache ( #28150 )
2022-09-30 10:55:27 -07:00
Jeff Washington (jwash)
2196fcb4c8
alignment work ( #28123 )
2022-09-30 07:34:18 -07:00
Jeff Washington (jwash)
80c0173452
width of hash calc bins was off by 1 ( #28124 )
2022-09-29 11:45:53 -07:00
Brooks Prumo
e6b237c2e8
eah: Add log in bank ( #28110 )
2022-09-28 14:45:42 -04:00
Haoran Yi
5b4a669e5f
fix typo
2022-09-28 09:48:56 -05:00
Brooks Prumo
4d02292931
Use epoch_accounts_hash::calculation_stop() ( #28106 )
2022-09-28 09:11:18 -04:00
Jeff Washington (jwash)
a89010cc89
fix duplicate local variable ( #28093 )
2022-09-27 08:48:05 -07:00
Jeff Washington (jwash)
c7cda6c658
refactor hash calc caching ( #27990 )
2022-09-26 15:21:47 -07:00
apfitzge
cdb95a362f
update upacking thread names ( #28081 )
...
* update upacking thread names
* remove - add ht
2022-09-26 14:51:31 -05:00
Jeff Washington (jwash)
1aa9c57a41
hash cache get_slice ( #28018 )
2022-09-26 09:30:20 -07:00
Justin Starry
a0f49c2e4f
Add assertions for computed block cost limit constants ( #28056 )
2022-09-26 12:50:31 +00:00
Alexander Meißner
71aee4fcaf
Feature: Explicitly limit `TransactionContext::instruction_trace_capacity` ( #27938 )
...
* Renames instruction_stack_capacity => instruction_stack_capacity.
* Replaces number_of_instructions_at_transaction_level by instruction_trace_capacity.
* Adds MaxInstructionTraceLengthExceeded.
* Adjusts TransactionContext::new() parameter.
* Adds feature gate limit_max_instruction_trace_length.
* Adds test_max_instruction_trace_length().
2022-09-26 10:47:16 +02:00
Jeff Washington (jwash)
de7a5f2c68
get rid of unnecessary mut ( #28017 )
2022-09-25 18:39:02 -07:00
Alessandro Decina
b9f4c8e3c0
BorrowedAccount: add set_data_from_slice(), make set_data() take owned values ( #27836 )
...
* BorrowedAccount: add set_data_from_slice(), make set_data() take owned values
set_data() used to take a slice and would force alloc+copy if the caller
has owned values (eg account creation, account lookup table).
Expose set_data_from_slice() for callers that have slices, and switch
set_data() to taking an owned Vec.
* BorrowAccount: refactor common accounts_update_delta code in helper method
* BorrowedAccount: add extend_from_slice()
This allows avoiding copies appending entries to account lookup tables.
* BorrowedAccount: remove unnecessary ifs around update_accounts_resize_delta
2022-09-24 01:37:02 +01:00
Tao Zhu
f64242847d
increase instruction data cost ( #27992 )
2022-09-23 16:15:31 -05:00
behzad nouri
9ee53e594d
patches clippy errors from new rust nightly release ( #28028 )
2022-09-23 20:57:27 +00:00
apfitzge
ca55fc8a05
root_bank_cache ( #27985 )
...
* BankForks: atomic root
* root bank cache
* fix and clean up
* added some tests
2022-09-23 15:01:03 -05:00
Jeff Washington (jwash)
89b0abcf4d
get_one_epoch_old_slot_for_hash_calc_scan to handle many old append vecs ( #28000 )
2022-09-23 11:17:02 -07:00
behzad nouri
315707504e
boxes StakeState in stake_account::Error::InvalidDelegation ( #28006 )
...
This avoids clippy::result_large_err error on newer rust versions:
https://rust-lang.github.io/rust-clippy/master/#result_large_err
2022-09-23 14:04:44 +00:00
Michael Vines
fb686cc83b
Nodes with 0% commission are now included in the `getBlock` RPC method `rewards` response field.
2022-09-22 20:31:41 -07:00
behzad nouri
9a57c64f21
patches clippy errors from new rust nightly release ( #27996 )
2022-09-22 22:23:03 +00:00
apfitzge
64f64dedea
Use regex in get_snapshot_file_kind ( #27728 )
...
refactor get_snapshot_file_kind to use regex
2022-09-22 13:55:48 -05:00
Brooks Prumo
1ee595ca9c
remove AccountsDb::initial_blockstore_processing_complete ( #27974 )
2022-09-22 13:52:04 -04:00
apfitzge
a846d50b6a
Interleaved snapshot unpack versioning ( #27484 )
...
* Issue #27346 - deserialize and check snapshot version before account fields
* Update comment on SnapshotFileKind
Co-authored-by: Brooks Prumo <brooks@prumo.org>
* SnapshotStorageRebuilderResult to RebuiltSnapshotStorage
* better error propagation from rebuild_storage
Co-authored-by: apfitzge <apfitzge@users.noreply.github.com>
Co-authored-by: Brooks Prumo <brooks@prumo.org>
2022-09-22 11:44:25 -05:00
dependabot[bot]
c4fa849844
chore: bump itertools from 0.10.3 to 0.10.5 ( #27962 )
...
* chore: bump itertools from 0.10.3 to 0.10.5
Bumps [itertools](https://github.com/rust-itertools/itertools ) from 0.10.3 to 0.10.5.
- [Release notes](https://github.com/rust-itertools/itertools/releases )
- [Changelog](https://github.com/rust-itertools/itertools/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-itertools/itertools/commits )
---
updated-dependencies:
- dependency-name: itertools
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
* [auto-commit] Update all Cargo lock files
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2022-09-21 15:28:49 -06:00
dependabot[bot]
00e4313542
chore: bump regex from 1.5.6 to 1.6.0 ( #27678 )
...
* chore: bump regex from 1.5.6 to 1.6.0
Bumps [regex](https://github.com/rust-lang/regex ) from 1.5.6 to 1.6.0.
- [Release notes](https://github.com/rust-lang/regex/releases )
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/regex/compare/1.5.6...1.6.0 )
---
updated-dependencies:
- dependency-name: regex
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
* [auto-commit] Update all Cargo lock files
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2022-09-21 18:09:33 +00:00
Brooks Prumo
5d7130623f
abs: Snapshot requests are handled in priority-order ( #27942 )
2022-09-21 12:39:09 -04:00
Brooks Prumo
ceac6a1094
abs: Refactor determining the accounts package type ( #27944 )
2022-09-20 20:31:08 -04:00
Jeff Washington (jwash)
6e24edb771
log metric in case of race condition ( #27951 )
2022-09-20 16:23:25 -07:00
Ian Macalinao
ab8b3386a1
runtime: fix typo for 'exempt' ( #27947 )
2022-09-20 16:58:57 -06:00
Ian Macalinao
aa52b8aec1
runtime: fix 'governed' typo ( #27946 )
2022-09-20 13:05:13 -06:00
Jeff Washington (jwash)
4893dd3490
re-enable caching of hash calculation ( #27920 )
2022-09-20 10:44:57 -07:00
Jeff Washington (jwash)
d74480a125
when shrinking, don't send entire old append vec to clean ( #27914 )
2022-09-20 06:32:07 -07:00
Jeff Washington (jwash)
f2d6a7ecea
bank.initial_blockstore_processing_complete to avoid concurrent hash calculations ( #27776 )
...
* bank.initial_blockstore_processing_complete to avoid concurrent hash calculations
* Update runtime/src/bank.rs
Co-authored-by: Brooks Prumo <brooks@prumo.org>
* Update runtime/src/bank.rs
Co-authored-by: Brooks Prumo <brooks@prumo.org>
* Rename TestValidator::set_startup_verification_complete()
* Initialize with `AtomicBool::new(false)` instead of `default()`
* snapshot tests: move where `initial_blockstore_processing_completed()` is called
* fixup bank_forks.rs calling `is_initial_blockstore_processing_complete()`
* only call initial_blockstore_processing_completed() in blockstore_processor
Co-authored-by: Brooks Prumo <brooks@prumo.org>
Co-authored-by: Brooks Prumo <brooks@solana.com>
2022-09-19 13:00:21 -07:00
Jeff Washington (jwash)
9f097301df
remove dead code ( #27858 )
2022-09-19 07:36:40 -07:00
Ian Macalinao
7d06f7a174
runtime: fix typo in expected_rent_collection.rs ( #27890 )
2022-09-17 21:58:33 -06:00
Ian Macalinao
0e19b22e08
runtime: fix typo occured -> occurred ( #27891 )
2022-09-17 21:58:09 -06:00
Ian Macalinao
c1c93adf67
runtime: fix typo recalcluate -> recalculate ( #27892 )
2022-09-17 21:57:38 -06:00
Ian Macalinao
9cec2ef577
runtime: fix typo situtation -> situation ( #27893 )
2022-09-17 21:57:13 -06:00