When subdocuments are added to a property (on the parent) containing a collection of these subdocuments, and then these subdocuments are removed from the parent,the tungus driver fails to remove the last document in the collection.
I tracked the bug down to line 101 in the updater.js module in the applyPull method. It appears that the obj parameter needs to be passed into the "matcher" function "as-is", not wrapped in another object.
The applyPull method only appears to be called when the last subdocument is deleted. All other subdocument deletions are handled by the applySet method.
When subdocuments are added to a property (on the parent) containing a collection of these subdocuments, and then these subdocuments are removed from the parent,the tungus driver fails to remove the last document in the collection.
I tracked the bug down to line 101 in the updater.js module in the applyPull method. It appears that the obj parameter needs to be passed into the "matcher" function "as-is", not wrapped in another object.
The applyPull method only appears to be called when the last subdocument is deleted. All other subdocument deletions are handled by the applySet method.