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

Allow more complex expressions to be specified in partial index document filter

    • Type: Icon: Improvement Improvement
    • Resolution: Unresolved
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Index Maintenance, Querying
    • Labels:
    • Query Optimization

      The 3.1.1 version of partial indexes supports document filters composed using the following query operators:

      • $exists (true only)
      • $gt, $gte, $lt, $lte
      • $eq
      • $type
      • $and (top-level only)

      Users should be able to create partial indexes with more complex expressions for the document filter. We should consider allowing the following:

      • $or
      • $elemMatch
      • $geoWithin
      • 'false' as a value for $exists
      • multiple levels for $and (simple normalization, unless other logical operators introduced)
      • $ne and $not

      Support for $in and $regex is being tracked in SERVER-18884.

            backlog-query-optimization [DO NOT USE] Backlog - Query Optimization
            rassi J Rassi
            39 Vote for this issue
            55 Start watching this issue