Details
Description
On 3.6, a $rename operator applied to a destination field that already exists, and has the same value as the source field, will not update that field. On 3.4, the field type is changed as expected.
db.test.insert({to:NumberLong(100), from:100});
|
db.test.update({},{$rename:{from:"to"}});
|
db.test.findOne()
|
// 3.6: { "to" : NumberLong(100) }
|
// 3.4: { "to" : 100 }
|