@@ -78,7 +78,9 @@ TEST_F(SelectivityTests, RangeSelectivityTest) {
78
78
oid_t table_id = table->GetOid ();
79
79
std::string column_name = " test.id" ; // first column
80
80
auto stats_storage = StatsStorage::GetInstance ();
81
- auto table_stats = stats_storage->GetTableStats (db_id, table_id);
81
+ txn = txn_manager.BeginTransaction ();
82
+ auto table_stats = stats_storage->GetTableStats (db_id, table_id, txn);
83
+ txn_manager.CommitTransaction (txn);
82
84
type::Value value1 = type::ValueFactory::GetIntegerValue (nrow / 4 );
83
85
ValueCondition condition{column_name, ExpressionType::COMPARE_LESSTHAN,
84
86
value1};
@@ -91,7 +93,9 @@ TEST_F(SelectivityTests, RangeSelectivityTest) {
91
93
TestingSQLUtil::ExecuteSQLQuery (" ANALYZE test" );
92
94
93
95
// Get updated table stats and check new selectivity
94
- table_stats = stats_storage->GetTableStats (db_id, table_id);
96
+ txn = txn_manager.BeginTransaction ();
97
+ table_stats = stats_storage->GetTableStats (db_id, table_id, txn);
98
+ txn_manager.CommitTransaction (txn);
95
99
double less_than_sel =
96
100
Selectivity::ComputeSelectivity (table_stats, condition);
97
101
ExpectSelectivityEqual (less_than_sel, 0.25 );
@@ -134,8 +138,11 @@ TEST_F(SelectivityTests, LikeSelectivityTest) {
134
138
oid_t table_id = data_table->GetOid ();
135
139
136
140
auto stats_storage = StatsStorage::GetInstance ();
137
- auto table_stats = stats_storage->GetTableStats (db_id, table_id);
138
- table_stats->SetTupleSampler (std::make_shared<TupleSampler>(data_table.get ()));
141
+ txn = txn_manager.BeginTransaction ();
142
+ auto table_stats = stats_storage->GetTableStats (db_id, table_id, txn);
143
+ txn_manager.CommitTransaction (txn);
144
+ table_stats->SetTupleSampler (
145
+ std::make_shared<TupleSampler>(data_table.get ()));
139
146
140
147
type::Value value = type::ValueFactory::GetVarcharValue (" %3" );
141
148
ValueCondition condition1{" test_table.COL_D" , ExpressionType::COMPARE_LIKE,
@@ -179,7 +186,9 @@ TEST_F(SelectivityTests, EqualSelectivityTest) {
179
186
oid_t table_id = table->GetOid ();
180
187
std::string column_name1 = " test.b" ;
181
188
auto stats_storage = StatsStorage::GetInstance ();
182
- auto table_stats = stats_storage->GetTableStats (db_id, table_id);
189
+ txn = txn_manager.BeginTransaction ();
190
+ auto table_stats = stats_storage->GetTableStats (db_id, table_id, txn);
191
+ txn_manager.CommitTransaction (txn);
183
192
184
193
type::Value value1 = type::ValueFactory::GetDecimalValue (1.0 );
185
194
@@ -191,7 +200,9 @@ TEST_F(SelectivityTests, EqualSelectivityTest) {
191
200
192
201
// Run analyze
193
202
TestingSQLUtil::ExecuteSQLQuery (" ANALYZE test" );
194
- table_stats = stats_storage->GetTableStats (db_id, table_id);
203
+ txn = txn_manager.BeginTransaction ();
204
+ table_stats = stats_storage->GetTableStats (db_id, table_id, txn);
205
+ txn_manager.CommitTransaction (txn);
195
206
196
207
// Check selectivity
197
208
// equal, in mcv
@@ -222,7 +233,9 @@ TEST_F(SelectivityTests, EqualSelectivityTest) {
222
233
223
234
// Run analyze
224
235
TestingSQLUtil::ExecuteSQLQuery (" ANALYZE test" );
225
- table_stats = stats_storage->GetTableStats (db_id, table_id);
236
+ txn = txn_manager.BeginTransaction ();
237
+ table_stats = stats_storage->GetTableStats (db_id, table_id, txn);
238
+ txn_manager.CommitTransaction (txn);
226
239
227
240
// Check selectivity
228
241
// equal, not in mcv
@@ -248,4 +261,4 @@ TEST_F(SelectivityTests, EqualSelectivityTest) {
248
261
}
249
262
250
263
} // namespace test
251
- } // namespace peloton
264
+ } // namespace peloton
0 commit comments