Uploaded image for project: 'JBoss BPMS Platform'
  1. JBoss BPMS Platform
  2. RHBPMS-1389

Align jBPM KPIs with real values of Database table names

XMLWordPrintable

      When using MySQL DB with Dashbuilder on unix-like system users needs to override the default value of MySQL lower_case_table_names from 0 to 1.

      This needs to be documented.

      Read more about this property in
      https://dev.mysql.com/doc/refman/5.5/en/identifier-case-sensitivity.html

      +++ This bug was initially created as a clone of Bug #1213902 +++

      Description of problem:

      If you check following jBPM KPI queries:
      https://github.com/droolsjbpm/jbpm-dashboard/blob/6.2.x/jbpm-dashboard-modules/jbpm-dashboard-webapp/src/main/webapp/WEB-INF/deployments/jbpmKPIs_v2.kpis

      which we ship out of the box, you'll notice they are all written in lower case.

      However, our DB table names - if created by DDL scripts or even via hibernate schema update feature - are written in camelCase.

      i.e. there is no processinstancelog table, but only ProcessInstanceLog

      Make sure this is aligned in the future releases.

      The problem particularly manifested for MySQL 5.5 database. Following property is to be configured when table names case sensitivity behavior needs to be altered
      https://dev.mysql.com/doc/refman/5.0/en/identifier-case-sensitivity.html

      Here are the default values:

      "On Unix, the default value of lower_case_table_names is 0. On Windows the default value is 1. On OS X, the default value is 2.
      "

      As you can see, if somebody is hosting MySQL DB on a Unix-like server, the default value is 0 - i.e. case sensitive. So, if customer installs BPMS and uses the default MySQL setting following exception will occur:
      http://pastebin.com/RfwSzx3a

      To workaround this issue you need to change this value to 1. This shouldn't be necessary.

      Version-Release number of selected component (if applicable):
      6.1.0

      How reproducible:
      always

      Steps to Reproduce:
      1. Start BPMS with dashbuilder configured with MySQL DB on unix-like system and make sure MySQL is using the default value of lower_case_table_names property, which on unix systems is equal to 0.

      Actual results:

      Exceptions in the log complaining that table can't be found - queries are in lowercase and table names are in camelCase.
      Expected results:
      No exceptions

      Additional info:

      — Additional comment from JBoss Product and Program Management on 2015-04-21 10:10:07 EDT —

      Since this issue was entered in Red Hat Bugzilla, the release flag has been
      set to ? to ensure that it is properly evaluated for this release.

              brms-docs brms-docs brms-docs (Inactive)
              rhn-support-agiertli Anton Giertli
              Jan Hrcek Jan Hrcek (Inactive)
              Linda Snyder Linda Snyder (Inactive)
              Jan Hrcek Jan Hrcek (Inactive)
              brms-docs brms-docs (Inactive), David Gutierrez, Jan Hrcek (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: