Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
5520 commits
Select commit Hold shift + click to select a range
965b21e
save
ryoqun Feb 19, 2024
a4cca9c
save
ryoqun Feb 19, 2024
22800d3
save
ryoqun Feb 19, 2024
f8b9fec
save
ryoqun Feb 19, 2024
d5941d2
save
ryoqun Feb 19, 2024
69a2698
save
ryoqun Feb 19, 2024
0923738
save
ryoqun Feb 19, 2024
9fa53be
save
ryoqun Feb 19, 2024
9dd7e22
save
ryoqun Feb 19, 2024
8bc2aba
save
ryoqun Feb 19, 2024
f12b38c
save
ryoqun Feb 19, 2024
af6e86c
save
ryoqun Feb 19, 2024
0119429
save
ryoqun Feb 19, 2024
acf9c28
save
ryoqun Feb 19, 2024
1f3fb78
save
ryoqun Feb 19, 2024
0d726a5
save
ryoqun Feb 19, 2024
73bcc8a
save
ryoqun Feb 19, 2024
330b621
save
ryoqun Feb 19, 2024
5dc30ba
save
ryoqun Feb 19, 2024
5a72062
save
ryoqun Feb 19, 2024
9ec299f
save
ryoqun Feb 19, 2024
1a079eb
save
ryoqun Feb 19, 2024
59c1c5c
save
ryoqun Feb 19, 2024
6d19992
save
ryoqun Feb 19, 2024
d93ea2c
save
ryoqun Feb 19, 2024
7ab076d
save
ryoqun Feb 19, 2024
1f872cb
save
ryoqun Feb 19, 2024
4d0b8b4
save
ryoqun Feb 19, 2024
82d95c7
save
ryoqun Feb 19, 2024
ff38944
save
ryoqun Feb 19, 2024
1a43235
save
ryoqun Feb 19, 2024
4ae107b
save
ryoqun Feb 19, 2024
06990bf
save
ryoqun Feb 19, 2024
c1ed040
save
ryoqun Feb 19, 2024
bc9835e
save
ryoqun Feb 19, 2024
8b558f1
save
ryoqun Feb 19, 2024
d96f1e1
save
ryoqun Feb 19, 2024
877a1a6
save
ryoqun Feb 19, 2024
8b15a7b
save
ryoqun Feb 19, 2024
2b00a70
save
ryoqun Feb 19, 2024
156a6e8
save
ryoqun Feb 19, 2024
5f40172
save
ryoqun Feb 19, 2024
509ce44
save
ryoqun Feb 19, 2024
369f1be
save
ryoqun Feb 19, 2024
95f0b46
save
ryoqun Feb 19, 2024
28ca6f7
save
ryoqun Feb 19, 2024
4aa134e
save
ryoqun Feb 19, 2024
4d25815
save
ryoqun Feb 19, 2024
c5d426d
save
ryoqun Feb 19, 2024
fd8954c
save
ryoqun Feb 21, 2024
48a56eb
save
ryoqun Feb 21, 2024
d574b32
save
ryoqun Feb 21, 2024
85b0a83
save
ryoqun Feb 21, 2024
aa028f1
save
ryoqun Feb 21, 2024
9fc35f4
save
ryoqun Feb 21, 2024
3b160e7
save
ryoqun Feb 21, 2024
1bfbbf7
save
ryoqun Feb 21, 2024
ae8138a
save
ryoqun Feb 21, 2024
ff8b936
save
ryoqun Feb 21, 2024
ecfd83a
save
ryoqun Feb 21, 2024
af39166
save
ryoqun Feb 21, 2024
d8c0882
save
ryoqun Feb 21, 2024
d018023
save
ryoqun Feb 21, 2024
21e9927
save
ryoqun Feb 21, 2024
4e60470
save
ryoqun Feb 21, 2024
3f441c7
save
ryoqun Feb 21, 2024
f7cb08d
save
ryoqun Feb 21, 2024
a2adba1
save
ryoqun Feb 21, 2024
2145be6
save
ryoqun Feb 21, 2024
327ac74
save
ryoqun Feb 21, 2024
32ae5f3
save
ryoqun Feb 21, 2024
75efc23
save
ryoqun Feb 21, 2024
58f2a40
save
ryoqun Feb 21, 2024
14e641c
save
ryoqun Feb 21, 2024
2c52888
save
ryoqun Feb 21, 2024
09470f9
save
ryoqun Feb 21, 2024
6c543a3
save
ryoqun Feb 21, 2024
06743cf
save
ryoqun Feb 21, 2024
6f79278
save
ryoqun Feb 21, 2024
ed2658a
save
ryoqun Feb 21, 2024
b262a14
save
ryoqun Feb 21, 2024
99bded0
save
ryoqun Feb 21, 2024
26f411d
save
ryoqun Feb 21, 2024
25a4159
save
ryoqun Feb 21, 2024
e82c82a
save
ryoqun Feb 22, 2024
ab8cf30
save
ryoqun Feb 22, 2024
9e852d4
save
ryoqun Feb 22, 2024
161c963
save
ryoqun Feb 22, 2024
44d2b31
save
ryoqun Feb 22, 2024
dd0795f
save
ryoqun Feb 22, 2024
9a9fe97
save
ryoqun Feb 22, 2024
4c01ab3
save
ryoqun Feb 22, 2024
123d0dd
save
ryoqun Feb 22, 2024
433f799
save
ryoqun Feb 22, 2024
ec16178
save
ryoqun Feb 22, 2024
94e8a68
save
ryoqun Feb 22, 2024
67121c1
save
ryoqun Feb 22, 2024
55c754e
save
ryoqun Feb 22, 2024
022a15a
save
ryoqun Feb 22, 2024
efcd0cf
save
ryoqun Feb 22, 2024
927a4a7
save
ryoqun Feb 22, 2024
ea3c372
save
ryoqun Feb 22, 2024
f141cba
save
ryoqun Feb 22, 2024
8d3a2d6
save
ryoqun Feb 22, 2024
b8b8fcf
save
ryoqun Feb 22, 2024
1f0d6d1
save
ryoqun Feb 22, 2024
b231ae8
save
ryoqun Feb 22, 2024
de3c41e
save
ryoqun Feb 22, 2024
f5c3bf4
save
ryoqun Feb 22, 2024
987a16c
save
ryoqun Feb 22, 2024
a89a515
save
ryoqun Feb 22, 2024
86d9e01
save
ryoqun Feb 22, 2024
be5abf6
save
ryoqun Feb 22, 2024
f35f22e
save
ryoqun Feb 22, 2024
32c0cb2
save
ryoqun Feb 22, 2024
08d486e
save
ryoqun Feb 22, 2024
9bdd412
save
ryoqun Feb 22, 2024
48b392a
save
ryoqun Feb 22, 2024
1f4afbe
save
ryoqun Feb 22, 2024
ab66b6c
save
ryoqun Feb 22, 2024
9a900bc
save
ryoqun Feb 22, 2024
096d204
save
ryoqun Feb 22, 2024
51cb52c
save
ryoqun Feb 22, 2024
0b48dbd
save
ryoqun Feb 22, 2024
7ee39f1
save
ryoqun Feb 22, 2024
5fd146e
save
ryoqun Feb 22, 2024
523d0d5
save
ryoqun Feb 22, 2024
5af8ae2
save
ryoqun Feb 22, 2024
6da148c
save
ryoqun Feb 22, 2024
3711ca6
save
ryoqun Feb 22, 2024
04a0655
save
ryoqun Feb 22, 2024
8e6c4e7
save
ryoqun Feb 22, 2024
66315a5
save
ryoqun Feb 22, 2024
0525d15
save
ryoqun Feb 22, 2024
0915e27
save
ryoqun Feb 22, 2024
11cf831
save
ryoqun Feb 22, 2024
b503091
save
ryoqun Feb 22, 2024
1498044
save
ryoqun Feb 22, 2024
02d3ca4
save
ryoqun Feb 22, 2024
5c30282
save
ryoqun Feb 22, 2024
a14422c
save
ryoqun Feb 22, 2024
cdec813
save
ryoqun Feb 22, 2024
0e9c3c5
save
ryoqun Feb 22, 2024
cd72fd9
save
ryoqun Feb 22, 2024
950b259
save
ryoqun Feb 22, 2024
77d824c
save
ryoqun Feb 22, 2024
743c9ed
save
ryoqun Feb 22, 2024
9b8ff30
save
ryoqun Feb 22, 2024
8eb4e4a
save
ryoqun Feb 22, 2024
866aa33
save
ryoqun Feb 22, 2024
7a380cd
save
ryoqun Feb 22, 2024
496e139
save
ryoqun Feb 22, 2024
4ed0b4f
save
ryoqun Feb 22, 2024
32735ff
save
ryoqun Feb 22, 2024
679b26d
save
ryoqun Feb 22, 2024
dd3178c
save
ryoqun Feb 22, 2024
5488e79
save
ryoqun Feb 22, 2024
58879a2
save
ryoqun Feb 22, 2024
eb12b82
save
ryoqun Feb 22, 2024
8a8830a
save
ryoqun Feb 22, 2024
efcf3cb
save
ryoqun Feb 22, 2024
9c23870
save
ryoqun Feb 22, 2024
fd2b074
save
ryoqun Feb 22, 2024
805f1d2
save
ryoqun Feb 22, 2024
e2a3ff4
save
ryoqun Feb 22, 2024
3a91944
save
ryoqun Feb 22, 2024
5fc1775
save
ryoqun Feb 22, 2024
2412099
save
ryoqun Feb 22, 2024
808fa6f
save
ryoqun Feb 22, 2024
87d6847
save
ryoqun Feb 22, 2024
b1edd36
save
ryoqun Feb 22, 2024
0dca9f3
save
ryoqun Feb 22, 2024
70f2e5e
save
ryoqun Feb 22, 2024
20a0d67
save
ryoqun Feb 22, 2024
5759892
save
ryoqun Feb 22, 2024
021b791
save
ryoqun Feb 22, 2024
34a6c61
save
ryoqun Feb 22, 2024
41c98ea
save
ryoqun Feb 22, 2024
c843522
save
ryoqun Feb 22, 2024
0440535
save
ryoqun Feb 22, 2024
317fb97
save
ryoqun Feb 22, 2024
6893f49
Merge remote-tracking branch 'origin/master' into HEAD
ryoqun Feb 22, 2024
1c8b2d8
save
ryoqun Feb 22, 2024
95774a6
save
ryoqun Feb 22, 2024
ffb457f
save
ryoqun Feb 22, 2024
bcd38e6
Merge remote-tracking branch 'origin-anza/master' into HEAD
ryoqun Apr 5, 2024
f1a1baa
save
ryoqun Apr 5, 2024
6570361
save
ryoqun Apr 6, 2024
bef5be4
save
ryoqun Apr 6, 2024
13d5422
save
ryoqun Apr 6, 2024
875d838
save
ryoqun Apr 6, 2024
b84b9dd
save
ryoqun Apr 6, 2024
80cac8f
save
ryoqun Apr 6, 2024
10975b4
save
ryoqun Apr 6, 2024
0d47b6f
save
ryoqun Apr 6, 2024
d81ccb1
save
ryoqun Apr 6, 2024
68cb837
save
ryoqun Apr 6, 2024
caf5b54
save
ryoqun Apr 6, 2024
58b45f4
save
ryoqun Apr 6, 2024
87cfd7b
save
ryoqun Apr 6, 2024
9681e61
save
ryoqun Apr 6, 2024
b974cc4
save
ryoqun Apr 6, 2024
493d2ed
save
ryoqun Apr 6, 2024
e1c47d9
save
ryoqun Apr 6, 2024
3b547c9
save
ryoqun Apr 6, 2024
65b3b31
Remove old comment...
ryoqun Apr 6, 2024
a20d1f4
Merge remote-tracking branch 'origin-anza/master' into HEAD
ryoqun Apr 20, 2024
3472fa1
save
ryoqun Apr 20, 2024
cfaac5f
Merge remote-tracking branch 'origin-anza/master' into HEAD
ryoqun Apr 20, 2024
b0d3ac7
save
ryoqun Apr 20, 2024
24cb3a9
save
ryoqun Apr 20, 2024
ed2dc1e
save
ryoqun Apr 20, 2024
98bc90a
save
ryoqun Apr 20, 2024
996af3b
save
ryoqun Apr 20, 2024
70afb2a
save
ryoqun Apr 20, 2024
f34d56a
save
ryoqun Apr 20, 2024
83c2c6f
save
ryoqun Apr 20, 2024
3d8c55f
save
ryoqun Apr 20, 2024
f39e687
save
ryoqun Apr 20, 2024
62b52ac
save
ryoqun Apr 20, 2024
189a791
save
ryoqun Apr 20, 2024
ee377f6
save
ryoqun Apr 20, 2024
c203d3f
save
ryoqun Apr 20, 2024
12fb68b
save
ryoqun Apr 20, 2024
1d0222e
save
ryoqun Apr 20, 2024
09f087c
save
ryoqun Apr 20, 2024
57ef302
save
ryoqun Apr 20, 2024
279f3f7
save
ryoqun Apr 20, 2024
21e7482
save
ryoqun Apr 20, 2024
4b33b6d
save
ryoqun Apr 20, 2024
04e3fb5
save
ryoqun Apr 20, 2024
9d2d56a
save
ryoqun Apr 20, 2024
ad68fe3
save
ryoqun Apr 20, 2024
fff7aa7
save
ryoqun Apr 20, 2024
faa1b65
save
ryoqun Apr 20, 2024
9f39782
save
ryoqun Apr 20, 2024
ff19873
save
ryoqun Apr 20, 2024
544657a
save
ryoqun Apr 20, 2024
5b6cec8
save
ryoqun Apr 20, 2024
ccd3d4e
save
ryoqun Apr 20, 2024
2abd213
save
ryoqun Apr 20, 2024
01a9359
Merge remote-tracking branch 'origin-anza/master' into HEAD
ryoqun Apr 25, 2024
1fdf183
save
ryoqun Apr 25, 2024
9c20153
Remove various to-be-deleted comments
ryoqun Apr 25, 2024
29ca732
Make unified scheduler's new task code fallible
ryoqun Apr 26, 2024
410dbc5
Make unified scheduler's new task code fallible
ryoqun Apr 26, 2024
349caed
Merge remote-tracking branch 'origin-anza/master' into HEAD
ryoqun Apr 27, 2024
c7f23e9
save
ryoqun Apr 27, 2024
edb1f41
Merge commit 'ryoqun/unified-scheduler-fallible-new-task' into HEAD
ryoqun Apr 27, 2024
b911f3b
Merge remote-tracking branch 'ryoqun/unified-scheduler-fallible-new-t…
ryoqun Apr 27, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
218 changes: 189 additions & 29 deletions Cargo.lock

Large diffs are not rendered by default.

7 changes: 6 additions & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -181,9 +181,10 @@ console_error_panic_hook = "0.1.7"
console_log = "0.2.2"
const_format = "0.2.32"
core_affinity = "0.5.10"
cpu-time = "1.0.0"
criterion = "0.5.1"
criterion-stats = "0.3.0"
crossbeam-channel = "0.5.12"
crossbeam-channel = "0.5.11"
csv = "1.3.0"
ctrlc = "3.4.4"
curve25519-dalek = "3.2.1"
Expand Down Expand Up @@ -269,6 +270,7 @@ predicates = "2.1"
pretty-hex = "0.3.0"
prio-graph = "0.2.1"
proc-macro2 = "1.0.79"
procfs = "0.16.0"
proptest = "1.4"
prost = "0.11.9"
prost-build = "0.11.9"
Expand All @@ -289,6 +291,7 @@ reqwest = { version = "0.11.23", default-features = false }
rolling-file = "0.2.0"
rpassword = "7.3"
rustc_version = "0.4"
rustix = "0.38.32"
rustls = { version = "0.21.11", default-features = false, features = ["quic"] }
rustversion = "1.0.14"
scopeguard = "1.2.0"
Expand Down Expand Up @@ -443,6 +446,8 @@ zstd = "0.11.2"
# for details, see https://github.com/solana-labs/crossbeam/commit/fd279d707025f0e60951e429bf778b4813d1b6bf
crossbeam-epoch = { git = "https://github.com/solana-labs/crossbeam", rev = "fd279d707025f0e60951e429bf778b4813d1b6bf" }

crossbeam-channel = { git = "https://github.com/ryoqun/crossbeam", rev = "438ec7cdaf6c6a8f593e50344c725fef8a13c7a5" }

# We include the following crates as our dependencies above from crates.io:
#
# * spl-associated-token-account
Expand Down
4 changes: 4 additions & 0 deletions ci/test-bench.sh
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,10 @@ _ $cargoNightly bench --manifest-path gossip/Cargo.toml ${V:+--verbose} \
_ $cargoNightly bench --manifest-path poh/Cargo.toml ${V:+--verbose} \
-- -Z unstable-options --format=json | tee -a "$BENCH_FILE"

# Run scheduler-pool benches
_ $cargoNightly bench --manifest-path scheduler-pool/Cargo.toml ${V:+--verbose} \
-- -Z unstable-options --format=json | tee -a "$BENCH_FILE"

# Run core benches
_ $cargoNightly bench --manifest-path core/Cargo.toml ${V:+--verbose} \
-- -Z unstable-options --format=json | tee -a "$BENCH_FILE"
Expand Down
41 changes: 39 additions & 2 deletions core/src/validator.rs
Original file line number Diff line number Diff line change
Expand Up @@ -149,8 +149,8 @@ const WAIT_FOR_WEN_RESTART_SUPERMAJORITY_THRESHOLD_PERCENT: u64 =
#[derive(Clone, EnumString, EnumVariantNames, Default, IntoStaticStr, Display)]
#[strum(serialize_all = "kebab-case")]
pub enum BlockVerificationMethod {
#[default]
BlockstoreProcessor,
#[default]
UnifiedScheduler,
}

Expand Down Expand Up @@ -1462,8 +1462,10 @@ impl Validator {

// Used for notifying many nodes in parallel to exit
pub fn exit(&mut self) {
info!("exit1");
self.validator_exit.write().unwrap().exit();

info!("exit2");
// drop all signals in blockstore
self.blockstore.drop_signal();
}
Expand Down Expand Up @@ -1499,24 +1501,29 @@ impl Validator {
}

pub fn join(self) {
drop(self.bank_forks);
info!("join1");
drop(self.cluster_info);

info!("join2");
self.poh_service.join().expect("poh_service");
drop(self.poh_recorder);

info!("join3");
if let Some(json_rpc_service) = self.json_rpc_service {
json_rpc_service.join().expect("rpc_service");
}

info!("join4");
if let Some(pubsub_service) = self.pubsub_service {
pubsub_service.join().expect("pubsub_service");
}

info!("join5");
self.rpc_completed_slots_service
.join()
.expect("rpc_completed_slots_service");

info!("join6");
if let Some(optimistically_confirmed_bank_tracker) =
self.optimistically_confirmed_bank_tracker
{
Expand All @@ -1525,96 +1532,126 @@ impl Validator {
.expect("optimistically_confirmed_bank_tracker");
}

info!("join7");
if let Some(transaction_status_service) = self.transaction_status_service {
transaction_status_service
.join()
.expect("transaction_status_service");
}

info!("join8");
if let Some(rewards_recorder_service) = self.rewards_recorder_service {
rewards_recorder_service
.join()
.expect("rewards_recorder_service");
}

info!("join9");
if let Some(cache_block_meta_service) = self.cache_block_meta_service {
cache_block_meta_service
.join()
.expect("cache_block_meta_service");
}

info!("join10");
if let Some(system_monitor_service) = self.system_monitor_service {
system_monitor_service
.join()
.expect("system_monitor_service");
}

info!("join11");
if let Some(sample_performance_service) = self.sample_performance_service {
sample_performance_service
.join()
.expect("sample_performance_service");
}

info!("join12");
if let Some(entry_notifier_service) = self.entry_notifier_service {
entry_notifier_service
.join()
.expect("entry_notifier_service");
}

info!("join13");
if let Some(s) = self.snapshot_packager_service {
s.join().expect("snapshot_packager_service");
}

info!("join14");
self.gossip_service.join().expect("gossip_service");
if let Some(repair_quic_endpoint) = &self.repair_quic_endpoint {
repair::quic_endpoint::close_quic_endpoint(repair_quic_endpoint);
}
info!("join15");
self.serve_repair_service
.join()
.expect("serve_repair_service");
info!("join15");
if let Some(repair_quic_endpoint_join_handle) = self.repair_quic_endpoint_join_handle {
self.repair_quic_endpoint_runtime
.map(|runtime| runtime.block_on(repair_quic_endpoint_join_handle))
.transpose()
.unwrap();
};
info!("join16");
self.stats_reporter_service
.join()
.expect("stats_reporter_service");
info!("join17");
self.blockstore_metric_report_service
.join()
.expect("ledger_metric_report_service");
info!("join18");
self.accounts_background_service
.join()
.expect("accounts_background_service");
info!("join19");
self.accounts_hash_verifier
.join()
.expect("accounts_hash_verifier");
info!("join20");
if let Some(turbine_quic_endpoint) = &self.turbine_quic_endpoint {
solana_turbine::quic_endpoint::close_quic_endpoint(turbine_quic_endpoint);
}
info!("join21");
self.tpu.join().expect("tpu");
info!("join22");
self.tvu.join().expect("tvu");
info!("join23");
if let Some(turbine_quic_endpoint_join_handle) = self.turbine_quic_endpoint_join_handle {
self.turbine_quic_endpoint_runtime
.map(|runtime| runtime.block_on(turbine_quic_endpoint_join_handle))
.transpose()
.unwrap();
}
info!("join24");
self.completed_data_sets_service
.join()
.expect("completed_data_sets_service");
info!("join25");
if let Some(ip_echo_server) = self.ip_echo_server {
ip_echo_server.shutdown_background();
}

info!("join26");
if let Some(geyser_plugin_service) = self.geyser_plugin_service {
geyser_plugin_service.join().expect("geyser_plugin_service");
}

info!("join27");
self.poh_timing_report_service
.join()
.expect("poh_timing_report_service");
info!("join28");
self.bank_forks.write().unwrap().prepare_to_drop();
let sc = Arc::strong_count(&self.bank_forks);
if let Some(bank_forks) = Arc::into_inner(self.bank_forks) {
drop::<BankForks>(bank_forks.into_inner().unwrap());
} else {
warn!("seems bankforks are leaking...{}:", sc);
}
}
}

Expand Down
37 changes: 29 additions & 8 deletions core/tests/unified_scheduler.rs
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,8 @@ use {
solana_program_runtime::timings::ExecuteTimings,
solana_runtime::{
accounts_background_service::AbsRequestSender, bank::Bank, bank_forks::BankForks,
genesis_utils::GenesisConfigInfo, prioritization_fee_cache::PrioritizationFeeCache,
genesis_utils::GenesisConfigInfo, installed_scheduler_pool::DefaultScheduleExecutionArg,
prioritization_fee_cache::PrioritizationFeeCache,
},
solana_sdk::{
hash::Hash,
Expand All @@ -27,11 +28,14 @@ use {
transaction::{Result, SanitizedTransaction},
},
solana_unified_scheduler_pool::{
DefaultTaskHandler, HandlerContext, PooledScheduler, SchedulerPool, TaskHandler,
DefaultTaskHandler, HandlerContext, PooledScheduler, SchedulerPool, SpawnableScheduler,
TaskHandler,
},
std::{
collections::HashMap,
sync::{Arc, Mutex},
thread::sleep,
time::Duration,
},
};

Expand All @@ -41,10 +45,11 @@ fn test_scheduler_waited_by_drop_bank_service() {

static LOCK_TO_STALL: Mutex<()> = Mutex::new(());

#[derive(Debug)]
#[derive(Clone, Debug)]
struct StallingHandler;
impl TaskHandler for StallingHandler {
impl TaskHandler<DefaultScheduleExecutionArg> for StallingHandler {
fn handle(
&self,
result: &mut Result<()>,
timings: &mut ExecuteTimings,
bank: &Arc<Bank>,
Expand All @@ -55,10 +60,24 @@ fn test_scheduler_waited_by_drop_bank_service() {
info!("Stalling at StallingHandler::handle()...");
*LOCK_TO_STALL.lock().unwrap();
// Wait a bit for the replay stage to prune banks
std::thread::sleep(std::time::Duration::from_secs(3));
sleep(Duration::from_secs(3));
info!("Now entering into DefaultTaskHandler::handle()...");

DefaultTaskHandler::handle(result, timings, bank, transaction, index, handler_context);
<DefaultTaskHandler as TaskHandler<DefaultScheduleExecutionArg>>::handle(
&DefaultTaskHandler,
result,
timings,
bank,
transaction,
index,
handler_context,
);
}

fn create<T: SpawnableScheduler<Self, DefaultScheduleExecutionArg>>(
_pool: &SchedulerPool<T, Self, DefaultScheduleExecutionArg>,
) -> Self {
Self
}
}

Expand All @@ -72,7 +91,7 @@ fn test_scheduler_waited_by_drop_bank_service() {
let genesis_bank = Bank::new_for_tests(&genesis_config);
let bank_forks = BankForks::new_rw_arc(genesis_bank);
let ignored_prioritization_fee_cache = Arc::new(PrioritizationFeeCache::new(0u64));
let pool_raw = SchedulerPool::<PooledScheduler<StallingHandler>, _>::new(
let pool_raw = SchedulerPool::<PooledScheduler<StallingHandler, _>, _, _>::new(
None,
None,
None,
Expand Down Expand Up @@ -107,7 +126,9 @@ fn test_scheduler_waited_by_drop_bank_service() {
// Delay transaction execution to ensure transaction execution happens after termintion has
// been started
let lock_to_stall = LOCK_TO_STALL.lock().unwrap();
pruned_bank.schedule_transaction_executions([(&tx, &0)].into_iter());
pruned_bank
.schedule_transaction_executions([(&tx, &0)].into_iter())
.unwrap();
drop(pruned_bank);
assert_eq!(pool_raw.pooled_scheduler_count(), 0);
drop(lock_to_stall);
Expand Down
4 changes: 2 additions & 2 deletions ledger-tool/src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -864,7 +864,6 @@ fn main() {
.takes_value(true)
.possible_values(BlockVerificationMethod::cli_names())
.global(true)
.hidden(hidden_unless_forced())
.help(BlockVerificationMethod::cli_message()),
)
.arg(
Expand All @@ -874,7 +873,6 @@ fn main() {
.takes_value(true)
.validator(|s| is_within_range(s, 1..))
.global(true)
.hidden(hidden_unless_forced())
.help(DefaultSchedulerPool::cli_message()),
)
.arg(
Expand Down Expand Up @@ -1823,6 +1821,8 @@ fn main() {

exit_signal.store(true, Ordering::Relaxed);
system_monitor_service.join().unwrap();
bank_forks.write().unwrap().prepare_to_drop();
drop::<BankForks>(Arc::into_inner(bank_forks).unwrap().into_inner().unwrap());
}
("graph", Some(arg_matches)) => {
let output_file = value_t_or_exit!(arg_matches, "graph_filename", String);
Expand Down
Loading