14
14
shred:: { shred_code, ProcessShredsStats , ReedSolomonCache , Shred , ShredFlags , Shredder } ,
15
15
} ,
16
16
solana_sdk:: {
17
- genesis_config:: ClusterType ,
18
17
signature:: Keypair ,
19
18
timing:: { duration_as_us, AtomicInterval } ,
20
19
} ,
@@ -70,7 +69,6 @@ impl StandardBroadcastRun {
70
69
& mut self ,
71
70
keypair : & Keypair ,
72
71
max_ticks_in_slot : u8 ,
73
- cluster_type : ClusterType ,
74
72
stats : & mut ProcessShredsStats ,
75
73
) -> Vec < Shred > {
76
74
const SHRED_TICK_REFERENCE_MASK : u8 = ShredFlags :: SHRED_TICK_REFERENCE_MASK . bits ( ) ;
@@ -83,21 +81,18 @@ impl StandardBroadcastRun {
83
81
let shredder =
84
82
Shredder :: new ( state. slot , state. parent , reference_tick, self . shred_version )
85
83
. unwrap ( ) ;
86
- let merkle_variant = should_use_merkle_variant ( state. slot , cluster_type) ;
87
84
let ( mut shreds, coding_shreds) = shredder. entries_to_shreds (
88
85
keypair,
89
86
& [ ] , // entries
90
87
true , // is_last_in_slot,
91
88
state. next_shred_index ,
92
89
state. next_code_index ,
93
- merkle_variant ,
90
+ true , // merkle_variant
94
91
& self . reed_solomon_cache ,
95
92
stats,
96
93
) ;
97
- if merkle_variant {
98
- stats. num_merkle_data_shreds += shreds. len ( ) ;
99
- stats. num_merkle_coding_shreds += coding_shreds. len ( ) ;
100
- }
94
+ stats. num_merkle_data_shreds += shreds. len ( ) ;
95
+ stats. num_merkle_coding_shreds += coding_shreds. len ( ) ;
101
96
self . report_and_reset_stats ( true ) ;
102
97
self . unfinished_slot = None ;
103
98
shreds. extend ( coding_shreds) ;
@@ -114,7 +109,6 @@ impl StandardBroadcastRun {
114
109
blockstore : & Blockstore ,
115
110
reference_tick : u8 ,
116
111
is_slot_end : bool ,
117
- cluster_type : ClusterType ,
118
112
process_stats : & mut ProcessShredsStats ,
119
113
max_data_shreds_per_slot : u32 ,
120
114
max_code_shreds_per_slot : u32 ,
@@ -145,21 +139,18 @@ impl StandardBroadcastRun {
145
139
} ;
146
140
let shredder =
147
141
Shredder :: new ( slot, parent_slot, reference_tick, self . shred_version ) . unwrap ( ) ;
148
- let merkle_variant = should_use_merkle_variant ( slot, cluster_type) ;
149
142
let ( data_shreds, coding_shreds) = shredder. entries_to_shreds (
150
143
keypair,
151
144
entries,
152
145
is_slot_end,
153
146
next_shred_index,
154
147
next_code_index,
155
- merkle_variant ,
148
+ true , // merkle_variant
156
149
& self . reed_solomon_cache ,
157
150
process_stats,
158
151
) ;
159
- if merkle_variant {
160
- process_stats. num_merkle_data_shreds += data_shreds. len ( ) ;
161
- process_stats. num_merkle_coding_shreds += coding_shreds. len ( ) ;
162
- }
152
+ process_stats. num_merkle_data_shreds += data_shreds. len ( ) ;
153
+ process_stats. num_merkle_coding_shreds += coding_shreds. len ( ) ;
163
154
let next_shred_index = match data_shreds. iter ( ) . map ( Shred :: index) . max ( ) {
164
155
Some ( index) => index + 1 ,
165
156
None => next_shred_index,
@@ -239,15 +230,10 @@ impl StandardBroadcastRun {
239
230
let mut process_stats = ProcessShredsStats :: default ( ) ;
240
231
241
232
let mut to_shreds_time = Measure :: start ( "broadcast_to_shreds" ) ;
242
- let cluster_type = bank. cluster_type ( ) ;
243
233
244
234
// 1) Check if slot was interrupted
245
- let prev_slot_shreds = self . finish_prev_slot (
246
- keypair,
247
- bank. ticks_per_slot ( ) as u8 ,
248
- cluster_type,
249
- & mut process_stats,
250
- ) ;
235
+ let prev_slot_shreds =
236
+ self . finish_prev_slot ( keypair, bank. ticks_per_slot ( ) as u8 , & mut process_stats) ;
251
237
252
238
// 2) Convert entries to shreds and coding shreds
253
239
let is_last_in_slot = last_tick_height == bank. max_tick_height ( ) ;
@@ -259,7 +245,6 @@ impl StandardBroadcastRun {
259
245
blockstore,
260
246
reference_tick as u8 ,
261
247
is_last_in_slot,
262
- cluster_type,
263
248
& mut process_stats,
264
249
blockstore:: MAX_DATA_SHREDS_PER_SLOT as u32 ,
265
250
shred_code:: MAX_CODE_SHREDS_PER_SLOT as u32 ,
@@ -506,13 +491,6 @@ impl BroadcastRun for StandardBroadcastRun {
506
491
}
507
492
}
508
493
509
- fn should_use_merkle_variant ( slot : Slot , cluster_type : ClusterType ) -> bool {
510
- match cluster_type {
511
- ClusterType :: Testnet | ClusterType :: Devnet | ClusterType :: Development => true ,
512
- ClusterType :: MainnetBeta => ( slot % 19 ) < 10 ,
513
- }
514
- }
515
-
516
494
#[ cfg( test) ]
517
495
mod test {
518
496
use {
@@ -596,12 +574,7 @@ mod test {
596
574
run. current_slot_and_parent = Some ( ( 4 , 2 ) ) ;
597
575
598
576
// Slot 2 interrupted slot 1
599
- let shreds = run. finish_prev_slot (
600
- & keypair,
601
- 0 ,
602
- ClusterType :: Devnet ,
603
- & mut ProcessShredsStats :: default ( ) ,
604
- ) ;
577
+ let shreds = run. finish_prev_slot ( & keypair, 0 , & mut ProcessShredsStats :: default ( ) ) ;
605
578
let shred = shreds
606
579
. get ( 0 )
607
580
. expect ( "Expected a shred that signals an interrupt" ) ;
@@ -851,7 +824,6 @@ mod test {
851
824
& blockstore,
852
825
0 ,
853
826
false ,
854
- ClusterType :: Development ,
855
827
& mut stats,
856
828
1000 ,
857
829
1000 ,
@@ -867,7 +839,6 @@ mod test {
867
839
& blockstore,
868
840
0 ,
869
841
false ,
870
- ClusterType :: Development ,
871
842
& mut stats,
872
843
10 ,
873
844
10 ,
0 commit comments