summaryrefslogtreecommitdiff
path: root/src/mongo/db/query/ce/generated_histograms_test.cpp
diff options
context:
space:
mode:
authorAlexander Neben <alexander.neben@mongodb.com>2022-12-09 20:16:16 +0000
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2022-12-09 21:35:31 +0000
commitc3d1400b558104f3944b019534097d16f1c61097 (patch)
tree87138c222a926d3f2a541b01ff4cfe91003f7087 /src/mongo/db/query/ce/generated_histograms_test.cpp
parent887a6878ad584a9fcc54087112a4a2b4d39bb32e (diff)
downloadmongo-c3d1400b558104f3944b019534097d16f1c61097.tar.gz
Revert "SERVER-71310 Validate histograms"
This reverts commit ef685370c6e9ad3f169c9330c7b0c306f290a599.
Diffstat (limited to 'src/mongo/db/query/ce/generated_histograms_test.cpp')
-rw-r--r--src/mongo/db/query/ce/generated_histograms_test.cpp54
1 files changed, 26 insertions, 28 deletions
diff --git a/src/mongo/db/query/ce/generated_histograms_test.cpp b/src/mongo/db/query/ce/generated_histograms_test.cpp
index b35ce3478eb..3f5ce361584 100644
--- a/src/mongo/db/query/ce/generated_histograms_test.cpp
+++ b/src/mongo/db/query/ce/generated_histograms_test.cpp
@@ -78,7 +78,7 @@ TEST(EstimatorTest, UniformIntStrEstimate) {
{"kEr", 5, 80, 40}, {"rupc", 6, 44, 21}, {"up1O", 5, 16, 7}, {"ztf", 5, 37, 17}};
const ScalarHistogram hist = createHistogram(data);
- const auto arrHist = ArrayHistogram::make(
+ const ArrayHistogram arrHist(
hist, TypeCounts{{value::TypeTags::NumberInt64, 515}, {value::TypeTags::StringSmall, 485}});
const auto [tagLowStr, valLowStr] = value::makeNewString(""_sd);
@@ -99,7 +99,7 @@ TEST(EstimatorTest, UniformIntStrEstimate) {
// Range query crossing the type brackets.
// Actual cardinality {$gt: 100} = 475.
- expectedCard = estimateCardRange(*arrHist,
+ expectedCard = estimateCardRange(arrHist,
false /* lowInclusive */,
value::TypeTags::NumberInt64,
value::bitcastFrom<int64_t>(100),
@@ -110,7 +110,7 @@ TEST(EstimatorTest, UniformIntStrEstimate) {
ASSERT_APPROX_EQUAL(460.1, expectedCard, kErrorBound);
// Actual cardinality {$lt: 'abc'} = 291.
- expectedCard = estimateCardRange(*arrHist,
+ expectedCard = estimateCardRange(arrHist,
true /* lowInclusive */,
tagLowStr,
valLowStr,
@@ -121,7 +121,7 @@ TEST(EstimatorTest, UniformIntStrEstimate) {
ASSERT_APPROX_EQUAL(319.9, expectedCard, kErrorBound);
// Actual cardinality {$gte: 'abc'} = 194.
- expectedCard = estimateCardRange(*arrHist,
+ expectedCard = estimateCardRange(arrHist,
true /* lowInclusive */,
tagAbc,
valAbc,
@@ -133,11 +133,11 @@ TEST(EstimatorTest, UniformIntStrEstimate) {
// Queries over the low string bound.
// Actual cardinality {$eq: ''} = 0.
- expectedCard = estimateCardEq(*arrHist, tagLowStr, valLowStr, true);
+ expectedCard = estimateCardEq(arrHist, tagLowStr, valLowStr, true);
ASSERT_APPROX_EQUAL(2.727, expectedCard, 0.001);
// Actual cardinality {$gt: ''} = 485.
- expectedCard = estimateCardRange(*arrHist,
+ expectedCard = estimateCardRange(arrHist,
false /* lowInclusive */,
tagLowStr,
valLowStr,
@@ -224,15 +224,13 @@ TEST(EstimatorTest, IntStrArrayEstimate) {
{value::TypeTags::Array, 293}};
TypeCounts arrayTypeCounts{{value::TypeTags::NumberInt64, 874},
{value::TypeTags::StringSmall, 340}};
- const auto arrHist = ArrayHistogram::make(scalarHist,
- typeCounts,
- uniqueHist,
- minHist,
- maxHist,
- arrayTypeCounts,
- 0.0 /* No empty arrays. */,
- 0.0 /* No trues. */,
- 0.0 /* No falses. */);
+ const ArrayHistogram arrHist(scalarHist,
+ typeCounts,
+ uniqueHist,
+ minHist,
+ maxHist,
+ arrayTypeCounts,
+ 0 /* No empty arrays */);
const auto [tagLowDbl, valLowDbl] =
std::make_pair(value::TypeTags::NumberDouble,
@@ -241,7 +239,7 @@ TEST(EstimatorTest, IntStrArrayEstimate) {
value::ValueGuard vgLowStr(tagLowStr, valLowStr);
// Actual cardinality {$lt: 100} = 115.
- double expectedCard = estimateCardRange(*arrHist,
+ double expectedCard = estimateCardRange(arrHist,
false /* lowInclusive */,
tagLowDbl,
valLowDbl,
@@ -252,7 +250,7 @@ TEST(EstimatorTest, IntStrArrayEstimate) {
ASSERT_APPROX_EQUAL(109.9, expectedCard, kErrorBound);
// Actual cardinality {$gt: 502} = 434.
- expectedCard = estimateCardRange(*arrHist,
+ expectedCard = estimateCardRange(arrHist,
false /* lowInclusive */,
value::TypeTags::NumberInt64,
value::bitcastFrom<int64_t>(500),
@@ -263,7 +261,7 @@ TEST(EstimatorTest, IntStrArrayEstimate) {
ASSERT_APPROX_EQUAL(443.8, expectedCard, kErrorBound);
// Actual cardinality {$gte: 502} = 437.
- expectedCard = estimateCardRange(*arrHist,
+ expectedCard = estimateCardRange(arrHist,
true /* lowInclusive */,
value::TypeTags::NumberInt64,
value::bitcastFrom<int64_t>(500),
@@ -274,17 +272,17 @@ TEST(EstimatorTest, IntStrArrayEstimate) {
ASSERT_APPROX_EQUAL(448.3, expectedCard, kErrorBound);
// Actual cardinality {$eq: ''} = 0.
- expectedCard = estimateCardEq(*arrHist, tagLowStr, valLowStr, true /* includeScalar */);
+ expectedCard = estimateCardEq(arrHist, tagLowStr, valLowStr, true /* includeScalar */);
ASSERT_APPROX_EQUAL(6.69, expectedCard, 0.001);
// Actual cardinality {$eq: 'DD2'} = 2.
auto [tagStr, valStr] = value::makeNewString("DD2"_sd);
value::ValueGuard vg(tagStr, valStr);
- expectedCard = estimateCardEq(*arrHist, tagStr, valStr, true /* includeScalar */);
+ expectedCard = estimateCardEq(arrHist, tagStr, valStr, true /* includeScalar */);
ASSERT_APPROX_EQUAL(5.27, expectedCard, kErrorBound);
// Actual cardinality {$lte: 'DD2'} = 120.
- expectedCard = estimateCardRange(*arrHist,
+ expectedCard = estimateCardRange(arrHist,
true /* lowInclusive */,
tagLowStr,
valLowStr,
@@ -297,7 +295,7 @@ TEST(EstimatorTest, IntStrArrayEstimate) {
// Actual cardinality {$gt: 'DD2'} = 450.
auto [tagObj, valObj] = value::makeNewObject();
value::ValueGuard vgObj(tagObj, valObj);
- expectedCard = estimateCardRange(*arrHist,
+ expectedCard = estimateCardRange(arrHist,
false /* lowInclusive */,
tagStr,
valStr,
@@ -312,11 +310,11 @@ TEST(EstimatorTest, IntStrArrayEstimate) {
std::make_pair(value::TypeTags::NumberInt64, value::bitcastFrom<int64_t>(603));
// Actual cardinality {$match: {a: {$elemMatch: {$eq: 603}}}} = 12.
- expectedCard = estimateCardEq(*arrHist, tagInt, valInt, false /* includeScalar */);
+ expectedCard = estimateCardEq(arrHist, tagInt, valInt, false /* includeScalar */);
ASSERT_APPROX_EQUAL(12.0, expectedCard, kErrorBound);
// Actual cardinality {$match: {a: {$elemMatch: {$lte: 603}}}} = 252.
- expectedCard = estimateCardRange(*arrHist,
+ expectedCard = estimateCardRange(arrHist,
false /* lowInclusive */,
tagLowDbl,
valLowDbl,
@@ -327,7 +325,7 @@ TEST(EstimatorTest, IntStrArrayEstimate) {
ASSERT_APPROX_EQUAL(293.0, expectedCard, kErrorBound);
// Actual cardinality {$match: {a: {$elemMatch: {$gte: 603}}}} = 200.
- expectedCard = estimateCardRange(*arrHist,
+ expectedCard = estimateCardRange(arrHist,
true /* lowInclusive */,
tagInt,
valInt,
@@ -339,11 +337,11 @@ TEST(EstimatorTest, IntStrArrayEstimate) {
// Actual cardinality {$match: {a: {$elemMatch: {$eq: 'cu'}}}} = 7.
std::tie(tagStr, valStr) = value::makeNewString("cu"_sd);
- expectedCard = estimateCardEq(*arrHist, tagStr, valStr, false /* includeScalar */);
+ expectedCard = estimateCardEq(arrHist, tagStr, valStr, false /* includeScalar */);
ASSERT_APPROX_EQUAL(3.8, expectedCard, kErrorBound);
// Actual cardinality {$match: {a: {$elemMatch: {$gte: 'cu'}}}} = 125.
- expectedCard = estimateCardRange(*arrHist,
+ expectedCard = estimateCardRange(arrHist,
true /* lowInclusive */,
tagStr,
valStr,
@@ -354,7 +352,7 @@ TEST(EstimatorTest, IntStrArrayEstimate) {
ASSERT_APPROX_EQUAL(109.7, expectedCard, kErrorBound);
// Actual cardinality {$match: {a: {$elemMatch: {$lte: 'cu'}}}} = 141.
- expectedCard = estimateCardRange(*arrHist,
+ expectedCard = estimateCardRange(arrHist,
true /* lowInclusive */,
tagLowStr,
valLowStr,