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

Raise write batch limit to 100,000 ops and prevent oversized errors

    • Type: Icon: Improvement Improvement
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • 3.5.12
    • Affects Version/s: 2.6.0-rc1
    • Component/s: Write Ops
    • Labels:
    • Minor Change
    • Repl 2017-07-31, Repl 2017-08-21

      The batch size limit only exists to prevent issues with oversized error messages. With basic limits, we can avoid these issues and raise the limit.

      • Once we have more than 2 errors and 1MB total error size, truncate remaining error messages to the empty string
      • Raise batch size limit to 100,000 operations.

      Original Title: Sharded write command error objects can exceed 16M

      Original Description:

      With 100 shards and 1000 ops per command each error can be at most ~160 bytes. While the example in the attached script is contrived, I'm sure there are realistic scenarios where this could happen.

      This is the interesting bit of output from running the attached script:

              ***** about to update ***** 
      
      
      
      
       m30028| 2014-03-05T15:56:48.033-0500 [clientcursormon] mem (MB) res:41 virt:323
       m30028| 2014-03-05T15:56:48.033-0500 [clientcursormon]  mapped:160
       m30028| 2014-03-05T15:56:48.033-0500 [clientcursormon]  connections:6
       m30029| 2014-03-05T15:56:48.243-0500 [clientcursormon] mem (MB) res:41 virt:323
       m30029| 2014-03-05T15:56:48.243-0500 [clientcursormon]  mapped:160
       m30029| 2014-03-05T15:56:48.243-0500 [clientcursormon]  connections:6
       m30999| 2014-03-05T15:56:48.380-0500 [conn1] warning: log line attempted (12k) over max size (10k), printing beginning and end ... Assertion: 10334:BSONObj size: 22476895 (0x156F85F) is invalid. Size must be between 0 and 16793600(16MB) First element: 0: { index: 0, code: 65, errInfo: { causedBy: [ { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { in .......... }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }, { index: 0, code: 9, errmsg: "Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" } ] }, errmsg: "multiple errors for op : Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX :: and :: Unknown modifier: $notARealOp..." }
       m30999| 2014-03-05T15:56:48.381-0500 [conn1] 0xc393d6 0xbdd7b6 0xbc9718 0xbc9569 0x6e0271 0xb67f76 0xa48103 0xb1aaa7 0xa722b0 0xb3217f 0xb197b3 0x6dde15 0xbe798a 0x7ff3d6a6b0a2 0x7ff3d607ed1d 
       m30999|  /home/mstearn/10gen/mongo/mongos(_ZN5mongo15printStackTraceERSo+0x26) [0xc393d6]
       m30999|  /home/mstearn/10gen/mongo/mongos(_ZN5mongo10logContextEPKc+0xc6) [0xbdd7b6]
       m30999|  /home/mstearn/10gen/mongo/mongos(_ZN5mongo11msgassertedEiPKc+0x1a8) [0xbc9718]
       m30999|  /home/mstearn/10gen/mongo/mongos() [0xbc9569]
       m30999|  /home/mstearn/10gen/mongo/mongos(_ZNK5mongo7BSONObj14_assertInvalidEv+0x591) [0x6e0271]
       m30999|  /home/mstearn/10gen/mongo/mongos(_ZNK5mongo22BatchedCommandResponse6toBSONEv+0xb86) [0xb67f76]
       m30999|  /home/mstearn/10gen/mongo/mongos(_ZN5mongo15ClusterWriteCmd3runERKSsRNS_7BSONObjEiRSsRNS_14BSONObjBuilderEb+0x323) [0xa48103]
       m30999|  /home/mstearn/10gen/mongo/mongos(_ZN5mongo7Command22execCommandClientBasicEPS0_RNS_11ClientBasicEiPKcRNS_7BSONObjERNS_14BSONObjBuilderEb+0x367) [0xb1aaa7]
       m30999|  /home/mstearn/10gen/mongo/mongos(_ZN5mongo7Command20runAgainstRegisteredEPKcRNS_7BSONObjERNS_14BSONObjBuilderEi+0x130) [0xa722b0]
       m30999|  /home/mstearn/10gen/mongo/mongos(_ZN5mongo8Strategy15clientCommandOpERNS_7RequestE+0x54f) [0xb3217f]
       m30999|  /home/mstearn/10gen/mongo/mongos(_ZN5mongo7Request7processEi+0x3e3) [0xb197b3]
       m30999|  /home/mstearn/10gen/mongo/mongos(_ZN5mongo21ShardedMessageHandler7processERNS_7MessageEPNS_21AbstractMessagingPortEPNS_9LastErrorE+0x65) [0x6dde15]
       m30999|  /home/mstearn/10gen/mongo/mongos(_ZN5mongo17PortMessageServer17handleIncomingMsgEPv+0x3ea) [0xbe798a]
       m30999|  /usr/lib/libpthread.so.0(+0x80a2) [0x7ff3d6a6b0a2]
       m30999|  /usr/lib/libc.so.6(clone+0x6d) [0x7ff3d607ed1d]
      
      
      
              ***** finished update ***** 
      
      
      
      
      12372
      {
              "code" : 10334,
              "ok" : 0,
              "errmsg" : "exception: BSONObj size: 22476895 (0x156F85F) is invalid. Size must be between 0 and 16793600(16MB) First element: 0: { index: 0, code: 65, errInfo: { causedBy: [ { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" }, { index: 0, code: 9, errmsg: \"Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\" } ] }, errmsg: \"multiple errors for op : Unknown modifier: $notARealOperatorXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX :: and :: Unknown modifier: $notARealOp...\" }"
      }
      
      
      
              ***** passed assert ***** 
      

            Assignee:
            mathias@mongodb.com Mathias Stearn
            Reporter:
            mathias@mongodb.com Mathias Stearn
            Votes:
            0 Vote for this issue
            Watchers:
            10 Start watching this issue

              Created:
              Updated:
              Resolved: