178 views

Description

The Reference qual condition field used for catalog variables (question.reference_qual_condition) is set to max_length=255, which is usually too short, causing conditions to be corrupted due to truncation when submitted. There are no logs or warning when this truncation happens, which leaves a corrupt query string. Other similar fields in the platform are usually 1000 or 4000 characters long.

Steps to Reproduce

 

  1. Import and open the attached variable (item_option_new_9f806d0edb8ed200ec9e742eaf96193a.xml).

    Note that the reference qualifier condition is relatively simple and only four lines. It's currently 222 chars long.

    sys_class_name=cmdb_ci_exchange_edge_transport_server^ORsys_class_name=cmdb_ci_qualifier_boundary_connection^ORsys_class_name=cmdb_ci_qualifier_external_connection^ORsys_class_name=cmdb_ci_exchange_hub_transport_server^EQ

  2. Try to add more characters, for example, OR Class IS Cloud Storage Container (cmdb_ci_cloud_storage_container)

    In the XML of the record, note that the text is cut off at 255 chars, in the middle of cmdb_ci_cloud_stora

    sys_class_name=cmdb_ci_exchange_edge_transport_server^ORsys_class_name=cmdb_ci_qualifier_boundary_connection^ORsys_class_name=cmdb_ci_qualifier_external_connection^ORsys_class_name=cmdb_ci_exchange_hub_transport_server^ORsys_class_name=cmdb_ci_cloud_stora

Workaround

This problem is fixed in Istanbul and onwards. The new reference qualifier condition field has now a max length of 4000.

If an upgrade is not feasible yet, set an advance reference qualifier instead, and write a script to generate the wanted filtered values.


Related Problem: PRB666027

Seen In

Calgary Patch 2 Hot Fix 5
Eureka Patch 11 Hot Fix 2

Fixed In

Istanbul

Associated Community Threads

There is no data to report.

Article Information

Last Updated:2018-03-01 09:09:34
Published:2017-06-30