qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (Jira)" <j...@apache.org>
Subject [jira] [Commented] (DISPATCH-1532) Reimplement mobile-sync as a core module
Date Tue, 07 Jan 2020 14:05:00 GMT

    [ https://issues.apache.org/jira/browse/DISPATCH-1532?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17009749#comment-17009749

ASF GitHub Bot commented on DISPATCH-1532:

ChugR commented on issue #654: DISPATCH-1532 - Reimplemented mobile-address-synchronization
as a cor…
URL: https://github.com/apache/qpid-dispatch/pull/654#issuecomment-571599619
   At commit 9198a4 this patch occasionally hangs during the first self test in system_tests_multicast.
Scraping the logs after a hang timeout reveals that after a bunch of setup the test sends
10 messages with leading content :
   Then the code falls into a loop doing management queries:
   > $amqp:/_edge/EA1/temp.85H3ENeh1E1t9hs 33 St name self type org.amqp.management operation
QUERY entityType 'org.apache.qpid.dispatch.router.address
   > (amqp:/_topo/0/INT.A/temp.zgRSn+05d+QH7t8 34 St name self type org.amqp.management
operation QUERY entityType 'org.apache.qpid.dispatch.router.address 
   The query stream is repeated 5000 or so times before the test times out after 600 seconds.
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:

> Reimplement mobile-sync as a core module
> ----------------------------------------
>                 Key: DISPATCH-1532
>                 URL: https://issues.apache.org/jira/browse/DISPATCH-1532
>             Project: Qpid Dispatch
>          Issue Type: Improvement
>          Components: Routing Engine
>            Reporter: Ted Ross
>            Assignee: Ted Ross
>            Priority: Major
>             Fix For: 1.11.0
> The code in Qpid Dispatch Router currently does mobile address synchronization between
routers in the Python router module.  This has a couple of drawbacks in cases where there
are large numbers of addresses:
>  * The address strings are stored twice:  once in the main address lookup hash table
and again in the Python mobile address module.
>  * Address lookup on the Python side is inefficient and has been a bottleneck (improved
recently by a patch from Gordon Sim).
>  * Python processing is single threaded.  A large mobile address update can cause delays
in processing management requests and link-state topology maintenance.
> The python router module was intended to be an on-the-side control-plane moduel that
was not in the critical path for any performance-related activities.  With large numbers
of addresses in a network, synchronizing address locations becomes performance-related.
> To address these issues, mobile address synchronization can be moved into a core module
where it can use and share the same address table that is used by the router core for make
high speed routing decisions.  In the process, it will leave the python modules alone to
process management requests and topology maintenance uninterrupted.

This message was sent by Atlassian Jira

To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org

View raw message