You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Steve Huston (JIRA)" <qp...@incubator.apache.org> on 2009/03/20 23:46:50 UTC
[jira] Updated: (QPID-1765) C++ unit tests won't run on Windows
[ https://issues.apache.org/jira/browse/QPID-1765?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Steve Huston updated QPID-1765:
-------------------------------
Attachment: SocketProxy.h.diff
Proposed alternate way to handle SocketProxy.
This uses low-level socket stuff, and requires a platform-specific include and typedef. I have my asbestos suit on, so fire away ;-)
> C++ unit tests won't run on Windows
> -----------------------------------
>
> Key: QPID-1765
> URL: https://issues.apache.org/jira/browse/QPID-1765
> Project: Qpid
> Issue Type: Bug
> Affects Versions: 0.5
> Environment: Windows, Visual Studio 2008
> Reporter: Steve Huston
> Attachments: SocketProxy.h.diff
>
>
> The C++ unit_tests test suite won't run correctly on Windows. The main issue is that the SocketProxy class, used as a relay between client and broker that can be programmed to drop data or close a connection at an inopportune time, uses the Poller class in a way that's incompatible with the Windows IocpPoller.
> The Poller class is used to react to events on the sockets being used, but the SocketProxy class then expects to perform the needed send/recv operations directly on the Socket classes. However, the Windows Poller class reacts to I/O completions, not possibilities, so it's not compatible with the approach taken by SocketProxy.
> I tried replacing this with AsynchIO use... too messy and leaky.
> I have an approach working that uses select() instead of the Poller. It's portable, even if a bit trickier to use correctly than Poller. Patch forthcoming.
--
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