You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by Andrew Stitcher <as...@redhat.com> on 2009/10/21 18:28:44 UTC
Trunk Qpid Window code doesn't seem to work
Yesterday, preparatory to issuing a deadline on for a release freeze I
thought I'd check out the Windows and Solaris ports and see what their
state was.
I got as far as the windows port, which didn't even build. That was
actually my fault for making some Unix changes. Fortunately Steve made
fixes for my carelessness a little while later.
However, the current windows code doesn't seem to run correctly:
Does anyone have recent experience (I guess pre my breaking changes that
the windows port is functional?).
Because I'd say that this would be a blocker - I just want to be sure
that there's not something funny about my environment.
If I run the broker and then run perftest against it perftest appears
hang waiting for the connection to start
I get errors from unit_test - culminating in an abort:
[Apologies forthe rubbish line breaks]
Running 234 test cases...
****../../../qpid/cpp/src/tests/logging.cpp(175): error in
"testLoggerFormat": check regexPredicate( string("..\\..\\..\\qpid\\cpp
\src\\tests\\logging.cpp")+":\\d+: foo\n", out->last() ) failed for
( ..\..\..\qpid\cpp\src\tests\logging.cpp:\d+: foo, ..\..\..\qpid\cpp
\src\tests\logging.cpp:174: foo )
**../../../qpid/cpp/src/tests/logging.cpp(378): error in
"testQuoteNonPrintable": check expect == line failed [critical null
\x00tab space newline
\x80\x99\xFF\x00
!= critical ..\..\..\qpid\cpp\src\tests\logging.cpp:345: foo
critical null\x00tab space newline
\x80\x99\xFF\x00
critical ..\..\..\qpid\cpp\src\tests\logging.cpp:345: foo
critical null\x00tab space newline
\x80\x99\xFF\x00
critical ..\..\..\qpid\cpp\src\tests\logging.cpp:345: foo
critical null\x00tab space newline
\x80\x99\xFF\x00
critical ..\..\..\qpid\cpp\src\tests\logging.cpp:345: foo
critical null\x00tab space newline
\x80\x99\xFF\x00
critical ..\..\..\qpid\cpp\src\tests\logging.cpp:345: foo
critical null\x00tab space newline
\x80\x99\xFF\x00
critical ..\..\..\qpid\cpp\src\tests\logging.cpp:345: foo
critical null\x00tab space newline
\x80\x99\xFF\x00
critical ..\..\..\qpid\cpp\src\tests\logging.cpp:345: foo
critical null\x00tab space newline
\x80\x99\xFF\x00
]
*../../../qpid/cpp/src/tests/Uuid.cpp(58): error in "testUuidIstream":
check uui
d == sample failed
*../../../qpid/cpp/src/tests/Uuid.cpp(66): error in "testUuidOstream":
check out
.str() == sampleStr failed [ba284e1b-a12f-d211-883f-b9a761bde3fb !=
1b4e28ba-2fa
1-11d2-883f-b9a761bde3fb]
******unknown location(0): fatal error in "testOpenFailure": memory
access viola
tion occurred at address 0xdddddddd, while attempting to read
inaccessible data
..\..\..\qpid\cpp\src\tests\ClientSessionTest.cpp(252): last checkpoint
*************
*** 5 failures detected in test suite "Master Test Suite"
Detected memory leaks!
... and a long list of leaked blocks...
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org
Re: Trunk Qpid Window code doesn't seem to work
Posted by Robert Greig <ro...@gmail.com>.
>> Do you think that a working C++ windows broker is necessary for this
>> release? Not a rhetorical question BTW. I don't actually have this
>> knowledge.
Yes - did you see the thread about the presentation on Qpid at the
Microsoft PDC?
Robert
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org
RE: Trunk Qpid Window code doesn't seem to work
Posted by Steve Huston <sh...@riverace.com>.
Hi Andrew,
> Steve,
>
> On further testing it appears to be an issue in the broker accepting
> connections.
You are correct; I just checked in a fix. Now see if you can get the
intermittent one to fail and help us diagnose that ;-)
-Steve
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org
RE: Trunk Qpid Window code doesn't seem to work
Posted by Steve Huston <sh...@riverace.com>.
> Steve,
>
> On further testing it appears to be an issue in the broker accepting
> connections.
Ah, ok - I think it's a recent Linux change that escaped my rework to
Windows. I'm testing now...
> Do you think that a working C++ windows broker is necessary for this
> release? Not a rhetorical question BTW. I don't actually have this
> knowledge.
Yes, absolutely.
-Steve
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org
RE: Trunk Qpid Window code doesn't seem to work
Posted by Andrew Stitcher <as...@redhat.com>.
On Wed, 2009-10-21 at 12:55 -0400, Steve Huston wrote:
> ...
> > If I run the broker and then run perftest against it perftest
> appears
> > hang waiting for the connection to start
>
> There is an intermittent (for some it's always, for some it's never)
> hang similar to what you describe. I've not been able to reproduce it.
>
> Can you run anything else? Python_tests, maybe?
Steve,
On further testing it appears to be an issue in the broker accepting
connections.
perftest running on Windows works well against qpidd running on Linux.
But when I putt a breakpoint after ::GetQueuedCompletionStatus in
poller::wait() in the broker it is never hit in the broker when the
client is connecting to it. This leads me to think that there is a
possibly recent problem with the accept set up in the broker.
Do you think that a working C++ windows broker is necessary for this
release? Not a rhetorical question BTW. I don't actually have this
knowledge.
Andrew
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org
RE: Trunk Qpid Window code doesn't seem to work
Posted by Andrew Stitcher <as...@redhat.com>.
On Wed, 2009-10-21 at 12:55 -0400, Steve Huston wrote:
> Hi Andrew,
> ...
> >
> > If I run the broker and then run perftest against it perftest
> appears
> > hang waiting for the connection to start
>
> There is an intermittent (for some it's always, for some it's never)
> hang similar to what you describe. I've not been able to reproduce it.
>
It isn't intermittent for me it occurs in all the builds I've tried.
> Can you run anything else? Python_tests, maybe?
>
Is the known issue on the broker or client sides?
I can test Linux against windows easily enough to see which side(s) my
problem is on.
> ...
> This is "normal" - I tracked it once to a different behavior between
> Microsoft and gcc STL iterators or something similar.
I think that this really needs to be resolved ASAP the unit_test program
is our initial "QA" for a checkin without it passing it's pretty easy to
add in regressions. Certainly the low levels of the Windows port is
sufficiently different to expect there to be different failure modes.
>
> > ..\..\..\qpid\cpp\src\tests\ClientSessionTest.cpp(252): last
> > checkpoint
> > *************
> > *** 5 failures detected in test suite "Master Test Suite"
> > Detected memory leaks!
> > ... and a long list of leaked blocks...
>
> Yes, once it crashes there are leaks galore. They will be looked at
> when unit_test doesn't crash.
I'd expect it to leak is it crashes. But the crashing is a problem. The
Linux experience is that the leaks pretty much go away if you run to
completion.
Andrew
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org
RE: Trunk Qpid Window code doesn't seem to work
Posted by Steve Huston <sh...@riverace.com>.
Hi Andrew,
> Yesterday, preparatory to issuing a deadline on for a release freeze
I
> thought I'd check out the Windows and Solaris ports and see what
their
> state was.
>
> I got as far as the windows port, which didn't even build. That was
> actually my fault for making some Unix changes. Fortunately Steve
made
> fixes for my carelessness a little while later.
Yes, that should be resolved.
> However, the current windows code doesn't seem to run correctly:
>
> Does anyone have recent experience (I guess pre my breaking
> changes that
> the windows port is functional?).
>
> Because I'd say that this would be a blocker - I just want to be
sure
> that there's not something funny about my environment.
>
> If I run the broker and then run perftest against it perftest
appears
> hang waiting for the connection to start
There is an intermittent (for some it's always, for some it's never)
hang similar to what you describe. I've not been able to reproduce it.
Can you run anything else? Python_tests, maybe?
> I get errors from unit_test - culminating in an abort:
> [Apologies forthe rubbish line breaks]
> Running 234 test cases...
> ****../../../qpid/cpp/src/tests/logging.cpp(175): error in
> "testLoggerFormat": check regexPredicate(
> string("..\\..\\..\\qpid\\cpp
> \src\\tests\\logging.cpp")+":\\d+: foo\n", out->last() ) failed for
> ( ..\..\..\qpid\cpp\src\tests\logging.cpp:\d+: foo,
..\..\..\qpid\cpp
> \src\tests\logging.cpp:174: foo )
> **../../../qpid/cpp/src/tests/logging.cpp(378): error in
> "testQuoteNonPrintable": check expect == line failed [critical null
> \x00tab space newline
> \x80\x99\xFF\x00
> != critical ..\..\..\qpid\cpp\src\tests\logging.cpp:345: foo
> critical null\x00tab space newline
> \x80\x99\xFF\x00
> critical ..\..\..\qpid\cpp\src\tests\logging.cpp:345: foo
> critical null\x00tab space newline
> \x80\x99\xFF\x00
> critical ..\..\..\qpid\cpp\src\tests\logging.cpp:345: foo
> critical null\x00tab space newline
> \x80\x99\xFF\x00
> critical ..\..\..\qpid\cpp\src\tests\logging.cpp:345: foo
> critical null\x00tab space newline
> \x80\x99\xFF\x00
> critical ..\..\..\qpid\cpp\src\tests\logging.cpp:345: foo
> critical null\x00tab space newline
> \x80\x99\xFF\x00
> critical ..\..\..\qpid\cpp\src\tests\logging.cpp:345: foo
> critical null\x00tab space newline
> \x80\x99\xFF\x00
> critical ..\..\..\qpid\cpp\src\tests\logging.cpp:345: foo
> critical null\x00tab space newline
> \x80\x99\xFF\x00
> ]
> *../../../qpid/cpp/src/tests/Uuid.cpp(58): error in
"testUuidIstream":
> check uui
> d == sample failed
> *../../../qpid/cpp/src/tests/Uuid.cpp(66): error in
"testUuidOstream":
> check out
> .str() == sampleStr failed [ba284e1b-a12f-d211-883f-b9a761bde3fb !=
> 1b4e28ba-2fa
> 1-11d2-883f-b9a761bde3fb]
> ******unknown location(0): fatal error in "testOpenFailure": memory
> access viola
> tion occurred at address 0xdddddddd, while attempting to read
> inaccessible data
This is "normal" - I tracked it once to a different behavior between
Microsoft and gcc STL iterators or something similar.
> ..\..\..\qpid\cpp\src\tests\ClientSessionTest.cpp(252): last
> checkpoint
> *************
> *** 5 failures detected in test suite "Master Test Suite"
> Detected memory leaks!
> ... and a long list of leaked blocks...
Yes, once it crashes there are leaks galore. They will be looked at
when unit_test doesn't crash.
-Steve
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org