Possible to create docs with dotted field names

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Duplicate
    • Priority: Major - P3
    • None
    • Affects Version/s: 2.5.0
    • Component/s: Internal Client, Write Ops
    • None
    • ALL
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      conn.update("test.user", BSON("y" << 1), BSON("x" << BSON("a.b" << 1)), true);
      conn.insert("test.user", BSON("x" << BSON("y.z" << 3)));
      

      And end up with a field you cannot refer to on its own:

      > db.user.find()
      { "_id" : ObjectId("51c85fc622cbaa0259719bca"), "x" : { "a.b" : 1 } }
      { "_id" : ObjectId("51c8627822cbaa0259719bcb"), "x" : { "y.z" : 3 } }
      
      > db.user.find({ 'x.a.b': 1 })
      > db.user.find({ x: { 'a.b': 1 }})
      { "_id" : ObjectId("51c85fc622cbaa0259719bca"), "x" : { "a.b" : 1 } }
      

      Note: Currently, some drivers already have checks to prevent user from doing this (test on the mongo shell and Ruby driver). Might also want to consider adding the check on the server.

              Assignee:
              Unassigned
              Reporter:
              Randolph Tan
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: