diff options
Diffstat (limited to 'src/mongo/db/exec/document_value/value.cpp')
| -rw-r--r-- | src/mongo/db/exec/document_value/value.cpp | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/src/mongo/db/exec/document_value/value.cpp b/src/mongo/db/exec/document_value/value.cpp index 616efb2128a..248514180f0 100644 --- a/src/mongo/db/exec/document_value/value.cpp +++ b/src/mongo/db/exec/document_value/value.cpp @@ -45,7 +45,6 @@ #include "mongo/db/query/datetime/date_time_support.h" #include "mongo/platform/decimal128.h" #include "mongo/util/hex.h" -#include "mongo/util/murmur3.h" #include "mongo/util/represent_as.h" #include "mongo/util/str.h" @@ -936,7 +935,7 @@ void Value::hash_combine(size_t& seed, case Code: case Symbol: { StringData sd = getRawData(); - seed = murmur3<sizeof(size_t)>(sd, seed); + MurmurHash3_x86_32(sd.rawData(), sd.size(), seed, &seed); break; } @@ -945,7 +944,7 @@ void Value::hash_combine(size_t& seed, if (stringComparator) { stringComparator->hash_combine(seed, sd); } else { - seed = murmur3<sizeof(size_t)>(sd, seed); + MurmurHash3_x86_32(sd.rawData(), sd.size(), seed, &seed); } break; } @@ -969,14 +968,14 @@ void Value::hash_combine(size_t& seed, case BinData: { StringData sd = getRawData(); - seed = murmur3<sizeof(size_t)>(sd, seed); + MurmurHash3_x86_32(sd.rawData(), sd.size(), seed, &seed); boost::hash_combine(seed, _storage.binDataType()); break; } case RegEx: { StringData sd = getRawData(); - seed = murmur3<sizeof(size_t)>(sd, seed); + MurmurHash3_x86_32(sd.rawData(), sd.size(), seed, &seed); break; } @@ -1254,17 +1253,14 @@ ostream& operator<<(ostream& out, const Value& val) { verify(false); } -Value Value::shred() const { +void Value::fillCache() const { if (isObject()) { - return Value(getDocument().shred()); + getDocument().fillCache(); } else if (isArray()) { - std::vector<Value> values; for (auto&& val : getArray()) { - values.push_back(val.shred()); + val.fillCache(); } - return Value(values); } - return Value(*this); } void Value::serializeForSorter(BufBuilder& buf) const { |
