| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@680750 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
running against an external java broker, however we seem to get past basic connection negotiation now
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@680602 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
buffer that does opportunistic write batching. Fixed error handling and shutdown for the io transport. Switched default from mina to the io transport for the 0-10 client. Modified InputHandler to accumulate bytes in the outer loop and simplified the state machine accordingly. These changes should address QPID-1188, prevent the Java client from running out of memory when writing messages faster than the network and/or broker can keep up, and in general improve performance.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@678848 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
transport.Connection uses a logging wrapper but in my haste to make the format the same in AMQProtocolHandler hadn't checked the output was as expected. Was missing the String.format. Also there was an extra debug level output of the sent frame.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@677525 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
standardized the protocol output format between 0-8/0-9 and 0-10
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@677319 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
Broker
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@677258 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@677257 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@677256 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
should JIT out if disabled. To enable set -Damqj.protocol.logging.level=info
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@676982 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
so that exceptions are not lost. In performing the changes I noted that the AMQStateManager is only used for connection creation in the 08/09 codepath. Now this may be due to the fact that we don't currently need to wait on any other states. We need to improve our testing of error conditions for all protcol versions.
Changes Summary:
The MethodHandlers had their AMQStateManager parameters swapped for AMQSession as that is what they all cared about.
The BlockingMethodFrameListener was used as a basis to create a generic BlockingWaiter which is now used by StateWaiter,
There is probably scope to refactor the AMQStateManager and the parts of the AMQProtocolHandler that deal with the _frameListeners into a generic class but that can be looked at as part of a wider client refactor.
Additionally tests were updated such as SimpleACLTest and ConnectionTest as they were expecting JMSExceptions from the constructor but the JMS API does not demand that and AMQExceptions are now correctly being thrown.
The SimpleACLTest also required a change to AMQSession.
The test calls send which will cause the connection to be closed asynchrously due to a permission violation. As this exception is not expected and is asynchorous to the client code it cannot be directly thrown. The solution is to record this exception in the AMQStateManager, it can tell that there are no waiters for the exception so it can record the value.(Potential exists to alert if the exception is overwritten but I don't think this is required right now)
When the AMQSession checks that the connection is closed it is then possible to check if the current State is CLOSED and if we have an exception sitting in the AMQStateManager. If all these are true we can attach the AMQStateManager exception to the IllegalState Exception that is normally thrown when the Session is closed.
This maintains JMS Compliance and allows us to discover the cause of the failure, SimpleACLTest was updated by removing the IllegalState catch section that was causing the test to silently fail.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@676978 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
setup and tear down of Connections.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@676973 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
QpidTestCase. Removed VMTestCase and all references to it, it was only used in JUnit4 testSuite wrappers. Rather than move QpidTestCase to a new module all client tests have that require this class have been moved to systests.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@676969 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@676886 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@675433 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
ConnectionEvent, this removes the overhead of creating ConnectionEvents
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@675397 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- added batched writes of commands/controls issued on a session
- copy fragmented frames and segments rather than trying to decode
them piecemeal, removed FragmentDecoder
- added caching for str8 encode/decode
- compute sizes as we encode by going back and filling in the amount
of bytes written rather than computing it up front
- added SYNC option to commands
- renamed NO_OPTION argument to NONE
- added a timeout to Client.java
- removed use of UUID.fromString in BasicMessageProducer_0_10.java
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@675165 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
| |
message listener has been set to be delivered.
BasicMessageConsumer.java: If there are messages on the synchronous queue when a message listener is set, deliver them to it since they can no longer be consumed().
MessageListenerTest.java: Uncomment code that will make the test fail and demonstrate the bug
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@674747 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
| |
isEmpty in the String class.
This fails the build in Java 1.5. I modified it to use str.length == 0 which has the same effect.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@674389 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
| |
so while these race conditions are addressed I've converted the ConnectionTest to QpidTestCase and use it to skip the PasswordFailureConnection.
junit.framework.AssertionFailedError: No cause set
at org.apache.qpid.test.unit.client.connection.ConnectionTest.testPasswordFailureConnection(ConnectionTest.java:145)
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@674058 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
AMQConnection.java: Refactor listener and stack exceptions in a list. Add get lastException, which can now be any Exception. Don't set connected, let the delegate decide.
AMQConnectionDelegate_8_0.java, AMQConnectionDelete_0_10.java: set _connected to true if we suceed
AMQProtocolHandler.java: attainState can now throw any sort of Exception
AMQStateManager.java: attainState can now throw any Exception
ConnectionTest.java: check that exception cause is not null
AMQConnectionFailureException.java: Add ability to store a Collection of Exceptions in case there are multiple possible causes of the failure. Which there shouldn't be, but it can happen.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@673688 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
| |
from rhs"
This reverts commit 673343.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@673401 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@673351 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@673350 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
| |
still needs love to do with railover, see QPID-959
AMQConnection.java: use 8_0 delegate for in-vm tests
AMQConnectionDelegate_0_9.java: add subclass for class.forname'ing
rename AMQConnectionDelegate_0_8.java to AMQConnectionDelegate_8_0.java to match protocol version properly
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@673347 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
AMQConnection: Refactor listener and remove list, we're only interested in the most recent one anyway. Add get/set for lastException, which can now be any Exception
AMQConnectionDelegate_0_8.java: Stop masking/stackign exceptions, just throw them.
AMQProtocolHandler.java: attainState can now throw any sort of Exception
AMQStateManager.java: attainState can now throw any Exception
ConnectionTest.java: check that exception cause is not null
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@673343 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@673074 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@673058 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@672763 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
max pre-fetch=1
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@671887 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
responsible for closing the queue browser when all the messages have been processed.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@671845 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
messages are not pre-fetched
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@671825 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
at all, it's gross.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@671519 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
messages once maxPrefetch / 2 has been reached
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@669917 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@669431 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
mark to track dispatched messages
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@668311 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@666296 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@665841 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
the negotiated channel-max; also removed unnecessary catches that were swallowing stack traces from several tests
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@664339 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@664153 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@664129 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@663874 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
instead of sync command on message transfer
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@663813 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
now waits for the session to be detached before returning, this guarantees we won't have any active sessions when the connection close is attempted
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@663677 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@663507 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
and then still available.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@663364 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
sent before credits dry up
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@663124 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
flag specifying whether to send an messageAccept)
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@662827 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@662755 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
sessionCompleted when all expected messages have been received.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@662665 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@662397 13f79535-47bb-0310-9956-ffa450edef68
|