Data collector significantly slower in Paris when indicator has conditions and dot-walk on extended tables (i. e. cmdb_ci)


Description

The data collection jobs are taking substantially longer runtime in the Paris version, even ten times longer, when the indicator conditions are set on tables with numerous extended tables (i. e. cmdb_ci) and dot walk to its extended table.

Steps to Reproduce

1) Create a table test_slow_da_filter, containing the field cmdb_ci referring to the cmcb_ci table.

2) Populate 10000 records with cmdb_ci = "b4fd7c8437201000deeabfc8bcbe5dc1" with a script or Java snippet.

3) Create an indicator source on test_slow_da_filter without any condition.

4) Create an indicator on above source, with conditions set as below, and all other fields default:
cmdb_ci.ref_cmdb_ci_appl.change_controlISNOTEMPTY^ORcmdb_ci.ref_cmdb_ci_appl.assignment_groupISNOTEMPTY^ORcmdb_ci.ref_cmdb_ci_appl.attested_byISNOTEMPTY^ORcmdb_ci.ref_cmdb_ci_appl.companyISNOTEMPTY^ORcmdb_ci.ref_cmdb_ci_appl.cost_centerISNOTEMPTY^ORcmdb_ci.ref_cmdb_ci_appl.departmentISNOTEMPTY^ORcmdb_ci.sys_domainISNOTEMPTY^ORcmdb_ci.ref_cmdb_ci_appl.locationISNOTEMPTY^ORcmdb_ci.ref_cmdb_ci_appl.managed_byISNOTEMPTY^ORcmdb_ci.ref_cmdb_ci_appl.owned_byISNOTEMPTY^ORcmdb_ci.ref_cmdb_ci_appl.assigned_toISEMPTY^EQ

5) Create a data collector for 1 day score for the above indicator.

6) Turn off the DA filter (com.snc.pa.dc.recordwatcher.filter) and run the job, which will finish in seconds.

7) Turn on the DA filter and run the job. The job this time finishes in minutes with a substantial increase of running time.

Workaround

As administrator, go to System Properties and create a new property as follows:


Related Problem: PRB1447242