The InMemoryCtsSessionCacheStep#cacheTrusted field is being accessed by one thread and changed potentially by another. This field has not been marked as volatile, and hence it is possible that changes made to the field in one thread may not be picked up immediately by other threads.
This in essence can potentially mean that the cache may be considered trusted when it isn't, or the cache may be considered untrusted even after it became trusted again.
Don't have specific steps, this was found through code analysis.
cacheTrusted field should be protected for multi-thread access.