{"macID" : {$in : [1,2]}} nie oznacza, że przeszukujesz dwa dokumenty (z "macID" : 1 i "macID" : 2 ), oznacza to, że przeszukujesz dowolne dokumenty, które mają macID równe 1 lub 2 .
Więc upsert: true mówi MongoDB, aby utworzył tylko jeden dokument (nie dwa).
Musisz dostarczyć wiele żądań aktualizacji (użyj bulkWrite
z updateOne nie updateMany ).