Dan Berindei created ISPN-6802:
----------------------------------
Summary: Micro-optimizations for read operations
Key: ISPN-6802
URL:
https://issues.jboss.org/browse/ISPN-6802
Project: Infinispan
Issue Type: Task
Components: Core
Affects Versions: 9.0.0.Alpha2
Reporter: Dan Berindei
Assignee: Dan Berindei
Fix For: 9.0.0.Alpha3
* L1 entries are written to the data container by L1TxInterceptor/L1NonTxInterceptor
directly, so there is no reason to commit the context entries in EntryWrappingInterceptor
or to clear the locks in the locking interceptors.
* ClearCommands can no longer be wrapped in PrepareCommands, so we can stop the state
transfer in {{EntryWrappingInterceptor.visitClearCommand()}} instead of checking the type
for each command.
* In transactional caches, a read operation without an explicit transaction triggers two
queries for the current transaction to the transaction manager, which usually means 2
thread-local lookups.
* IsMarshallerInterceptor shouldn't do anything unless there is an asynchronous store
* Transactional remote get commands use NonTxInvocationInterceptor instead of
SingleKeyNonTxInterceptor.
* Configuration attributes should be cached, as reading them requires accessing multiple
instances + a cast in Attribute.get()
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)