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

Fix idl_check_compability.py to consider edge cases

    • Query Optimization
    • Fully Compatible
    • ALL
    • v7.3, v7.0
    • 147

      The current version of idl_compatibility_check.py has the following logic. 

      1. we require that we have no more access checks than we did in a previous version
      2. however, we waive this rule for any agg stages that had no privileges defined in the old version and now have privileges in the new version

      This doesn't consider possible edge cases that might occur, and did occur with BF-31911. 

      Possible errors related to feature flag guarded features

      • BF-31911 where a feature is being backported, and the state of an older version is different from the most recent version
      • If a feature adds a stage with an access check continues development across a version branch cut/release, and adds another check later, it should also hit this error.

      Also a possible error

      • If an existing stage went from 0 privileges in one release to > 0 in a new release - it wouldn't error because the stage wouldn't show up in the old version's privileges list

            henri.nikku@mongodb.com Henri Nikku
            erin.zhu@mongodb.com Erin Zhu
            0 Vote for this issue
            10 Start watching this issue