Skip to content

Commit 049e1bf

Browse files
Add realtime freshness to bulk update api (#217)
1 parent 23a9656 commit 049e1bf

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

document-store/src/main/java/org/hypertrace/core/documentstore/mongo/update/MongoUpdateExecutor.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package org.hypertrace.core.documentstore.mongo.update;
22

3+
import static org.hypertrace.core.documentstore.model.options.DataFreshness.REALTIME_FRESHNESS;
34
import static org.hypertrace.core.documentstore.model.options.ReturnDocumentType.NONE;
45
import static org.hypertrace.core.documentstore.mongo.MongoUtils.getReturnDocument;
56
import static org.hypertrace.core.documentstore.mongo.query.parser.MongoFilterTypeExpressionParser.getFilter;
@@ -19,6 +20,7 @@
1920
import org.hypertrace.core.documentstore.commons.CommonUpdateValidator;
2021
import org.hypertrace.core.documentstore.commons.UpdateValidator;
2122
import org.hypertrace.core.documentstore.model.config.ConnectionConfig;
23+
import org.hypertrace.core.documentstore.model.options.QueryOptions;
2224
import org.hypertrace.core.documentstore.model.options.ReturnDocumentType;
2325
import org.hypertrace.core.documentstore.model.options.UpdateOptions;
2426
import org.hypertrace.core.documentstore.model.options.UpdateOptions.MissingDocumentStrategy;
@@ -106,13 +108,17 @@ public Optional<MongoCursor<BasicDBObject>> bulkUpdate(
106108

107109
switch (returnDocumentType) {
108110
case BEFORE_UPDATE:
109-
cursor = queryExecutor.aggregate(query);
111+
cursor =
112+
queryExecutor.aggregate(
113+
query, QueryOptions.builder().dataFreshness(REALTIME_FRESHNESS).build());
110114
logAndUpdate(filter, updateObject, mongoUpdateOptions);
111115
return Optional.of(cursor);
112116

113117
case AFTER_UPDATE:
114118
logAndUpdate(filter, updateObject, mongoUpdateOptions);
115-
cursor = queryExecutor.aggregate(query);
119+
cursor =
120+
queryExecutor.aggregate(
121+
query, QueryOptions.builder().dataFreshness(REALTIME_FRESHNESS).build());
116122
return Optional.of(cursor);
117123

118124
case NONE:

0 commit comments

Comments
 (0)