Uploaded image for project: 'Spymemcached Java Client'
  1. Spymemcached Java Client
  2. SPY-149

Bad interactions between async operations and ListenableFuture

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 2.10.3
    • Fix Version/s: 2.10.4
    • Component/s: library
    • Security Level: Public
    • Labels:
      None

      Description

      It seems that when a ListenableFuture has callbacks, when an operation is complete, the callbacks are executed before the Future's countdown latch is released.

      As ListenableFuture callbacks can only interact with the Future itself, it can cause some weird stuff like the future isn't done or canceled but the callback is executed because the get(), isDone(), isCancelled() methods often rely on the countdown latch to work.

      It is particularly true for BulkGetFuture.

        Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

            • Assignee:
              daschl Michael Nitschinger
              Reporter:
              mathieu.ancelin mathieu.ancelin
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Gerrit Reviews

                There are no open Gerrit changes