Vcrypt.tracker.rules.RuleCache.setTransactionLogData Throws Java ConcurrentModificationException

(Doc ID 2090841.1)

Last updated on JUNE 07, 2017

Applies to:

Oracle Adaptive Access Manager - Version and later
Information in this document applies to any platform.


We are running scale tests on our QA OAAM WebLogic servers for a batch application that has extremely high transaction throughput.
After a short time (15 minutes) the servers start experiencing stuck threads and ConcurrentModificationException errors that appear in the below stack trace.

1. Our OAAM implementation is multi-threaded
2. Even with other high transaction volume applications (although not as high), this is the first time we experience this error.
3. Our custom app calls com.bharosa.vcrypt.tracker.impl.VCryptTrackerFilterImpl.createTransaction(VCryptTrackerFilterImpl) for every valid transaction our OAAM servers receive.
4. The OAAM API ends up doing a put operation on a HashMap class which should be synchronized. According the Java API Doc this class should *not* be used with multi-threaded applications, and requires external synchronization.

  at java.util.HashMap$HashIterator.nextEntry(   at java.util.HashMap$
  at java.util.HashMap.buildCache(
  at java.util.HashMap.resize(
  at java.util.HashMap.addEntry(
  at java.util.HashMap.put(   at com.bharosa.vcrypt.tracker.rules.RuleCache.setTransactionLogData(


Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms