Index: appengine/cmd/dm/mutate/record_completion.go |
diff --git a/appengine/cmd/dm/mutate/record_completion.go b/appengine/cmd/dm/mutate/record_completion.go |
index e3d07b37b58a24da7a2b6fcad41ae8067cedc73d..611cdb53f50831a92a951910454a701dcb176ff2 100644 |
--- a/appengine/cmd/dm/mutate/record_completion.go |
+++ b/appengine/cmd/dm/mutate/record_completion.go |
@@ -21,10 +21,10 @@ const completionLimit = 64 |
// for each incoming dependency that is blocked. |
// |
// In the case where an Attempt has hundreds or thousands of incoming |
-// dependencies, the naieve implementation of this mutation could easily |
-// overfill a single datastore transaction. For that reason, the implementation |
-// here unblocks things 64 edges at a time, and keeps returning itself as a |
-// mutation until it unblocks less than 64 things (e.g. it does a tail-call). |
+// dependencies, the naive implementation of this mutation could easily overfill |
+// a single datastore transaction. For that reason, the implementation here |
+// unblocks things 64 edges at a time, and keeps returning itself as a mutation |
+// until it unblocks less than 64 things (e.g. it does a tail-call). |
// |
// This relies on tumble's tail-call optimization to be performant in terms of |
// the number of transactions, otherwise this would take 1 transaction per |
@@ -33,7 +33,7 @@ const completionLimit = 64 |
// other Attempts to take dependencies on this Attempt while RecordCompletion |
// is in between tail-calls). |
type RecordCompletion struct { |
- For *dm.Attempt_ID `datastore:",noindex"` |
+ For *dm.Attempt_ID |
} |
// Root implements tumble.Mutation. |
@@ -66,10 +66,7 @@ func (r *RecordCompletion) RollForward(c context.Context) (muts []tumble.Mutatio |
for i, bdep := range needProp { |
bdep.Propagated = true |
- muts[i] = &AckFwdDep{ |
- Dep: bdep.Edge(), |
- DepIsFinished: true, |
- } |
+ muts[i] = &AckFwdDep{bdep.Edge()} |
} |
if len(needProp) == completionLimit { |