257 views

Description

A throttling mechanism was added in ChoiceListGenerator.java that uses a semaphore set of two semaphores to throttle generator calls. If a thread recursively calls the ChoiceListGenerator, the semaphore set is depleted after two iterations, and used semaphores are not released. Any other threads now also get stuck trying to acquire a semaphore and the node eventually becomes unresponsive.

Steps to Reproduce

There are three calls to ChoiceListGenerator.get(ChoiceListGenerator.java:118). The third one gets stuck waiting for a semaphore as the set is set to two by default:

Private static GlideProperty: fThrottleSize = new GlideProperty(GLIDE_CHOICELIST_REFILL_RATE, 2)

 

Workaround

There is no known workaround for this issue. If you are able to upgrade, review the Fixed In field below to determine the versions that have a permanent fix.


Related Problem: PRB623955

Seen In

Berlin Patch 4
Eureka Patch 7 Hot Fix 4
Eureka Patch 8
Geneva Patch 1 Hot Fix 6
Geneva Patch 7

Fixed In

Fuji Patch 2
Geneva
Helsinki

Associated Community Threads

There is no data to report.

Article Information

Last Updated:2016-11-29 17:47:29
Published:2015-03-09