Same BSON ObjectId is sometimes generated for two different documents when inserts are performed concurrently from different .NET app domains in the same process.
WriteConcern detected an error 'insertDocument :: caused by :: 11000 E11000 duplicate key error index: <colletionname>.$id dup key: { : ObjectId('538c82074141bd10741de97d') }'.
My thoughts:
The ObjectId class appears to not take application domains into account. Using pid, machine name, timestamp, & counter (local to each app domain) is apparently not enough to guarantee uniqueness. Perhaps, app domains should be part of the input.