qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "jiraposter@reviews.apache.org (Commented) (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (QPID-3346) Support message grouping with stricted sequence consumption across multiple consumers.
Date Tue, 27 Sep 2011 20:26:50 GMT

    [ https://issues.apache.org/jira/browse/QPID-3346?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13115883#comment-13115883
] 

jiraposter@reviews.apache.org commented on QPID-3346:
-----------------------------------------------------


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/1980/
-----------------------------------------------------------

(Updated 2011-09-27 20:26:22.564151)


Review request for qpid, Alan Conway and Gordon Sim.


Changes
-------

Update to incorporate feedback from Andrew and Gordon.
  - make MessageAllocator pure virtual
  - instantiate a default allocator (FifoAllocator) for dispatching the head available msg.
  - pass reference to Messages rather than Queue to allocator constructors.
  - remove lock arguments

I left the name unchanged for now - I'm working on a separate set of patches (post 0.14) that
will put a little more "meat" on the MessageAllocator's bones and we can give it a more descriptive
name then.

I'd like to get these changes onto trunk before the window closes for 0.14.


Summary
-------

This implements QPID-3346.  I'd like to get this onto trunk.

This patch does not include optimizations I have made - I'll be reviewing & submitting
these separately as they involve more intrusive changes to the Queue API. Ignore for now the
TODO comments in the MessageGroups source files.

Performance testing suggests that this patch has negligible effect on legacy traffic performance
(non-grouped traffic):

current trunk:
[kgiusti@mrg42 tests]$ ./qpid-perftest -b 20.0.10.43 --iterations 5 --count 500000 --npubs=1
--nsubs=1 --qt=1 --summary
58096.5	56556.7	113124	110.473
62659.7	62195.4	124381	121.466
54278.2	54136.2	108265	105.728
55506.3	55501	110505	107.915
62176.8	58019.1	115500	112.793
Averages: 
58543.5	57281.7	114355	111.675

+ this patch:
[kgiusti@mrg42 tests]$ ./qpid-perftest -b 20.0.10.43 --iterations 5 --count 500000 --npubs=1
--nsubs=1 --qt=1 --summary
58346.1	55008.2	110510	107.92
59309.8	58747.5	117482	114.729
61323.3	58222.1	116436	113.707
57603	57600.4	115193	112.493
56091.8	56086.4	111667	109.05
Averages: 
58534.8	57132.9	114258	111.58


This addresses bug qpid-3346.
    https://issues.apache.org/jira/browse/qpid-3346


Diffs (updated)
-----

  /trunk/qpid/cpp/src/CMakeLists.txt 1172628 
  /trunk/qpid/cpp/src/Makefile.am 1172628 
  /trunk/qpid/cpp/src/qpid/broker/Broker.h 1172628 
  /trunk/qpid/cpp/src/qpid/broker/Broker.cpp 1172628 
  /trunk/qpid/cpp/src/qpid/broker/Consumer.h 1172628 
  /trunk/qpid/cpp/src/qpid/broker/DeliveryRecord.h 1172628 
  /trunk/qpid/cpp/src/qpid/broker/DeliveryRecord.cpp 1172628 
  /trunk/qpid/cpp/src/qpid/broker/FifoAllocator.h PRE-CREATION 
  /trunk/qpid/cpp/src/qpid/broker/FifoAllocator.cpp PRE-CREATION 
  /trunk/qpid/cpp/src/qpid/broker/MessageAllocator.h PRE-CREATION 
  /trunk/qpid/cpp/src/qpid/broker/MessageGroupManager.h PRE-CREATION 
  /trunk/qpid/cpp/src/qpid/broker/MessageGroupManager.cpp PRE-CREATION 
  /trunk/qpid/cpp/src/qpid/broker/Messages.h 1172628 
  /trunk/qpid/cpp/src/qpid/broker/Queue.h 1172628 
  /trunk/qpid/cpp/src/qpid/broker/Queue.cpp 1172628 
  /trunk/qpid/cpp/src/qpid/broker/QueueEvents.cpp 1172628 
  /trunk/qpid/cpp/src/qpid/broker/QueueFlowLimit.h 1172628 
  /trunk/qpid/cpp/src/qpid/broker/QueueFlowLimit.cpp 1172628 
  /trunk/qpid/cpp/src/qpid/broker/QueueObserver.h 1172628 
  /trunk/qpid/cpp/src/qpid/broker/QueuePolicy.cpp 1172628 
  /trunk/qpid/cpp/src/qpid/broker/SemanticState.h 1172628 
  /trunk/qpid/cpp/src/qpid/broker/SemanticState.cpp 1172628 
  /trunk/qpid/cpp/src/qpid/broker/ThresholdAlerts.h 1172628 
  /trunk/qpid/cpp/src/qpid/cluster/Connection.cpp 1172628 
  /trunk/qpid/cpp/src/qpid/cluster/UpdateClient.cpp 1172628 
  /trunk/qpid/cpp/src/tests/CMakeLists.txt 1172628 
  /trunk/qpid/cpp/src/tests/Makefile.am 1172628 
  /trunk/qpid/cpp/src/tests/QueueTest.cpp 1172628 
  /trunk/qpid/cpp/src/tests/cluster_tests.py 1172628 
  /trunk/qpid/cpp/src/tests/msg_group_test.cpp PRE-CREATION 
  /trunk/qpid/cpp/src/tests/qpid-send.cpp 1172628 
  /trunk/qpid/cpp/src/tests/run_msg_group_tests PRE-CREATION 
  /trunk/qpid/cpp/src/tests/run_msg_group_tests_soak PRE-CREATION 
  /trunk/qpid/java/broker/src/main/java/org/apache/qpid/qmf/QMFService.java 1172628 
  /trunk/qpid/specs/management-schema.xml 1172628 
  /trunk/qpid/tests/src/py/qpid_tests/broker_0_10/management.py 1172628 

Diff: https://reviews.apache.org/r/1980/diff


Testing
-------

new unit tests & tools added.   Built cpp & java on Windows & various linux distros.


Thanks,

Kenneth


                
> Support message grouping with stricted sequence consumption across multiple consumers.
> --------------------------------------------------------------------------------------
>
>                 Key: QPID-3346
>                 URL: https://issues.apache.org/jira/browse/QPID-3346
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Broker
>    Affects Versions: 0.12
>            Reporter: Ken Giusti
>            Assignee: Ken Giusti
>             Fix For: 0.14
>
>         Attachments: UI.txt, msg_groups_0.2.txt
>
>
> This feature is described in the attached QIP as Policy #2: Sequenced Consumers.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


Mime
View raw message