Database
[{_id:1,objects:[{prop_1:"...",foo:"a"},{prop_1:"...",foo:"a"},{prop_1:"..."}]},{_id:2,objects:[{prop_1:"...",foo:"a"},{prop_1:"...",foo:"a"},{prop_1:"..."}]},{_id:3,objects:[{prop_1:"...",foo:"a"},{prop_1:"...",foo:"a"},{prop_1:"...",foo:"a"}]}]
Query
db.collection.aggregate([{$match:{$expr:{$eq:[{$size:"$objects"},{$size:{$filter:{input:"$objects",cond:{$eq:["$$this.foo","a"]}}}}]}}}])