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

The data type of a value is causing error: { "$err" : "requested keyPattern does not match specified keys", "code" : 10365 }

    • Type: Icon: Bug Bug
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: 2.0.2, 2.2.2
    • Component/s: Querying
    • Labels:
      None
    • ALL
    • Hide

      Please see description

      Show
      Please see description

      > db.challenge_157_daily_scores.find().hint(
      ...

      { ... g:1, ... d:-1, ... s:-1, ... i:1, ... t:1 ... }

      ).sort(
      ...

      { ... g:1, ... d:-1, ... s:-1, ... i:1, ... t:1 ... }

      )._addSpecial('$returnKey',true).min(
      ...

      { ... g: 1, ... d: ISODate("2013-03-07T00:00:00Z"), ... s: 2000, ... i: 1, ... t: 'u' ... }

      ).max(
      ... {
      ... "g" : 1,
      ... "d" : 1,
      ... "s" :

      { ... "$minElement" : 1 ... }

      ,
      ... "i" :

      { ... "$maxElement" : 1 ... }

      ,
      ... "t" :

      { ... "$maxElement" : 1 ... }

      ... }
      ... );

      { "g" : 1, "d" : ISODate("2013-03-07T00:00:00Z"), "s" : 1719, "i" : 24579031, "t" : "u" } { "g" : 1, "d" : ISODate("2013-03-07T00:00:00Z"), "s" : 1472, "i" : 24579049, "t" : "u" } { "g" : 1, "d" : ISODate("2013-03-07T00:00:00Z"), "s" : 1298, "i" : 24579022, "t" : "u" } { "g" : 1, "d" : ISODate("2013-03-07T00:00:00Z"), "s" : 1228, "i" : 24579013, "t" : "u" } { "g" : 1, "d" : ISODate("2013-03-07T00:00:00Z"), "s" : 1159, "i" : 24579033, "t" : "u" } { "g" : 1, "d" : ISODate("2013-03-07T00:00:00Z"), "s" : 814, "i" : 24579045, "t" : "u" } { "g" : 1, "d" : ISODate("2013-03-07T00:00:00Z"), "s" : 747, "i" : 24579014, "t" : "u" } { "g" : 1, "d" : ISODate("2013-03-07T00:00:00Z"), "s" : 487, "i" : 24579032, "t" : "u" } { "g" : 1, "d" : ISODate("2013-03-07T00:00:00Z"), "s" : 412, "i" : 24579038, "t" : "u" } { "g" : 1, "d" : ISODate("2013-03-07T00:00:00Z"), "s" : 164, "i" : 24579019, "t" : "u" } { "g" : 1, "d" : ISODate("2013-03-06T00:00:00Z"), "s" : 1555, "i" : 24579047, "t" : "u" } { "g" : 1, "d" : ISODate("2013-03-06T00:00:00Z"), "s" : 1317, "i" : 24579029, "t" : "u" } { "g" : 1, "d" : ISODate("2013-03-05T00:00:00Z"), "s" : 1998, "i" : 24579013, "t" : "u" } { "g" : 1, "d" : ISODate("2013-03-05T00:00:00Z"), "s" : 1882, "i" : 24579008, "t" : "u" } { "g" : 1, "d" : ISODate("2013-03-05T00:00:00Z"), "s" : 1654, "i" : 24579032, "t" : "u" } { "g" : 1, "d" : ISODate("2013-03-05T00:00:00Z"), "s" : 1533, "i" : 24579036, "t" : "u" } { "g" : 1, "d" : ISODate("2013-03-05T00:00:00Z"), "s" : 1333, "i" : 24579052, "t" : "u" } { "g" : 1, "d" : ISODate("2013-03-05T00:00:00Z"), "s" : 1219, "i" : 24579019, "t" : "u" } { "g" : 1, "d" : ISODate("2013-03-05T00:00:00Z"), "s" : 1047, "i" : 24579015, "t" : "u" } { "g" : 1, "d" : ISODate("2013-03-05T00:00:00Z"), "s" : 782, "i" : 24579043, "t" : "u" }

      Looks good!

      > db.challenge_157_daily_scores.find().hint(
      ...

      { ... g:1, ... d:-1, ... s:-1, ... i:1, ... t:1 ... }

      ).sort(
      ...

      { ... g:1, ... d:-1, ... s:-1, ... i:1, ... t:1 ... }

      )._addSpecial('$returnKey',true).min(
      ...

      { ... g: 1, ... d: ISODate("2013-03-07T00:00:00Z"), ... s: 2000, ... i: 1, ... t: 'u' ... }

      ).max(
      ... {
      ... "g" : 1,
      ... "d" : ISODate("2013-03-07T00:00:00Z"),
      ... "s" :

      { ... "$minElement" : 1 ... }

      ,
      ... "i" :

      { ... "$maxElement" : 1 ... }

      ,
      ... "t" :

      { ... "$maxElement" : 1 ... }

      ... }
      ... );
      error: {
      "$err" : "requested keyPattern does not match specified keys",
      "code" : 10365
      }

      Changing d from an integer (1) to an ISODate shouldn't affect the keyPattern.

            Assignee:
            aaron Aaron Staple
            Reporter:
            carl.youngblood Carl Youngblood
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: