951 views

Description

During the checkout of an item, all the variables of a catalog item are inserted in the SC_ITEM_OPTION table and then create a corresponding RITM record. Intermittently we observe that some of the RITMs are inserted without inserting all the necessary variables to SC_ITEM_OPTION table. This is due to a race condition when two requests try to query the variables of an Item resulting in in-correct set of variables being returned as variables of the Item.

Steps to Reproduce

 

This issue is not reproducible on demand. But based on the final outcome, the steps to reproduce are:

  1. Order a Catalog Item.
  2. Check whether variables are created.

Note that sometimes the RITM is created without the variables.

Workaround

The workaround involves disabling caching mechanism for catalog items only. Every time details of a catalog item is needed, we will query Database. This could potentially reduce performance and increase load times for pages that requires Catalog Item information. It does not affect any artifact outside Service Catalog.

Please follow the following steps to have a workaround in place.

  1. Add a new boolean property glide.sc.disable.ZZ_CATALOG_ITEM_YY with value true.
  2. Clear the system cache by navigating to cache.do page.

Note: There is a fix set in a future patch release that addresses this issue without the potential reduction in performance outlined in this workaround


Related Problem: PRB652351

Seen In

Eureka Patch 10 Hot Fix 1
Eureka Patch 11
Eureka Patch 11 Hot Fix 2
Eureka Patch 12
Eureka Patch 12 Hot Fix 2
Fuji Patch 11
Fuji Patch 12 Hot Fix 1
Fuji Patch 13 Hot Fix 1
Fuji Patch 8
Geneva Patch 3 Hot Fix 2
Geneva Patch 7
Geneva Patch 9
Helsinki Patch 5

Fixed In

Helsinki Patch 12
Istanbul Patch 8
Jakarta Patch 2
Kingston

Associated Community Threads

There is no data to report.

Article Information

Last Updated:2018-05-07 03:27:59
Published:2017-07-14