Grails
  1. Grails
  2. GRAILS-8433

Behaviour change for locks and/or transactions between 1.3.7 and 2.0.0.RCx

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Critical Critical
    • Resolution: Fixed
    • Affects Version/s: 2.0-RC3
    • Fix Version/s: 2.0.4
    • Component/s: Persistence
    • Labels:
    • Environment:
      MBP
      OS X 10.6

      Description

      There seems to be a change in the way locks and/or transactions work when handling concurrent requests.
      I've created a test app (Bank Of Grails) to demonstrate the issue on both Grails 1.3.7 and Grails 2.0.0.RCx.
      You will need Apache Bench (AB) to test them
      You can get the code from github:
      https://github.com/domiko/bog200 for Grails 2.0.0
      https://github.com/domiko/bog137 for Grails 1.3.7

      Non-generated code is identical in both versions.

      Build the projects and run
      ab -n 1000 -c 100 http://localhost:8080/bog200/teller/randomTransfer
      OR
      ab -n 1000 -c 100 http://localhost:8080/bog137/teller/randomTransfer

      The 1.3.7 version works while the 2.0.0 version throws StaleObjectStateException exceptions.

      Rgds,
      Dominique.

        Issue Links

          Activity

          No work has yet been logged on this issue.

            People

            • Assignee:
              Lari Hotari
              Reporter:
              Dominique Bitau Kongolo
            • Votes:
              2 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:
                Last Reviewed:

                Development