So dude,
let's recap:
1. You found an issue but didn't report it
2. You fixed the issue but cannot talk about it
What's next ? You'd have to kill us if you talked about the issue and
the fix ? :-)
Krzysztof Sobolewski wrote:
Dnia ¶roda 13 styczeñ 2010 o 15:22:01 napisa³e¶:
> 1) RPC: Using JGroups' ResponseMode of waiting for none.
>
Speaking of which...
I ran into a problem in JBoss Cache some time ago (it's one of those not yet
reported ;) ) with aynchronous replication and non-blocking state transfer.
AFAICS Infinispan uses the same replication mechanism as JBC, so I think it's
relevant here.
The thing is that the "asynchronous" replication uses the usual method of
submitting a task to an Executor. This is no problem without NBST, because the
tasks are not interested in responses and finish immediately, but with NBSP
they need responses to facilitate replay. And since they need to wait for
responses, they clog the Executor's threads and under sufficiently heavy load,
it all degrades to effectively synchronous replication. And it happens quite
fast, really.
The good news is that I fixed it. The bad news is that it's not something that
can really be put in public view :) But the approach is to use asynchronous
API in JGroups - one of the castMessage() overloads that accepts a
RspCollector. That way I made the async replication really asynchronous, and
so far it works without problems :)
-KS
--
Bela Ban
Lead JGroups / Clustering Team
JBoss