[
https://jira.jboss.org/jira/browse/JBCLUSTER-220?page=com.atlassian.jira....
]
Fol de Rol commented on JBCLUSTER-220:
--------------------------------------
Thank you for your prompt resonse. However, asynchronicity can't be a solution for my
case.
The system I've been developing should update a DRM table in response to
callMethodOnCluster() synchronously to make a kind of a logical cluster-wide lock
operation before returning a response to the caller. Unfortunately, there is another
callMethodOnCluster() underneath the implementation of DistributedReplicantManager.add().
This is the place when I get the call blocked.
I tried making DistributedReplicantManager.add() call in a separate thread and waiting for
the thread termination in the basic thread but had got the same effect. If I won't
wait for the second thread, there's a chance that the states of the replicants remain
inconsistent during the gap between return from the first callMethodOnCluster() and the
second replicational callMethodOnCluster() fired by DRM. This is unacceptible by my
requirements.
HAPartition.callMethodOnCluster() is not reentrant
--------------------------------------------------
Key: JBCLUSTER-220
URL:
https://jira.jboss.org/jira/browse/JBCLUSTER-220
Project: JBoss Clustering
Issue Type: Feature Request
Security Level: Public(Everyone can see)
Components: HA-Server-API
Reporter: Fol de Rol
Assignee: Brian Stansberry
An RPC handler of callMethodOnCluster() cannot in its turn call callMethodOnCluster()
querying other services. The second call blocks until timeout is reached and returns
without results.
The same relates to facilities based on this method like Distributed Replicant Manager.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira