Allow command documents to exceed maxBsonObjectSize

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Done
    • Priority: Major - P3
    • 3.0.0
    • Affects Version/s: None
    • Component/s: Command Operations
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Several commands, e.g. findAndModify, may be used to insert or replace a document that is up to the exact 16MB max BSON object size. MongoDB servers allow this, and therefore should be allowed by the driver for.

      Currently however the extra surrounding "envelope" bytes of the message cause the total payload size to exceed 16MB, tripping the OutMessage validation.

      Example stack trace:

      com.mongodb.MongoInternalException: DBObject of size 16777340 is over Max BSON size 16777216
          at com.mongodb.OutMessage.putObject(OutMessage.java:291)
          at com.mongodb.OutMessage.writeQuery(OutMessage.java:211)
          at com.mongodb.OutMessage.query(OutMessage.java:84)
          at com.mongodb.DBApiLayer$MyCollection.__find(DBApiLayer.java:285)
          at com.mongodb.DB.command(DB.java:262)
          at com.mongodb.DB.command(DB.java:229)
          at com.mongodb.DB.command(DB.java:214)
          ...
      

            Assignee:
            Jeffrey Yemin
            Reporter:
            Jeffrey Yemin
            None
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: