@@ -21,7 +21,7 @@ use grovedb_storage::rocksdb_storage::RocksDbStorage;
21
21
use grovedb_version:: version:: GroveVersion ;
22
22
#[ cfg( feature = "full" ) ]
23
23
use itertools:: Itertools ;
24
-
24
+ use grovedb_merk :: merk :: TreeType ;
25
25
use crate :: Element ;
26
26
#[ cfg( feature = "full" ) ]
27
27
use crate :: {
@@ -44,7 +44,7 @@ impl GroveOp {
44
44
propagate : bool ,
45
45
grove_version : & GroveVersion ,
46
46
) -> CostResult < ( ) , Error > {
47
- let in_tree_using_sums = layer_element_estimates. is_sum_tree ;
47
+ let in_tree_type = layer_element_estimates. tree_type ;
48
48
let propagate_if_input = || {
49
49
if propagate {
50
50
Some ( layer_element_estimates)
@@ -53,10 +53,10 @@ impl GroveOp {
53
53
}
54
54
} ;
55
55
match self {
56
- GroveOp :: ReplaceTreeRootKey { sum , .. } => GroveDb :: average_case_merk_replace_tree (
56
+ GroveOp :: ReplaceTreeRootKey { aggregate_data , .. } => GroveDb :: average_case_merk_replace_tree (
57
57
key,
58
58
layer_element_estimates,
59
- sum . is_some ( ) ,
59
+ aggregate_data ,
60
60
propagate,
61
61
grove_version,
62
62
) ,
@@ -119,16 +119,9 @@ impl GroveOp {
119
119
propagate,
120
120
grove_version,
121
121
) ,
122
- GroveOp :: DeleteTree => GroveDb :: average_case_merk_delete_tree (
123
- key,
124
- false ,
125
- layer_element_estimates,
126
- propagate,
127
- grove_version,
128
- ) ,
129
- GroveOp :: DeleteSumTree => GroveDb :: average_case_merk_delete_tree (
122
+ GroveOp :: DeleteTree ( tree_type) => GroveDb :: average_case_merk_delete_tree (
130
123
key,
131
- true ,
124
+ tree_type ,
132
125
layer_element_estimates,
133
126
propagate,
134
127
grove_version,
@@ -142,7 +135,7 @@ impl GroveOp {
142
135
#[ derive( Default ) ]
143
136
pub ( in crate :: batch) struct AverageCaseTreeCacheKnownPaths {
144
137
paths : HashMap < KeyInfoPath , EstimatedLayerInformation > ,
145
- cached_merks : HashMap < KeyInfoPath , IsSumTree > ,
138
+ cached_merks : HashMap < KeyInfoPath , TreeType > ,
146
139
}
147
140
148
141
#[ cfg( feature = "full" ) ]
@@ -167,15 +160,15 @@ impl fmt::Debug for AverageCaseTreeCacheKnownPaths {
167
160
168
161
#[ cfg( feature = "full" ) ]
169
162
impl < G , SR > TreeCache < G , SR > for AverageCaseTreeCacheKnownPaths {
170
- fn insert ( & mut self , op : & QualifiedGroveDbOp , is_sum_tree : bool ) -> CostResult < ( ) , Error > {
163
+ fn insert ( & mut self , op : & QualifiedGroveDbOp , tree_type : TreeType ) -> CostResult < ( ) , Error > {
171
164
let mut average_case_cost = OperationCost :: default ( ) ;
172
165
let mut inserted_path = op. path . clone ( ) ;
173
166
inserted_path. push ( op. key . clone ( ) ) ;
174
167
// There is no need to pay for getting a merk, because we know the merk to be
175
168
// empty at this point.
176
169
// There is however a hash call that creates the prefix
177
170
average_case_cost. hash_node_calls += 1 ;
178
- self . cached_merks . insert ( inserted_path, is_sum_tree ) ;
171
+ self . cached_merks . insert ( inserted_path, tree_type ) ;
179
172
Ok ( ( ) ) . wrap_with_cost ( average_case_cost)
180
173
}
181
174
0 commit comments