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

History Authorization Query Performance Degradation

    Details

    • Type: Bug Report
    • Status: Closed
    • Priority: L2 - Critical
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 7.6.0, 7.6.0-alpha3
    • Component/s: engine
    • Labels:
      None

      Description

      Problem

      The time to run the HistoryAuthorizationQueryPerformanceTest changed from 8 seconds to over 5 minutes since yesterday. See corresponding Jenkins build

      h5 AT

      • investigate the performance degradation and improve execution times

      h5 Hints

      Maybe related to these two commits:

        Issue Links

          Activity

          Hide
          sebastian.menski Sebastian Menski added a comment -

          Hi Christopher Zell and Daniel Meyer,

          do you think this can be related to the linked changes from yesterday?

          Cheers,
          Sebastian

          Show
          sebastian.menski Sebastian Menski added a comment - Hi Christopher Zell and Daniel Meyer , do you think this can be related to the linked changes from yesterday? Cheers, Sebastian
          Show
          sebastian.menski Sebastian Menski added a comment - It seems that it also slightly increases the build time of h2 and mysql: https://hq2.camunda.com/jenkins/ci/view/Performance/job/7.6-platform-query-performance-h2/lastBuild/performance/ https://hq2.camunda.com/jenkins/ci/view/Performance/job/7.6-platform-query-performance-mysql-56/lastBuild/performance/ But slightly decreases the build time of mariadb and sqlserver: https://hq2.camunda.com/jenkins/ci/view/Performance/job/7.6-platform-query-performance-sqlserver-2012/lastBuild/performance/ https://hq2.camunda.com/jenkins/ci/view/Performance/job/7.6-platform-query-performance-mariadb-100/lastBuild/performance/
          Hide
          christopher.zell Christopher Zell added a comment -

          Hey Sebastian Menski,

          It is very likely that this problem corresponds to the PR and the changes. I will look into this. Is it possble to execute the performance test on a local machine?

          Show
          christopher.zell Christopher Zell added a comment - Hey Sebastian Menski , It is very likely that this problem corresponds to the PR and the changes. I will look into this. Is it possble to execute the performance test on a local machine?
          Hide
          sebastian.menski Sebastian Menski added a comment -

          Yes in the directory camunda-bpm-platform/qa/performance-tests-engine/ you can run mvn clean test -Ppostgresql,generate-load,query-perf-test -DloadGenerator.numberOfIterations=50000 with the database settings like the unit test suite. You can also decrease the numberOfIterations to reduce the number of instances started, the difference should still be visible.

          Show
          sebastian.menski Sebastian Menski added a comment - Yes in the directory camunda-bpm-platform/qa/performance-tests-engine/ you can run mvn clean test -Ppostgresql,generate-load,query-perf-test -DloadGenerator.numberOfIterations=50000 with the database settings like the unit test suite. You can also decrease the numberOfIterations to reduce the number of instances started, the difference should still be visible.
          Hide
          meyer Daniel Meyer added a comment -

          Christopher Zell this is what I meant yesterday: that we did the inner subselect for performance but I could not remember for sure.

          Show
          meyer Daniel Meyer added a comment - Christopher Zell this is what I meant yesterday: that we did the inner subselect for performance but I could not remember for sure.
          Hide
          christopher.zell Christopher Zell added a comment -

          Alright, thanks Sebastian Menski

          Hey Daniel Meyer, yeah this was the same thing i thought in the morning

          Show
          christopher.zell Christopher Zell added a comment - Alright, thanks Sebastian Menski Hey Daniel Meyer , yeah this was the same thing i thought in the morning
          Hide
          christopher.zell Christopher Zell added a comment - - edited

          Current state on master, execution with 50000 instances:

          [INFO] ------------------------------------------------------------------------
          [INFO] BUILD SUCCESS
          [INFO] ------------------------------------------------------------------------
          [INFO] Total time: 03:54 min
          [INFO] Finished at: 2016-08-02T08:47:11+02:00
          [INFO] Final Memory: 75M/245M
          [INFO] ------------------------------------------------------------------------
          

          Reverting the commit d815af4ae3affe7879071c21eb7b793411b79dd4 , execution with 50000 instances:

          [INFO] ------------------------------------------------------------------------
          [INFO] BUILD SUCCESS
          [INFO] ------------------------------------------------------------------------
          [INFO] Total time: 01:56 min
          [INFO] Finished at: 2016-08-02T08:50:44+02:00
          [INFO] Final Memory: 65M/243M
          [INFO] ------------------------------------------------------------------------
          

          And also reverting 5f2f15a63b671fe49dac5f15125ae749ecf65a94 , execution with 50000 instances:

          [INFO] ------------------------------------------------------------------------
          [INFO] BUILD SUCCESS
          [INFO] ------------------------------------------------------------------------
          [INFO] Total time: 01:56 min
          [INFO] Finished at: 2016-08-02T08:53:41+02:00
          [INFO] Final Memory: 74M/238M
          [INFO] ------------------------------------------------------------------------
          

          So Sebastian Menski, Daniel MeyerI will definitive revert d815af4ae3affe7879071c21eb7b793411b79dd4 , but what is about the PR?

          Cheers,

          Chris

          Show
          christopher.zell Christopher Zell added a comment - - edited Current state on master, execution with 50000 instances: [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 03:54 min [INFO] Finished at: 2016-08-02T08:47:11+02:00 [INFO] Final Memory: 75M/245M [INFO] ------------------------------------------------------------------------ Reverting the commit d815af4ae3affe7879071c21eb7b793411b79dd4 , execution with 50000 instances: [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 01:56 min [INFO] Finished at: 2016-08-02T08:50:44+02:00 [INFO] Final Memory: 65M/243M [INFO] ------------------------------------------------------------------------ And also reverting 5f2f15a63b671fe49dac5f15125ae749ecf65a94 , execution with 50000 instances: [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 01:56 min [INFO] Finished at: 2016-08-02T08:53:41+02:00 [INFO] Final Memory: 74M/238M [INFO] ------------------------------------------------------------------------ So Sebastian Menski , Daniel Meyer I will definitive revert d815af4ae3affe7879071c21eb7b793411b79dd4 , but what is about the PR? Cheers, Chris
          Hide
          sebastian.menski Sebastian Menski added a comment -

          I'm not sure if there are even Tests for historic decision instances. I would guess that there are none. So you cannot see the impact of the PR.

          Show
          sebastian.menski Sebastian Menski added a comment - I'm not sure if there are even Tests for historic decision instances. I would guess that there are none. So you cannot see the impact of the PR.
          Hide
          langfr Frank Langelage added a comment -

          There is a unit test using HistoricDecisionInstance which was failing for me and the reason to create the PR. See https://app.camunda.com/jira/browse/CAM-6495.
          qa/integration-tests-engine/src/test/java/org/camunda/bpm/integrationtest/functional/dmn/DmnHistoryTest.java also uses HistoricDecisionInstance.
          Don't know if it's using Authorization and is therefore touched by my PR.

          Show
          langfr Frank Langelage added a comment - There is a unit test using HistoricDecisionInstance which was failing for me and the reason to create the PR. See https://app.camunda.com/jira/browse/CAM-6495 . qa/integration-tests-engine/src/test/java/org/camunda/bpm/integrationtest/functional/dmn/DmnHistoryTest.java also uses HistoricDecisionInstance. Don't know if it's using Authorization and is therefore touched by my PR.

            People

            • Assignee:
              sebastian.menski Sebastian Menski
              Reporter:
              sebastian.menski Sebastian Menski
            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: