Uploaded image for project: 'Marathon'
  1. Marathon
  2. MARATHON-7541

Dangerous dead-lock prone method in Marathon

    Details

    • Sprint:
      Marathon Sprint 1.10-6, Marathon Sprint 1.10-7
    • Story Points:
      1

      Description

      In Lock.scala, we have a method that can easily deadlock in the following scenario given lock a and lock b:

          Future { a == b }
          Future { b == a }
      

      This method cannot / should not be fixed. As a preemptive measure we should remove the logic and make it very obvious when attempts to use it are made. Then, we should rewrite the attempts to carefully unlock the values as needed, taking care to keep a consistent order of access.

      Once we are sure the method is no longer used, we can simply remove it at revert back to Java's default compare behavior of comparing identity.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                tharper Tim Harper
                Reporter:
                tharper Tim Harper
                Team:
                Orchestration Team
                Watchers:
                Marco Monaco, Tim Harper
              • Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: