Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-5227

Updates fail when zero-length keys exist

    XMLWordPrintableJSON

Details

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: Minor - P4 Minor - P4
    • None
    • 2.0.3
    • None
    • ALL

    Description

      This was reported in SERVER-2051, but appears to be a bug of its own (although the problem might be masked if the change in that ticket was made):

      > db.left.insert(

      {field1: "whatever", "": null}

      )
      > db.left.update(

      {"field1": "whatever"}

      , {$set: {"field2": "test"}}, false, true)
      LEFT_SUBFIELD only supports Object: not: 10

      On a quick look at the source, it looks like the result of compareDottedFieldNames is incorrect when r is the null string.

      Probably related:

      > db.left.insert(

      {field1: "whatever"}

      )
      > db.left.update(

      {"field1": "whatever"}

      , {$set: {"": "test"}}, false, true)
      ModSet::createNewFromMods - RIGHT_SUBFIELD should be impossible

      Attachments

        Activity

          People

            Unassigned Unassigned
            glenn Glenn Maynard
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: