HaoranYi
e3ef0741be
simplify bank drop calls ( #24142 )
...
* simplify bank drop calls
* clippy: import
* Update ledger/src/blockstore_processor.rs
Co-authored-by: Brooks Prumo <brooks@prumo.org>
* Update runtime/src/accounts_background_service.rs
Co-authored-by: Brooks Prumo <brooks@prumo.org>
* Update runtime/src/bank.rs
Co-authored-by: Brooks Prumo <brooks@prumo.org>
* cleanup
* format
* use msb of bank_id to indicates that we are dropping
* clippy
* restore bank id
* clippy
* revert is-serialized_with_abs flag
* assert
* clippy
* whitespace
* fix bank drop callback check
* more fix
* remove msb dropping implementation
* fix
Co-authored-by: Brooks Prumo <brooks@prumo.org>
2022-04-14 08:43:54 -05:00
Jon Cinque
9b8850f99e
test-validator: Add `--max-compute-units` flag ( #24130 )
...
* test-validator: Add `--max-compute-units` flag
* Add `RuntimeConfig` for tweaking runtime behavior
* Actually add the file
* Move RuntimeConfig to runtime
2022-04-12 02:28:10 +02:00
Brooks Prumo
c322842257
Replace channel with Mutex<Option> for AccountsPackage ( #24013 )
2022-04-06 05:47:19 -05:00
carllin
4ea59d8cb4
Set drop callback on first root bank ( #23999 )
2022-04-05 13:02:33 -05:00
Jeff Washington (jwash)
c24de17278
remove index hash calculation as an option ( #23928 )
2022-03-25 15:32:53 -05:00
steviez
c31db81ac4
Use VoteAccountsHashMap type alias in all applicable spots ( #23904 )
2022-03-24 12:09:48 -05:00
Jon Cinque
7af48465fa
transaction-status: Add return data to meta ( #23688 )
...
* transaction-status: Add return data to meta
* Add return data to simulation results
* Use pretty-hex for printing return data
* Update arg name, make TransactionRecord struct
* Rename TransactionRecord -> ExecutionRecord
2022-03-22 23:17:05 +01:00
Michael Vines
390c5667f7
Setup bank hard_forks in load_bank_forks()
2022-03-15 23:08:07 -07:00
Michael Vines
390dc24608
Create leader schedule before processing blockstore
2022-03-14 15:29:58 -07:00
Michael Vines
115f376465
Factor out bank_forks_utils::load_bank_forks()
2022-03-14 15:29:58 -07:00
Michael Vines
63324be5b3
Remove last_full_snapshot_slot return value when it can be derived by the caller
2022-03-14 15:29:58 -07:00
Michael Vines
3d4bf1d00a
Refactor bank_forks_utils::load() to invoke a common process_blockstore_from_root()
2022-03-14 15:29:58 -07:00
Michael Vines
c2ce152be8
Inline do_process_blockstore_from_root
2022-03-14 15:29:58 -07:00
Michael Vines
07d5ee062d
Push recyclers down the stack
2022-03-14 15:29:58 -07:00
Brooks Prumo
3c6840050c
Ensure blocks do not exceed the max accounts data size during Replay Stage ( #23422 )
2022-03-10 10:24:31 -06:00
Michael Vines
5599bd9442
Remove BankFromArchiveTimings from ledger/
2022-03-08 08:11:50 -08:00
Michael Vines
36ad59673c
drop mut
2022-03-04 09:52:46 +01:00
Michael Vines
0d33b54d74
Rework do_process_blockstore_from_root to use BankForks
2022-03-04 09:52:46 +01:00
Michael Vines
93c8e04d51
Simplify do_process_blockstore_from_root slightly
2022-03-04 09:52:46 +01:00
Jeff Washington (jwash)
ef8b7d9c62
ledger tool halt at slot verify hash ( #23424 )
2022-03-02 11:11:18 -06:00
Justin Starry
d0e85c293f
Fix rustfmt check ( #23296 )
2022-02-23 16:38:53 +08:00
Gavin Chan
20d031e2b8
Refactor ExecuteTimings w/ enum-indexed array ( #23085 )
2022-02-22 14:46:56 -08:00
Lijun Wang
c04438be4b
Retaining transaction logs when transaction plugin is loaded. ( #22874 )
...
Transaction logs are not being saved to the database through the plugin interface.
Summary of Changes
Retain the transaction logs when transaction notification plugin is loaded.
Fixes #
lijunwangs/solana-accountsdb-plugin-postgres#6
2022-02-11 20:29:07 -08:00
HaoranYi
e4a1799334
fix typos in ledge code comments ( #23068 )
2022-02-10 20:43:44 -07:00
Pankaj Garg
a146f2d853
suppress clippy
2022-02-07 08:02:58 -08:00
Pankaj Garg
c5d8560cdb
updates to address review feedback
2022-02-07 08:02:58 -08:00
Pankaj Garg
dfef68f985
fix build
2022-02-07 08:02:58 -08:00
Pankaj Garg
4de14e530b
Optimize batching of transactions during replay for parallel processing
2022-02-07 08:02:58 -08:00
Jeff Washington (jwash)
fb95fa68a2
cleanup api ( #22845 )
2022-01-31 11:39:23 -06:00
Tao Zhu
a724fa2347
Add hidden cli option to allow validator reports replayed transaction cost metrics ( #22369 )
...
* add hidden cli option to allow validator reports replayed transaction cost detail metrics
* Update validator/src/main.rs
Co-authored-by: Michael Vines <mvines@gmail.com>
* - rebase master, using unbounded instead of channel; dowgrade to datapoint_trace
* removed cli arg, prefer log at trace
Co-authored-by: Michael Vines <mvines@gmail.com>
2022-01-15 00:31:21 +00:00
carllin
eca8d21249
log internals ( #22493 )
2022-01-13 19:50:46 -05:00
Jeff Biseda
8b66625c95
convert std::sync::mpsc to crossbeam_channel ( #22264 )
2022-01-11 02:44:46 -08:00
carllin
813006b33b
remove per program timings from blockstore processor ledger replay ( #22370 )
2022-01-08 01:52:08 -05:00
Trent Nelson
7d32909e17
move `ExecuteTimings` from `runtime::bank` to `program_runtime::timings`
2022-01-06 03:56:46 -07:00
Justin Starry
45458e7139
Refactor: Improve type safety and readability of transaction execution ( #22215 )
...
* Refactor Bank::load_and_execute_transactions
* Refactor: improve type safety of TransactionExecutionResult
* Add enum for extra type safety in execution results
* feedback
2022-01-05 10:15:15 +08:00
carllin
33d0b5e011
Revert "Count compute units even when transaction errors ( #22059 )" ( #22174 )
...
This reverts commit eaa8c67bde
.
2021-12-30 02:42:32 -05:00
carllin
eaa8c67bde
Count compute units even when transaction errors ( #22059 )
2021-12-28 17:05:11 -05:00
Michael Vines
b8837c04ec
Reformat imports to a consistent style for imports
...
rustfmt.toml configuration:
imports_granularity = "One"
group_imports = "One"
2021-12-03 09:19:13 -08:00
ryleung-solana
8cf36e5cb0
Add GPU sigverify for verify path ( #20851 )
...
Allows the use of GPU acceleration in verifying the signatures in Entry's after deserialization in the replay stage
Co-authored-by: Stephen Akridge <sakridge@gmail.com>
Co-authored-by: Ryan Leung <ryan.leung@solana.com>
2021-11-30 21:16:13 -05:00
Michael Vines
ba9dfa0d22
Remove frozen account support
2021-11-29 08:38:11 -08:00
Justin Starry
66fa062f13
rename process_entries to indicate it's only for tests ( #21321 )
2021-11-17 20:53:40 +01:00
Justin Starry
036d7fcc81
Clean up sanitized tx creation for tests ( #21006 )
2021-10-27 18:09:16 +01:00
Michael Vines
350bb561eb
Clippy
2021-10-23 08:21:20 +00:00
Jeff Washington (jwash)
70b2e5fef2
hash calc uses all threads during startup ( #20735 )
2021-10-15 17:41:23 -05:00
Tao Zhu
005d6863fd
- move cost tracker into bank, so each bank has its own cost tracker; ( #20527 )
...
- move related modules to runtime
2021-10-12 08:51:33 -05:00
Tao Zhu
675fa6993b
- update const cost values with data collected by #19627 ( #20314 )
...
- update cost calculation to closely proposed fee schedule #16984
2021-10-08 14:48:50 -05:00
Michael Vines
7027d56064
Resolve nightly-2021-10-05 clippy complaints
2021-10-06 10:37:58 -07:00
steviez
d8e4840b49
Follow up to blockstore test cleanup ( #19656 ) ( #20143 )
2021-10-04 10:35:03 -05:00
Lijun Wang
fe97cb2ddf
AccountsDb plugin framework ( #20047 )
...
Summary of Changes
Create a plugin mechanism in the accounts update path so that accounts data can be streamed out to external data stores (be it Kafka or Postgres). The plugin mechanism allows
Data stores of connection strings/credentials to be configured,
Accounts with patterns to be streamed
PostgreSQL implementation of the streaming for different destination stores to be plugged in.
The code comprises 4 major parts:
accountsdb-plugin-intf: defines the plugin interface which concrete plugin should implement.
accountsdb-plugin-manager: manages the load/unload of plugins and provide interfaces which the validator can notify of accounts update to plugins.
accountsdb-plugin-postgres: the concrete plugin implementation for PostgreSQL
The validator integrations: updated streamed right after snapshot restore and after account update from transaction processing or other real updates.
The plugin is optionally loaded on demand by new validator CLI argument -- there is no impact if the plugin is not loaded.
2021-09-30 14:26:17 -07:00
Brooks Prumo
97fc64dd0c
Call exhaustively_free_unused_resource() instead ( #19847 )
2021-09-13 18:08:32 -05:00