Details
-
Enhancement
-
Resolution: Done
-
Major
-
None
-
None
Description
Doing a simple get, generates this stack:
org.infinispan.CacheImpl.get(Object)
org.infinispan.CacheImpl.get(Object, EnumSet<Flag>, ClassLoader)
org.infinispan.CacheImpl.getInvocationContextForRead(Transaction, EnumSet<Flag>, ClassLoader, int) <-------------- int = 1
org.infinispan.context.TransactionalInvocationContextContainer.createInvocationContext(boolean, int) <------------------ false, 1
org.infinispan.context.TransactionalInvocationContextContainer.newNonTxInvocationContext(boolean) <------------------ true
At this point the information of this being a simple get - hence operating on a single key - is lost, and we end up generating a NonTxInvocationContext, which initializes a HashMap in it's constructor and is generally more expensive to use.
I'd like this use case to actually use org.infinispan.context.SingleKeyNonTxInvocationContext