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

Unify query operators argument validation

    • Type: Icon: Improvement Improvement
    • Resolution: Unresolved
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Query Execution

      Currently, various MQL operators have different argument validation behaviour. For example:

      1. $bitsAllSet throws FailedToParse when non-integer argument is passed
      2. $mod truncates the argument to long long value

      Various operators regularly cause fuzzer failures because of their parsing logic. For example:

      1. Special values like NaN and Infinity are not handled in $slice (see SERVER-56516)
      2. Rounding behaviour is inconsistent across various data types in $mod (see SERVER-32960)

      We should unify argument validation strategy for various operators to create a consistent user experience.

            Assignee:
            backlog-query-execution [DO NOT USE] Backlog - Query Execution
            Reporter:
            nikita.lapkov@mongodb.com Nikita Lapkov (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated: