Det är inte så mycket en bugg som ett fall av ouppfyllda förväntningar. Endast toppnivån _id tilldelas automatiskt ett värde. Alla inbäddade _ids bör tilldelas värden av klientkoden (använd ObjectId.GenerateNewId). Det är också möjligt att du inte ens behöver ett ObjectId i klassen Address (vad är syftet med det?).