Uploaded image for project: 'camunda BPM'
  1. camunda BPM
  2. CAM-6452

Set transaction isolation level to READ_COMMITTED on WebLogic

    Details

    • Type: Task
    • Status: Closed
    • Priority: L3 - Default
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 7.6.0, 7.6.0-alpha3
    • Component/s: engine
    • Labels:
      None

      Description

      Set transaction isolation level to READ_COMMITTED on WebLogic

        Issue Links

          Activity

          Hide
          askar.akhmerov Askar Akhmerov added a comment -

          based on https://community.oracle.com/thread/758339?start=0&tstart=0
          value should be set in weblogic-ejb-jar.xml

          https://docs.oracle.com/cd/E24329_01/web.1211/e24973/ejb_jar_ref.htm#EJBPG637
          the value by default corresponds to the database.

          Show
          askar.akhmerov Askar Akhmerov added a comment - based on https://community.oracle.com/thread/758339?start=0&tstart=0 value should be set in weblogic-ejb-jar.xml https://docs.oracle.com/cd/E24329_01/web.1211/e24973/ejb_jar_ref.htm#EJBPG637 the value by default corresponds to the database.
          Hide
          lipphardt Christian Lipphardt added a comment -

          Based on your findings, I had a look at the mysql/mariadb docker container settings. By default, they use the 'transaction-isolation = REPEATABLE-READ' configuration.
          I would rather configure the transaction isolation level on database level instead of fidling with the weblogic-ejb-jar.xml, which is only partly viable because it doesn't cover all paths going to the engine.

          @Daniel Meyer: Should I create issues to configure mysql/mariadb docker images with transaction isolation = READ-COMMITTED ?

          Show
          lipphardt Christian Lipphardt added a comment - Based on your findings, I had a look at the mysql/mariadb docker container settings. By default, they use the 'transaction-isolation = REPEATABLE-READ' configuration. I would rather configure the transaction isolation level on database level instead of fidling with the weblogic-ejb-jar.xml, which is only partly viable because it doesn't cover all paths going to the engine. @ Daniel Meyer : Should I create issues to configure mysql/mariadb docker images with transaction isolation = READ-COMMITTED ?
          Hide
          askar.akhmerov Askar Akhmerov added a comment -

          Christian Lipphardt should we just add it to DB migration scripts then?

          Show
          askar.akhmerov Askar Akhmerov added a comment - Christian Lipphardt should we just add it to DB migration scripts then?
          Hide
          lipphardt Christian Lipphardt added a comment - - edited

          @Askar Akhmerov: We cannot do that with DB migration scripts cos it would only be viable for the session in which the scripts are executed. The user has to configure the isolation level directly on the database daemon. This also only applies to combinations of WebLogic application server + MySQL/MariaDB as the other servers do not hand out the original transaction isolation level setting of the database like WLS does.
          Imho this is a flaw in WLS.
          @Daniel Meyer: Maybe we should just document the behavior and disable the TransactionIsolationLevel Test in surefire-plugin for WLS? DB2/Oracle/PostgreSQL use the correct level.

          For reference - MySQL transaction isolation level

          Show
          lipphardt Christian Lipphardt added a comment - - edited @ Askar Akhmerov : We cannot do that with DB migration scripts cos it would only be viable for the session in which the scripts are executed. The user has to configure the isolation level directly on the database daemon. This also only applies to combinations of WebLogic application server + MySQL/MariaDB as the other servers do not hand out the original transaction isolation level setting of the database like WLS does. Imho this is a flaw in WLS. @ Daniel Meyer : Maybe we should just document the behavior and disable the TransactionIsolationLevel Test in surefire-plugin for WLS? DB2/Oracle/PostgreSQL use the correct level. For reference - MySQL transaction isolation level
          Hide
          sebastian.menski Sebastian Menski added a comment -

          We decided against setting the transaction level in the WLS configuration. Instead we ensure in our test infrastructure that it is set correctly on the database.

          Show
          sebastian.menski Sebastian Menski added a comment - We decided against setting the transaction level in the WLS configuration. Instead we ensure in our test infrastructure that it is set correctly on the database.
          Hide
          sebastian.menski Sebastian Menski added a comment -

          Why did you disable the test on weblogic?
          https://github.com/camunda/camunda-bpm-platform-ee-maintenance/commit/c8f3a411ff62f9dda1537ec0f3874d4275e4c550

          This test should run on all applications servers on all branches.

          Show
          sebastian.menski Sebastian Menski added a comment - Why did you disable the test on weblogic? https://github.com/camunda/camunda-bpm-platform-ee-maintenance/commit/c8f3a411ff62f9dda1537ec0f3874d4275e4c550 This test should run on all applications servers on all branches.
          Hide
          sebastian.menski Sebastian Menski added a comment -

          Hi Askar Akhmerov,

          can you please reenable the test for weblogic on all branches. Thanks.

          I just added the fix version so this ticket is visible on the JIRA board. You don't have to add additional fix versions.

          Show
          sebastian.menski Sebastian Menski added a comment - Hi Askar Akhmerov , can you please reenable the test for weblogic on all branches. Thanks. I just added the fix version so this ticket is visible on the JIRA board. You don't have to add additional fix versions.

            People

            • Assignee:
              sebastian.menski Sebastian Menski
              Reporter:
              askar.akhmerov Askar Akhmerov
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development