[
https://issues.jboss.org/browse/ISPN-4196?page=com.atlassian.jira.plugin....
]
Martin Gencur commented on ISPN-4196:
-------------------------------------
After some debugging, the problems seems to be in the QueryInterceptor which handles
clearing the index.
The 30-second waiting period is caused by ComponentRegistry calling stop() operation on
TransactionTable. This stop() method waits for localTransactions variable to be empty (not
containing any LocalTransactions). This is fine for default cache on which the clear() was
initially invoked. However, during the clear() operation, another
"_cluster_registry_cache_" is used by QueryInterceptor (it creates and registers
a new local transaction for the _cluster_registry_cache_) and at the time of calling
stop() method on its TransactionTable, the transaction is still there. This transaction
should have been removed from the localTransactions variable but was not. I'll
investigate further what can be done about this.
QueryDslIterationTest cleanup takes 30 secods to complete
---------------------------------------------------------
Key: ISPN-4196
URL:
https://issues.jboss.org/browse/ISPN-4196
Project: Infinispan
Issue Type: Bug
Components: Embedded Querying
Affects Versions: 7.0.0.Alpha1
Reporter: Adrian Nistor
Assignee: Adrian Nistor
Fix For: 7.0.0.Final
The cleanup phase of this test is based on Cache.clear() and is very slow , taking about
30 seconds, or at least that's how much we gain if the cache cleanup is removed.
Without the cleanup, this test takes about 2.5 seconds, so we need to investigate why
Cache.clear() creates a problem here or in general.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:
http://www.atlassian.com/software/jira