Uploaded image for project: '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

    XMLWordPrintableJSON

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.

      Attachments

        Issue Links

          Activity

            People

              hlship Howard Lewis Ship
              hlship Howard Lewis Ship
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: