Skip to content

Commit d8b77db

Browse files
committed
Do not update parentCollection if the child object has not been modified
fixes issue Meteor-Community-Packages#22
1 parent 3f40ee8 commit d8b77db

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

cache.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,11 @@ Mongo.Collection.prototype.cache = function(options){
112112
childCollection.after.update(function(userId, child, changedFields){
113113
if(_.intersection(changedFields, topFields).length){
114114
let pickedChild = _.pick(child, childFields)
115-
parentCollection.update({[referenceField]:child._id}, {$set:{[cacheField]:pickedChild}}, {multi:true})
115+
// test if the object has been modified
116+
let previousPickedChild = _.pick(this.previous, childFields);
117+
if (!_.isEqual(previousPickedChild, pickedChild)){
118+
parentCollection.update({[referenceField]:child._id}, {$set:{[cacheField]:pickedChild}}, {multi:true})
119+
}
116120
}
117121
})
118122

0 commit comments

Comments
 (0)