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

Long number handling

    • Type: Icon: Bug Bug
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: 2.6.3
    • Component/s: Shell, Storage
    • Labels:
      None
    • ALL
    • Hide

      insert fairy large numbers in a collection, query for them.

      Show
      insert fairy large numbers in a collection, query for them.

      mongos> db.user.find({session: 100000000000068636})
      { "_id" : NumberLong("1000000000066536"), "shop" : 144, "session" : [ NumberLong("100000000000068635") ] }
      { "_id" : NumberLong("1000000000066546"), "shop" : 145, "session" : [ NumberLong("100000000000068645") ] }
      { "_id" : NumberLong("1000000000066537"), "shop" : 142, "session" : [ NumberLong("100000000000068636") ], "email" : "test@gmail.com" }
      { "_id" : NumberLong("1000000000066540"), "shop" : 143, "session" : [ NumberLong("100000000000068639") ] }
      { "_id" : NumberLong("1000000000066541"), "shop" : 143, "session" : [ NumberLong("100000000000068640") ] }
      { "_id" : NumberLong("1000000000066545"), "shop" : 145, "session" : [ NumberLong("100000000000068644") ] }
      { "_id" : NumberLong("1000000000066548"), "shop" : 144, "session" : [ NumberLong("100000000000068647") ] }
      { "_id" : NumberLong("1000000000066534"), "shop" : 144, "session" : [ NumberLong("100000000000068633") ] }
      { "_id" : NumberLong("1000000000066542"), "shop" : 144, "session" : [ NumberLong("100000000000068641") ] }
      { "_id" : NumberLong("1000000000066535"), "shop" : 144, "session" : [ NumberLong("100000000000068634") ] }
      { "_id" : NumberLong("1000000000066538"), "shop" : 144, "session" : [ NumberLong("100000000000068637") ] }
      { "_id" : NumberLong("1000000000066533"), "shop" : 144, "session" : [ NumberLong("100000000000068632") ] }
      { "_id" : NumberLong("1000000000066539"), "shop" : 144, "session" : [ NumberLong("100000000000068638") ] }
      { "_id" : NumberLong("1000000000066544"), "shop" : 144, "session" : [ NumberLong("100000000000068643") ] }
      { "_id" : NumberLong("1000000000066543"), "shop" : 144, "session" : [ NumberLong("100000000000068642") ] }
      

      versus

      mongos> db.user.find({session: NumberLong("100000000000068636") })
      { "_id" : NumberLong("1000000000066537"), "shop" : 142, "session" : [ NumberLong("100000000000068636") ], "email" : "test@gmail.com" }
      

      Although i figured out that i was calling it wrong in the first case, i can't possibly imagine what is happening behind the scenes in the first case. How can it possibly work that way? The session field isn't indexed and we run a pretty big cluster.

            Assignee:
            Unassigned Unassigned
            Reporter:
            tudor_alexandru Tudor Alexandru
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: