Uploaded image for project: 'Infinispan'
  1. Infinispan
  2. ISPN-2008

Optimistic concurrency in REST server is not using atomic operations

    XMLWordPrintable

Details

    Description

      The REST server's optimistic currency control is not atomic. The sequence in e.g. a PUT request goes like this:

      • request.evaluatePreconditions
      • cache.put (if preconditions met)

      Which is not inside any lock (that would make it pessimistic, anyway), in other words, a race condition.

      This applies to the optimistic variants, i.e. requests carrying 'If-Match' or any of the other 'If-*' preconditions, of PUT, POST, and DELETE requests.

      Attachments

        Activity

          People

            gzamarre Galder Zamarreño
            eugendueck_jira Eugen Dück (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: