qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alan Conway (JIRA)" <qpid-...@incubator.apache.org>
Subject [jira] Commented: (QPID-1666) Refactor PollableQueue and PollableCondition to allow porting
Date Wed, 18 Feb 2009 15:25:01 GMT

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

Alan Conway commented on QPID-1666:

Nice refactor. I like moving the relationsihp with the Poller into the  PollableCondition,
it looks cleaner overall. Also the doxygen is much more accurate/useful.

I'm not clear on the need for disarm/rearm. The idea of PollableCondition was that it have
just 2 states: when set, it's available to be polled, when clear it's not. I'd rather not
multiply this up to 4 states (set/armed, set/disarmed, clear/armed, clear/disarmed) I see
why you did this, to keep the structure of PollableQueue, but I think we can simplify further
and move the disarm/rearm into PollableCondition.
Actually I think this points to a much simpler linux implementation of PollableCondition:
create a pipe, write one byte to it, and then just startWatch/stopWatch in set/clear :)

I'll tinker with this and make sure it works for the cluster.  Provide the cluster tests all
pass I'm happy for this to be comitted - note you need openais-devel (<fedora 10) or corosync-devel
(>=fedora10) installed when you configure the build and you need corosync configured and
running when you run the tests in order to get the cluster tests to run.

> Refactor PollableQueue and PollableCondition to allow porting
> -------------------------------------------------------------
>                 Key: QPID-1666
>                 URL: https://issues.apache.org/jira/browse/QPID-1666
>             Project: Qpid
>          Issue Type: Improvement
>          Components: C++ Broker
>            Reporter: Steve Huston
>             Fix For: M5
>         Attachments: pollable.diff
> The qpid::sys::PollableQueue and qpid::sys::PollableCondition classes contain constructs
not portable to Windows. In order to port these to Windows, I'd like to refactor these classes
to move the Linux-specific pieces down to the posix level.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

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

View raw message