sort by array element is incorrect under sharding environment

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Duplicate
    • Priority: Major - P3
    • None
    • Affects Version/s: 2.2.2
    • Component/s: Querying, Sharding
    • Environment:
      centos 6.3
    • ALL
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None

      the document is like the following:

      {A:1, B:[{C:1, D:1}]}
      {A:1, B:[{C:5, D:2}]}
      

      my sort command is like:

      db.xxx.find().sort({B.C:1})
      

      it works well under single server mode, but the result may not be properly sorted under shard environment.

      it seems the mongos only fetchs data from one sharded node serially, for exmpale:
      shard1:

      {A:1, B:[{C:4, D:1}]}
      {A:1, B:[{C:5, D:2}]}
      

      shard2:

      {A:1, B:[{C:1, D:1}]}
      {A:1, B:[{C:2, D:2}]}
      

      after db.xxx.find().sort({B.C:1}), it returns like:

      {A:1, B:[{C:4, D:1}]}
      {A:1, B:[{C:5, D:2}]}
      {A:1, B:[{C:1, D:1}]}
      {A:1, B:[{C:2, D:2}]}
      

      I'm not sure if it's the similar bug of https://jira.mongodb.org/browse/SERVER-6118, since it's on array element while 6118 is on non-array element.

            Assignee:
            Unassigned
            Reporter:
            mongodbtudou
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: