Rethink s_outdate_fixmes

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Storage Engines - Foundations
    • None
    • None

      s_outdate_fixmes is a tool we have to notify us by way of evergreen failure that a ticket that referenced a FIXME was closed without the associated FIXME being removed from the codebase.

      This script is a continuous source of frustration and CI-blockers in evergreen. The #1 frustration I have with it is the experience of closing a ticket as "won't do" and an evergreen CI-blocker being created as a result. This experience is broken, closing a ticket in JIRA should have zero impact on our evergreen builders...

      To add to this as we see an increase use of feature branches we have found that the script is incompatible with them. This is tracked in WT-16624, essentially a ticket is merged to the feature branch, closed then re-opened until the feature branch is merged back to develop in order to keep s_outdated_fixmes happy.

      Now I argue that the frustration, CI-blocker and potentially revert creating nature of this script is sufficient to warrant a redesign, or removal of it. Ultimately leaving references to closed JIRAs in our code is bad but the cost of doing so is significantly lower than the cost of this script.

      The main alternative I can think of is that instead of throwing an error, the script, which runs periodically in evergreen should create JIRAs for future resolution. This matches the fix-forward pattern we currently see, as almost no one reverts a ticket due to breaking s_outdate_fixmes and it gives the team or author responsible for closing the ticket sufficient notification that something needs to be cleaned up.

      The other suggested solution: WT-16124 (make s_outdate_fixmes work in PR testing) does not solve for the experience of closing a ticket and creating a CI-blocker, and thus I don't think of it as as high value.

      Side note: with the incoming auto-reverter bot I don't want to see tickets being reverted for simply leaving a reference to a closed ticket in the code.

      Scope:

      • Agree on a new implementation of this tooling
      • Implement it

            Assignee:
            [DO NOT USE] Backlog - Storage Engines Team
            Reporter:
            Luke Pearson
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated: