Tapestry 5
  1. Tapestry 5
  2. TAP5-2049

Tapestry should provide locking semantics for attributes stored in the session, to prevent multiple simultaneous requests (due to Ajax) from conflicting

    Details

      Description

      Currently, multiple threads may be processing requests, due to Ajax. If they all access state stored in the HttpSession, the rsult can be invalid.

      Tapestry should maintain a lock object inside the session, and automatically acquire a read lock the first time a request thread reads values from the session, and upgrade to a write lock when writing values to the session.

      The lock can be released at the end of the request.

      A reentrant read/write lock may be insufficient, as values inside the session are mutable; it is possible that the lock should be exclusive.

        Issue Links

          Activity

          Jochen Kemnade made changes -
          Link This issue is related to TAP5-2357 [ TAP5-2357 ]
          Howard M. Lewis Ship made changes -
          Link This issue incorporates TAP5-2037 [ TAP5-2037 ]
          Howard M. Lewis Ship made changes -
          Field Original Value New Value
          Status Open [ 1 ] Closed [ 6 ]
          Assignee Howard M. Lewis Ship [ hlship ]
          Fix Version/s 5.4 [ 12316401 ]
          Resolution Fixed [ 1 ]
          Howard M. Lewis Ship created issue -

            People

            • Assignee:
              Howard M. Lewis Ship
              Reporter:
              Howard M. Lewis Ship
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development