summaryrefslogtreecommitdiff
path: root/src/mongo/db/pipeline/value.cpp
diff options
context:
space:
mode:
authorAsya Kamsky <asya999@gmail.com>2017-06-08 11:53:12 -0400
committerCharlie Swanson <charlie.swanson@mongodb.com>2017-06-12 16:40:44 -0400
commit90c32254af51f11aa494bc061f0afe2669c1189d (patch)
treeeea8474d1ae969c70c6ec0117ec5ef585bdd609f /src/mongo/db/pipeline/value.cpp
parent0e4f02db8931419e8c648852daedcb02e97291b8 (diff)
downloadmongo-90c32254af51f11aa494bc061f0afe2669c1189d.tar.gz
SERVER-9406 treat ObjectId type as Date in aggregation date expressions
Closes #1154 Signed-off-by: Charlie Swanson <charlie.swanson@mongodb.com>
Diffstat (limited to 'src/mongo/db/pipeline/value.cpp')
-rw-r--r--src/mongo/db/pipeline/value.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/mongo/db/pipeline/value.cpp b/src/mongo/db/pipeline/value.cpp
index 9c5a4b55987..3ee29adf13c 100644
--- a/src/mongo/db/pipeline/value.cpp
+++ b/src/mongo/db/pipeline/value.cpp
@@ -564,6 +564,9 @@ long long Value::coerceToDate() const {
case bsonTimestamp:
return getTimestamp().getSecs() * 1000LL;
+ case jstOID:
+ return getOid().asDateT().toMillisSinceEpoch();
+
default:
uassert(16006,
str::stream() << "can't convert from BSON type " << typeName(getType())