Hi again, examining some flamegraphs I've found out that recently the ExpirationInterceptor has been added, which registers ongoing write in a hashmap. So at this point we have a map for locks, map for writes used for expiration, another two key-addressed maps in L1ManagerImpl and one in L1NonTxInterceptor and maybe another maps elsewhere.
This makes me think that we could spare map lookups and expensive writes by providing *single map for temporary per-key data*. A reference to the entry could be stored in the context to save the lookups. An extreme case would be to put this into DataContainer, but I think that this would prove too tricky in practice. A downside would be the loss of encapsulation (any component could theoretically access e.g. locks), but I don't find that too dramatic. WDYT? Radim -- Radim Vansa <[email protected]> JBoss Performance Team _______________________________________________ infinispan-dev mailing list [email protected] https://lists.jboss.org/mailman/listinfo/infinispan-dev
