whenAny/whenAll/whenAllSucceed never fulfill returned future if input executor is already shut down

XMLWordPrintableJSON

    • Server Programmability
    • ALL
    • 4
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      For these helper functions, if the input futures are ExecutorFutures but their executor is shut down, the callback inside getAsync won't run, meaning that their returned future will never be resolved, possibly leading to hangs.

      This can be fixed by using unsafeToInlineFuture before calling .getAsync, since the getAsync is only doing minor work like signaling atomics and setting a promise.

            Assignee:
            Unassigned
            Reporter:
            Matthew Saltz (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated: