Uploaded image for project: 'Documentation'
  1. Documentation
  2. DOCS-13846

Investigate changes in SERVER-26726: Check number of arguments for createIndex() and throw error if more than two arguments

    XMLWordPrintableJSON

Details

    Description

      Description

      Downstream Change Summary

      Added validation of number of arguments for shell functions ensureIndex, createIndex and createIndexes. Arguments handling or functions behaviour is not changed.

      Description of Linked Ticket

      If a third argument is passed to the ensureIndex() with valid options, then the behavior is to ignore the third argument instead of an error. So for example, if I execute the following

      db.myColl.ensureIndex( { my_date: 1}, {expireAfterSeconds: 2678400},{background: true, sparse: true } ) 
      

      the third argument which is critical to the purpose of this index build is completely ignored and the index is built in the foreground with no sparse option. This can lead to catastrophic events if myColl is very large and foreground index was not a choice. Can this be fixed so a user is not punished for accidentally passing the critical options as a third argument in the index build? The version we tried this is 3.2.9

      Scope of changes

      Impact to Other Docs

      MVP (Work and Date)

      Resources (Scope or Design Docs, Invision, etc.)

      Attachments

        Issue Links

          Activity

            People

              dave.cuthbert@mongodb.com Dave Cuthbert
              backlog-server-pm Backlog - Core Eng Program Management Team
              Jess Mokrzecki Jess Mokrzecki
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:
                2 years, 18 weeks, 2 days ago