[
https://issues.apache.org/jira/browse/VYSPER-337?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Bernd Fondermann updated VYSPER-337:
------------------------------------
Description:
Currently, StanzaRelays typically act as a "stage", in that they queue and
process stanzas.
The most important one probably is DeliveringInternalInboundStanzaRelay.
If multiple stanzas are queued intentionally in a certain sequence (A, B), the
relay's queue ensures that processing of stanzas (i.e. assignment to threads
from the pool) starts in that sequence.
The weak point is that B's processing can be finished before A's. This is not a
problem if A is delivered to a different session than B. However, if both, A
and B, are delivered to the same session, the sequence has changed, which may
be unwanted. (Example: A: presence for a MUC room, B: history message for the
same room.)
was:
Currently, StanzaRelays typically act as a "stage", in that they queue and
process stanzas.
The most important one probably is DeliveringInternalInboundStanzaRelay.
If multiple stanzas are queued intentionally in a certain sequence (A, B), the
relay's queue ensures that processing of stanzas (i.e. assignment to threads
from the pool) starts in that sequence.
The weak point is that B's processing can finished before A's. This is not a
problem if A is delivered to a different session than B. However, if both, A
and B, are delivered to the same session, the sequence has changed, which may
be unwanted. (Example: A: presence for a MUC room, B: history message for the
same room.)
> Sequential processing of stanzas per StanzaRelay
> ------------------------------------------------
>
> Key: VYSPER-337
> URL: https://issues.apache.org/jira/browse/VYSPER-337
> Project: VYSPER
> Issue Type: Improvement
> Components: stanza routing
> Affects Versions: 0.7
> Reporter: Bernd Fondermann
> Assignee: Bernd Fondermann
>
> Currently, StanzaRelays typically act as a "stage", in that they queue and
> process stanzas.
> The most important one probably is DeliveringInternalInboundStanzaRelay.
> If multiple stanzas are queued intentionally in a certain sequence (A, B),
> the relay's queue ensures that processing of stanzas (i.e. assignment to
> threads from the pool) starts in that sequence.
> The weak point is that B's processing can be finished before A's. This is not
> a problem if A is delivered to a different session than B. However, if both,
> A and B, are delivered to the same session, the sequence has changed, which
> may be unwanted. (Example: A: presence for a MUC room, B: history message for
> the same room.)
--
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