[
https://issues.jboss.org/browse/ISPN-3835?page=com.atlassian.jira.plugin....
]
Sanne Grinovero commented on ISPN-3835:
---------------------------------------
It might still be relevant but as far as I remember we heavily cleaned up this code area
this summer, so maybe not.
By "command" I mean the RPC: the problem was that a node receiving an indexing
command from a different node on the backend, would not have the same safeguarding methods
like we have in the QueryInterceptor to verify if the the is already registered.
It's hard to reproduce as in theory the sender of the RPC did the registration first,
but I witnessed situations in which you could still have a race condition. The race
condition might be gone, as I think the registry is meant to be updated in a blocking way
on all nodes? Still I think the receiver of the RPC should better be safe and check for
the type to be registered, so to compensate for eventuality inconsistencies in the
registry state itself.
Index Update command is processed before the registry listener is
triggered
---------------------------------------------------------------------------
Key: ISPN-3835
URL:
https://issues.jboss.org/browse/ISPN-3835
Project: Infinispan
Issue Type: Bug
Components: Embedded Querying
Affects Versions: 6.0.0.Final
Reporter: Sanne Grinovero
Assignee: Gustavo Fernandes
Priority: Critical
Labels: 64QueryBlockers
Fix For: 7.1.0.CR1
When using the InfinispanIndexManager backend the master node might receive an index
update command about an index which it hasn't defined yet.
Index definitions are triggered by the type registry, which in turn is driven by the
ClusterRegistry and an event listener on the ClusterRegistry. It looks like slaves are
sending update requests before the master has processed the configuration event.
This leads to index update commands to be lost (with a stacktrace logged)
--
This message was sent by Atlassian JIRA
(v6.3.11#6341)