qpid-dispatch git commit: DISPATCH-1041 - Uncommented test that was accidentally commented out
Repository: qpid-dispatch Updated Branches: refs/heads/master a9bf29237 -> af997544e DISPATCH-1041 - Uncommented test that was accidentally commented out Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/af997544 Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/af997544 Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/af997544 Branch: refs/heads/master Commit: af997544e1c7954f5ff0bdb3b17bdc69c21557d9 Parents: a9bf292 Author: Ganesh Murthy Authored: Mon Jun 25 14:04:05 2018 -0400 Committer: Ganesh Murthy Committed: Mon Jun 25 14:04:05 2018 -0400 -- tests/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/af997544/tests/CMakeLists.txt -- diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index a16653a..408c574 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -106,7 +106,7 @@ foreach(py_test_module system_tests_topology_disposition system_tests_topology_addition system_tests_disallow_link_resumable_link_route -#system_tests_global_delivery_counts +system_tests_global_delivery_counts system_tests_exchange_bindings system_tests_cmdline_parsing system_tests_bad_configuration - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
qpid-jms git commit: QPIDJMS-395 Resend message in flight when remote closed
Repository: qpid-jms Updated Branches: refs/heads/master c66d88811 -> fe0307b58 QPIDJMS-395 Resend message in flight when remote closed When the remote closes the connection and an inflight send is outstanding we should handle the close and resend those messages that are still awaiting dispositions in the same manner as we do when the connection unexpectedly drops when using the Failover feature. Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/fe0307b5 Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/fe0307b5 Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/fe0307b5 Branch: refs/heads/master Commit: fe0307b58beb7ec344f728e34a7ca0e3ef103add Parents: c66d888 Author: Timothy Bish Authored: Mon Jun 25 13:38:30 2018 -0400 Committer: Timothy Bish Committed: Mon Jun 25 13:38:30 2018 -0400 -- .../java/org/apache/qpid/jms/JmsConnection.java | 5 +- .../jms/provider/ProviderClosedException.java | 8 +- .../qpid/jms/provider/ProviderException.java| 32 ++ .../jms/provider/ProviderFailedException.java | 4 +- .../provider/ProviderRedirectedException.java | 2 +- .../ProviderResourceClosedException.java| 30 ++ .../qpid/jms/provider/amqp/AmqpConnection.java | 21 .../failover/FailoverIntegrationTest.java | 105 ++- 8 files changed, 195 insertions(+), 12 deletions(-) -- http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/fe0307b5/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnection.java -- diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnection.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnection.java index 52c314d..7d09a9c 100644 --- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnection.java +++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnection.java @@ -76,9 +76,8 @@ import org.apache.qpid.jms.policy.JmsPresettlePolicy; import org.apache.qpid.jms.policy.JmsRedeliveryPolicy; import org.apache.qpid.jms.provider.AsyncResult; import org.apache.qpid.jms.provider.Provider; -import org.apache.qpid.jms.provider.ProviderClosedException; import org.apache.qpid.jms.provider.ProviderConstants.ACK_TYPE; -import org.apache.qpid.jms.provider.ProviderFailedException; +import org.apache.qpid.jms.provider.ProviderException; import org.apache.qpid.jms.provider.ProviderFuture; import org.apache.qpid.jms.provider.ProviderListener; import org.apache.qpid.jms.provider.ProviderSynchronization; @@ -230,7 +229,7 @@ public class JmsConnection implements AutoCloseable, Connection, TopicConnection } LOG.debug("Failed destroying Connection resource: {}", ex.getMessage()); } -} catch(ProviderClosedException | ProviderFailedException pfe) { +} catch(ProviderException prodiverError) { LOG.debug("Ignoring provider exception during connection close"); } finally { requests.remove(request); http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/fe0307b5/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/ProviderClosedException.java -- diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/ProviderClosedException.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/ProviderClosedException.java index 0fbf753..cc7c140 100644 --- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/ProviderClosedException.java +++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/ProviderClosedException.java @@ -16,13 +16,15 @@ */ package org.apache.qpid.jms.provider; -import java.io.IOException; - -public class ProviderClosedException extends IOException { +public class ProviderClosedException extends ProviderException { private static final long serialVersionUID = 1L; public ProviderClosedException(String message) { super(message); } + +public ProviderClosedException(String message, Throwable cause) { +super(message, cause); +} } http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/fe0307b5/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/ProviderException.java -- diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/ProviderException.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/ProviderException.java new file mode 100644 index 000..e680df6 --- /dev/null +++
qpid-proton git commit: PROTON-1866: provide method to determine whether expiry policy was set explicitly or not
Repository: qpid-proton Updated Branches: refs/heads/master b1b8322b2 -> ccb9e5a38 PROTON-1866: provide method to determine whether expiry policy was set explicitly or not Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/ccb9e5a3 Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/ccb9e5a3 Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/ccb9e5a3 Branch: refs/heads/master Commit: ccb9e5a388022e529502dcc547b7862b2185d6bc Parents: b1b8322 Author: Gordon Sim Authored: Mon Jun 25 17:52:19 2018 +0100 Committer: Gordon Sim Committed: Mon Jun 25 17:52:40 2018 +0100 -- c/include/proton/terminus.h | 11 ++ c/src/core/engine-internal.h | 1 + c/src/core/engine.c | 8 c/src/core/transport.c | 43 +++ 4 files changed, 41 insertions(+), 22 deletions(-) -- http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/ccb9e5a3/c/include/proton/terminus.h -- diff --git a/c/include/proton/terminus.h b/c/include/proton/terminus.h index b2344c0..096ab17 100644 --- a/c/include/proton/terminus.h +++ b/c/include/proton/terminus.h @@ -191,6 +191,15 @@ PN_EXTERN int pn_terminus_set_durability(pn_terminus_t *terminus, PN_EXTERN pn_expiry_policy_t pn_terminus_get_expiry_policy(pn_terminus_t *terminus); /** + * Return true if the terminus has an explicit expiry policy set, + * false if it does not. + * + * @param[in] terminus a terminus object + * @return whether the terminus has an explicit expiry-policy + */ +PN_EXTERN bool pn_terminus_has_expiry_policy(const pn_terminus_t *terminus); + +/** * Set the expiry policy of a terminus object. * * @param[in] terminus a terminus object @@ -199,6 +208,8 @@ PN_EXTERN pn_expiry_policy_t pn_terminus_get_expiry_policy(pn_terminus_t *termin */ PN_EXTERN int pn_terminus_set_expiry_policy(pn_terminus_t *terminus, pn_expiry_policy_t policy); + + /** * Get the timeout of a terminus object. * http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/ccb9e5a3/c/src/core/engine-internal.h -- diff --git a/c/src/core/engine-internal.h b/c/src/core/engine-internal.h index b1c6123..66a892d 100644 --- a/c/src/core/engine-internal.h +++ b/c/src/core/engine-internal.h @@ -274,6 +274,7 @@ struct pn_terminus_t { pn_data_t *filter; pn_durability_t durability; pn_expiry_policy_t expiry_policy; + bool has_expiry_policy; pn_seconds_t timeout; pn_terminus_type_t type; pn_distribution_mode_t distribution_mode; http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/ccb9e5a3/c/src/core/engine.c -- diff --git a/c/src/core/engine.c b/c/src/core/engine.c index 070c751..e70117e 100644 --- a/c/src/core/engine.c +++ b/c/src/core/engine.c @@ -1085,6 +1085,7 @@ static void pni_terminus_init(pn_terminus_t *terminus, pn_terminus_type_t type) terminus->type = type; terminus->address = pn_string(NULL); terminus->durability = PN_NONDURABLE; + terminus->has_expiry_policy = false; terminus->expiry_policy = PN_EXPIRE_WITH_SESSION; terminus->timeout = 0; terminus->dynamic = false; @@ -1267,10 +1268,16 @@ pn_expiry_policy_t pn_terminus_get_expiry_policy(pn_terminus_t *terminus) return terminus ? terminus->expiry_policy : (pn_expiry_policy_t) 0; } +bool pn_terminus_has_expiry_policy(const pn_terminus_t *terminus) +{ +return terminus && terminus->has_expiry_policy; +} + int pn_terminus_set_expiry_policy(pn_terminus_t *terminus, pn_expiry_policy_t expiry_policy) { if (!terminus) return PN_ARG_ERR; terminus->expiry_policy = expiry_policy; + terminus->has_expiry_policy = true; return 0; } @@ -1340,6 +1347,7 @@ int pn_terminus_copy(pn_terminus_t *terminus, pn_terminus_t *src) int err = pn_terminus_set_address(terminus, pn_terminus_get_address(src)); if (err) return err; terminus->durability = src->durability; + terminus->has_expiry_policy = src->has_expiry_policy; terminus->expiry_policy = src->expiry_policy; terminus->timeout = src->timeout; terminus->dynamic = src->dynamic; http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/ccb9e5a3/c/src/core/transport.c -- diff --git a/c/src/core/transport.c b/c/src/core/transport.c index bfa66c1..dde4b37 100644 --- a/c/src/core/transport.c +++ b/c/src/core/transport.c @@ -1274,21 +1274,18 @@ static pn_link_t *pni_find_link(pn_session_t *ssn, pn_bytes_t name, bool is_send return NULL; } -static pn_expiry_policy_t symbol2policy(pn_bytes_t symbol) +static void
qpid-dispatch git commit: DISPATCH-1041 - Add tests to validate each global delivery count accurately
Repository: qpid-dispatch Updated Branches: refs/heads/master 2e766f35c -> a9bf29237 DISPATCH-1041 - Add tests to validate each global delivery count accurately Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/a9bf2923 Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/a9bf2923 Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/a9bf2923 Branch: refs/heads/master Commit: a9bf2923717d3ae9efb36fe72284a544e02d9b44 Parents: 2e766f3 Author: Ganesh Murthy Authored: Fri Jun 22 10:34:10 2018 -0400 Committer: Ganesh Murthy Committed: Mon Jun 25 12:06:00 2018 -0400 -- tests/CMakeLists.txt | 1 + tests/system_tests_global_delivery_counts.py | 911 ++ 2 files changed, 912 insertions(+) -- http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/a9bf2923/tests/CMakeLists.txt -- diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 159521d..a16653a 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -106,6 +106,7 @@ foreach(py_test_module system_tests_topology_disposition system_tests_topology_addition system_tests_disallow_link_resumable_link_route +#system_tests_global_delivery_counts system_tests_exchange_bindings system_tests_cmdline_parsing system_tests_bad_configuration http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/a9bf2923/tests/system_tests_global_delivery_counts.py -- diff --git a/tests/system_tests_global_delivery_counts.py b/tests/system_tests_global_delivery_counts.py new file mode 100644 index 000..db4a868 --- /dev/null +++ b/tests/system_tests_global_delivery_counts.py @@ -0,0 +1,911 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# + +from time import sleep + +from proton import Condition, Message, Delivery, PENDING, ACCEPTED, REJECTED, Url, symbol, Timeout +from system_test import TestCase, Qdrouterd, TIMEOUT +from proton.handlers import MessagingHandler +from proton.reactor import Container +from qpid_dispatch.management.client import Node + + +class OneRouterModifiedTest(TestCase): +@classmethod +def setUpClass(cls): +"""Start three routers""" +super(OneRouterModifiedTest, cls).setUpClass() + +listen_port = cls.tester.get_port() +config = Qdrouterd.Config([ +('router', {'mode': 'standalone', 'id': 'A'}), +('listener', {'port': listen_port, 'authenticatePeer': False, 'saslMechanisms': 'ANONYMOUS'})]) + +cls.router = Qdrouterd(name="A", config=config, wait=True) + +def test_one_router_modified_counts(self): +address = self.router.addresses[0] + +test = ModifieddDeliveriesTest(address) +test.run() + +local_node = Node.connect(address, timeout=TIMEOUT) +outs = local_node.query(type='org.apache.qpid.dispatch.router') + +deliveries_modified_index = outs.attribute_names.index('modifiedDeliveries') + +results = outs.results[0] + +self.assertEqual(results[deliveries_modified_index], 10) + + +class OneRouterRejectedTest(TestCase): +@classmethod +def setUpClass(cls): +"""Start three routers""" +super(OneRouterRejectedTest, cls).setUpClass() + +listen_port = cls.tester.get_port() +config = Qdrouterd.Config([ +('router', {'mode': 'standalone', 'id': 'A'}), +('listener', {'port': listen_port, 'authenticatePeer': False, 'saslMechanisms': 'ANONYMOUS'})]) + +cls.router = Qdrouterd(name="A", config=config, wait=True) + +def test_one_router_rejected_counts(self): +address = self.router.addresses[0] + +test = RejectedDeliveriesTest(address) +test.run() + +local_node = Node.connect(address, timeout=TIMEOUT) +outs = local_node.query(type='org.apache.qpid.dispatch.router') + +deliveries_rejected_index =
qpid-jms git commit: QPIDJMS-396 Allow for faster reaction times on sync operations
Repository: qpid-jms Updated Branches: refs/heads/master 02c76f64c -> c66d88811 QPIDJMS-396 Allow for faster reaction times on sync operations For sync operations from the JMS layer into the provider we can more quickly process the events by using a spin-wait future that checks in a short spin for the completion of the target event. The spin will back off and eventually back down to a parked wait that will be signalled by the normal wait / notify pattern. Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/c66d8881 Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/c66d8881 Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/c66d8881 Branch: refs/heads/master Commit: c66d888114021da31d9032c841c08903dd31cc89 Parents: 02c76f6 Author: Timothy Bish Authored: Mon Jun 25 13:05:07 2018 -0400 Committer: Timothy Bish Committed: Mon Jun 25 13:05:07 2018 -0400 -- .../qpid/jms/provider/ProviderFuture.java | 164 --- .../qpid/jms/provider/ProviderFutureTest.java | 11 ++ 2 files changed, 156 insertions(+), 19 deletions(-) -- http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/c66d8881/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/ProviderFuture.java -- diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/ProviderFuture.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/ProviderFuture.java index 01b3c6e..c708593 100644 --- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/ProviderFuture.java +++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/ProviderFuture.java @@ -17,9 +17,9 @@ package org.apache.qpid.jms.provider; import java.io.IOException; -import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicIntegerFieldUpdater; +import java.util.concurrent.locks.LockSupport; import org.apache.qpid.jms.util.IOExceptionSupport; @@ -28,15 +28,30 @@ import org.apache.qpid.jms.util.IOExceptionSupport; */ public class ProviderFuture implements AsyncResult { -private static final AtomicIntegerFieldUpdater COMPLETE_UPDATER = -AtomicIntegerFieldUpdater.newUpdater(ProviderFuture.class, "complete"); +// Using a progressive wait strategy helps to avoid await happening before countDown +// and avoids expensive thread signaling +private static final int SPIN_COUNT = 10; +private static final int YIELD_COUNT = 100; +private static final int TINY_PARK_COUNT = 1000; +private static final int TINY_PARK_NANOS = 1; +private static final int SMALL_PARK_COUNT = 101_000; +private static final int SMALL_PARK_NANOS = 10_000; -private final CountDownLatch latch = new CountDownLatch(1); -private final ProviderSynchronization synchronization; +// States used to track progress of this future +private static final int INCOMPLETE = 0; +private static final int COMPLETING = 1; +private static final int SUCCESS = 2; +private static final int FAILURE = 3; + +private static final AtomicIntegerFieldUpdater STATE_FIELD_UPDATER = +AtomicIntegerFieldUpdater.newUpdater(ProviderFuture.class,"state"); + +private volatile int state = INCOMPLETE; private volatile Throwable error; -@SuppressWarnings("unused") -private volatile int complete; +private int waiting; + +private final ProviderSynchronization synchronization; public ProviderFuture() { this(null); @@ -48,27 +63,41 @@ public class ProviderFuture implements AsyncResult { @Override public boolean isComplete() { -return latch.getCount() == 0; +return state > COMPLETING; } @Override public void onFailure(Throwable result) { -if (COMPLETE_UPDATER.compareAndSet(this, 0, 1)) { +if (STATE_FIELD_UPDATER.compareAndSet(this, INCOMPLETE, COMPLETING)) { error = result; if (synchronization != null) { synchronization.onPendingFailure(error); } -latch.countDown(); + +STATE_FIELD_UPDATER.lazySet(this, FAILURE); + +synchronized(this) { +if (waiting > 0) { +notifyAll(); +} +} } } @Override public void onSuccess() { -if (COMPLETE_UPDATER.compareAndSet(this, 0, 1)) { +if (STATE_FIELD_UPDATER.compareAndSet(this, INCOMPLETE, COMPLETING)) { if (synchronization != null) { synchronization.onPendingSuccess(); } -latch.countDown(); + +STATE_FIELD_UPDATER.lazySet(this, SUCCESS); + +
[2/8] qpid-dispatch git commit: DISPATCH-1049 Add console tests
http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/b5deb035/console/stand-alone/plugin/js/topology/qdrTopology.js -- diff --git a/console/stand-alone/plugin/js/topology/qdrTopology.js b/console/stand-alone/plugin/js/topology/qdrTopology.js index 15e73c4..9a48ba2 100644 --- a/console/stand-alone/plugin/js/topology/qdrTopology.js +++ b/console/stand-alone/plugin/js/topology/qdrTopology.js @@ -16,1593 +16,1091 @@ KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. */ -'use strict'; -/* global angular d3 separateAddresses Traffic */ +/* global angular d3 */ /** * @module QDR */ -var QDR = (function(QDR) { - - /** - * @method TopologyController - * - * Controller that handles the QDR topology page - */ - - QDR.module.controller('QDR.TopologyController', ['$scope', '$rootScope', 'QDRService', '$location', '$timeout', '$uibModal', '$sce', -function($scope, $rootScope, QDRService, $location, $timeout, $uibModal, $sce) { - - const TOPOOPTIONSKEY = 'topoOptions'; - const radius = 25; - const radiusNormal = 15; - - // - nodes is an array of router/client info. these are the circles - // - links is an array of connections between the routers. these are the lines with arrows - let nodes = []; - let links = []; - let forceData = {nodes: nodes, links: links}; - let urlPrefix = $location.absUrl(); - urlPrefix = urlPrefix.split('#')[0]; - QDR.log.debug('started QDR.TopologyController with urlPrefix: ' + urlPrefix); - - $scope.legendOptions = angular.fromJson(localStorage[TOPOOPTIONSKEY]) || {showTraffic: false, trafficType: 'dots'}; - if (!$scope.legendOptions.trafficType) -$scope.legendOptions.trafficType = 'dots'; - $scope.legend = {status: {legendOpen: true, optionsOpen: true}}; - $scope.legend.status.optionsOpen = $scope.legendOptions.showTraffic; - let traffic = new Traffic($scope, $timeout, QDRService, separateAddresses, -radius, forceData, nextHop, $scope.legendOptions.trafficType, urlPrefix); - - // the showTraaffic checkbox was just toggled (or initialized) - $scope.$watch('legend.status.optionsOpen', function () { -$scope.legendOptions.showTraffic = $scope.legend.status.optionsOpen; -localStorage[TOPOOPTIONSKEY] = JSON.stringify($scope.legendOptions); -if ($scope.legend.status.optionsOpen) { - traffic.start(); -} else { - traffic.stop(); - traffic.remove(); - restart(); -} - }); - $scope.$watch('legendOptions.trafficType', function () { -localStorage[TOPOOPTIONSKEY] = JSON.stringify($scope.legendOptions); -if ($scope.legendOptions.showTraffic) { - restart(); - traffic.setAnimationType($scope.legendOptions.trafficType, separateAddresses, radius); - traffic.start(); -} - }); - - // mouse event vars - let selected_node = null, -selected_link = null, -mousedown_link = null, -mousedown_node = null, -mouseover_node = null, -mouseup_node = null, -initial_mouse_down_position = null; - - $scope.schema = 'Not connected'; - - $scope.contextNode = null; // node that is associated with the current context menu - $scope.isRight = function(mode) { -return mode.right; - }; - - var setNodesFixed = function (name, b) { -nodes.some(function (n) { - if (n.name === name) { -n.fixed = b; -return true; - } -}); - }; - $scope.setFixed = function(b) { -if ($scope.contextNode) { - $scope.contextNode.fixed = b; - setNodesFixed($scope.contextNode.name, b); - savePositions(); -} +import { QDRLogger, QDRRedirectWhenConnected } from '../qdrGlobals.js'; +import { Traffic } from './traffic.js'; +import { separateAddresses } from '../chord/filters.js'; +import { Nodes } from './nodes.js'; +import { Links } from './links.js'; +import { nextHop, connectionPopupHTML } from './topoUtils.js'; +/** + * @module QDR + */ +export class TopologyController { + constructor(QDRService, $scope, $log, $rootScope, $location, $timeout, $uibModal, $sce) { +this.controllerName = 'QDR.TopologyController'; + +let QDRLog = new QDRLogger($log, 'TopologyController'); +const TOPOOPTIONSKEY = 'topoOptions'; +const radius = 25; +const radiusNormal = 15; + +// - nodes is an array of router/client info. these are the circles +// - links is an array of connections between the routers. these are the lines with arrows +let nodes = new Nodes(QDRService, QDRLog); +let links = new Links(QDRService, QDRLog); +let forceData = {nodes: nodes, links: links}; +// urlPrefix is used when referring to
[3/8] qpid-dispatch git commit: DISPATCH-1049 Add console tests
http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/b5deb035/console/stand-alone/plugin/js/qdrOverview.js -- diff --git a/console/stand-alone/plugin/js/qdrOverview.js b/console/stand-alone/plugin/js/qdrOverview.js index 2f784e7..536d93a 100644 --- a/console/stand-alone/plugin/js/qdrOverview.js +++ b/console/stand-alone/plugin/js/qdrOverview.js @@ -16,21 +16,15 @@ KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. */ -'use strict'; /* global angular d3 */ +import { QDRFolder, QDRLeaf, QDRCore, QDRLogger, QDRTemplatePath, QDRRedirectWhenConnected } from './qdrGlobals.js'; -/** - * @module QDR - */ -var QDR = (function (QDR) { +export class OverviewController { + constructor(QDRService, $scope, $log, $location, $timeout, $uibModal) { +this.controllerName = 'QDR.OverviewController'; - /** - * - * Controller that handles the QDR overview page - */ - QDR.module.controller('QDR.OverviewController', ['$scope', 'QDRService', '$location', '$timeout', '$uibModal', 'uiGridConstants', function($scope, QDRService, $location, $timeout, $uibModal) { - -QDR.log.debug('QDR.OverviewControll started with location of ' + $location.path() + ' and connection of ' + QDRService.management.connection.is_connected()); +let QDRLog = new QDRLogger($log, 'OverviewController'); +QDRLog.debug('QDR.OverviewControll started with location of ' + $location.path() + ' and connection of ' + QDRService.management.connection.is_connected()); let updateIntervalHandle = undefined; const updateInterval = 5000; @@ -46,14 +40,14 @@ var QDR = (function (QDR) { content: ' Attributes', title: 'View the attribute values on your selection', isValid: function () { return true; }, - href: function () { return '#/' + QDR.pluginName + '/attributes'; }, + href: function () { return '#/attributes'; }, index: 0 }, { content: ' Operations', title: 'Execute operations on your selection', isValid: function () { return true; }, - href: function () { return '#/' + QDR.pluginName + '/operations'; }, + href: function () { return '#/operations'; }, index: 1 }]; $scope.activeTab = $scope.subLevelTabs[0]; @@ -72,7 +66,7 @@ var QDR = (function (QDR) { {title: 'Overview', name: 'Overview', right: false} ]; -$scope.tmplOverviewTree = QDR.templatePath + 'tmplOverviewTree.html'; +$scope.tmplOverviewTree = QDRTemplatePath + 'tmplOverviewTree.html'; $scope.templates = [ { name: 'Charts', url: 'overviewCharts.html'}, { name: 'Routers', url: 'routers.html'}, @@ -188,7 +182,7 @@ var QDR = (function (QDR) { if (nodes[node]['connection'].results[i][0] === 'inter-router') ++connections; } - let routerRow = {connections: connections, nodeId: node, id: QDRService.management.topology.nameFromId(node)}; + let routerRow = {connections: connections, nodeId: node, id: QDRService.utilities.nameFromId(node)}; nodes[node]['router'].attributeNames.forEach( function (routerAttr, i) { if (routerAttr !== 'routerId' && routerAttr !== 'id') routerRow[routerAttr] = nodes[node]['router'].results[0][i]; @@ -441,7 +435,7 @@ var QDR = (function (QDR) { } return include; }); - QDR.log.info('setting linkFields in updateLinkGrid'); + QDRLog.info('setting linkFields in updateLinkGrid'); $scope.linkFields = filteredLinks; expandGridToContent('Links', $scope.linkFields.length); getLinkPagedData($scope.linkPagingOptions.pageSize, $scope.linkPagingOptions.currentPage); @@ -594,7 +588,7 @@ var QDR = (function (QDR) { var getAllLinkFields = function (completionCallbacks, selectionCallback) { if (!$scope.linkFields) { -QDR.log.debug('$scope.linkFields was not defined!'); +QDRLog.debug('$scope.linkFields was not defined!'); return; } let nodeIds = QDRService.management.topology.nodeIdList(); @@ -611,10 +605,10 @@ var QDR = (function (QDR) { if (elapsed < 0) return 0; let delivered = QDRService.utilities.valFor(response.attributeNames, result, 'deliveryCount') - oldname[0].rawDeliveryCount; - //QDR.log.debug("elapsed " + elapsed + " delivered " + delivered) + //QDRLog.debug("elapsed " + elapsed + " delivered " + delivered) return elapsed > 0 ? parseFloat(Math.round((delivered/elapsed) * 100) / 100).toFixed(2) : 0; } else { - //QDR.log.debug("unable to find old linkName") + //QDRLog.debug("unable to find old linkName") return 0; } }; @@ -637,7 +631,7 @@ var QDR = (function (QDR) { return QDRService.utilities.pretty(und + uns);
[1/8] qpid-dispatch git commit: DISPATCH-1049 Add console tests
Repository: qpid-dispatch Updated Branches: refs/heads/master af997544e -> b5deb0357 http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/b5deb035/console/stand-alone/plugin/js/topology/topoUtils.js -- diff --git a/console/stand-alone/plugin/js/topology/topoUtils.js b/console/stand-alone/plugin/js/topology/topoUtils.js new file mode 100644 index 000..48d4cf8 --- /dev/null +++ b/console/stand-alone/plugin/js/topology/topoUtils.js @@ -0,0 +1,225 @@ +/* +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you under the Apache License, Version 2.0 (the +"License"); you may not use this file except in compliance +with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, +software distributed under the License is distributed on an +"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, either express or implied. See the License for the +specific language governing permissions and limitations +under the License. +*/ +// highlight the paths between the selected node and the hovered node +function findNextHopNode(from, d, QDRService, selected_node, nodes) { + // d is the node that the mouse is over + // from is the selected_node + if (!from) +return null; + + if (from == d) +return selected_node; + + let sInfo = QDRService.management.topology.nodeInfo()[from.key]; + + // find the hovered name in the selected name's .router.node results + if (!sInfo['router.node']) +return null; + let aAr = sInfo['router.node'].attributeNames; + let vAr = sInfo['router.node'].results; + for (let hIdx = 0; hIdx < vAr.length; ++hIdx) { +let addrT = QDRService.utilities.valFor(aAr, vAr[hIdx], 'id'); +if (addrT == d.name) { + let next = QDRService.utilities.valFor(aAr, vAr[hIdx], 'nextHop'); + return (next == null) ? nodes.nodeFor(addrT) : nodes.nodeFor(next); +} + } + return null; +} +export function nextHop(thisNode, d, nodes, links, QDRService, selected_node, cb) { + if ((thisNode) && (thisNode != d)) { +let target = findNextHopNode(thisNode, d, QDRService, selected_node, nodes); +if (target) { + let hnode = nodes.nodeFor(thisNode.name); + let hlLink = links.linkFor(hnode, target); + if (hlLink) { +if (cb) { + cb(hlLink, hnode, target); +} + } + else +target = null; +} +nextHop(target, d, nodes, links, QDRService, selected_node, cb); + } +} + +export function connectionPopupHTML (d, QDRService) { + let getConnsArray = function (d, conn) { +let conns = [conn]; +if (d.cls === 'small') { + conns = []; + let normals = d.target.normals ? d.target.normals : d.source.normals; + for (let n=0; n bsum ? -1 : 0; +}); +let HTMLHeading = 'Links'; +let HTML = ''; +// copy of fields since we may be prepending an address +let th = fields.slice(); +// convert to actual attribute names +let td = fields.map( function (f) {return f + 'Count';}); +th.unshift('dir'); +td.unshift('linkDir'); +// add an address field if any of the links had an owningAddress +if (hasAddress) { + th.unshift('address'); + td.unshift('owningAddr'); +} +HTML += ('' + th.join('') + ''); +// add rows to the table for each link +for (let l=0; l=max_links) { +HTMLHeading = `Top ${max_links} Links`; +break; + } + let link = links[l]; + let vals = td.map( function (f) { +if (f === 'owningAddr') { + let identity = QDRService.utilities.identity_clean(link.owningAddr); + return QDRService.utilities.addr_text(identity); +} +return link[f]; + }); + let joinedVals = fnJoin(vals, function (v1) { +return ['', QDRService.utilities.pretty(v1 || '0')]; + }); + HTML += ` ${joinedVals} `; +} +HTML += ''; +return HTMLHeading + HTML; + }; + let left = d.left ? d.source : d.target; + // left is the connection with dir 'in' + let right = d.left ? d.target : d.source; + let onode = QDRService.management.topology.nodeInfo()[left.key]; + let connSecurity = function (conn) { +if (!conn.isEncrypted) + return 'no-security'; +if (conn.sasl === 'GSSAPI') + return 'Kerberos'; +return conn.sslProto + '(' + conn.sslCipher + ')'; + }; + let connAuth = function (conn) { +if (!conn.isAuthenticated) + return 'no-auth'; +let sasl = conn.sasl; +if (sasl === 'GSSAPI') + sasl = 'Kerberos'; +else if (sasl === 'EXTERNAL') + sasl = 'x.509'; +else if (sasl === 'ANONYMOUS') + return 'anonymous-user'; +if (!conn.user) + return sasl; +
[8/8] qpid-dispatch git commit: DISPATCH-1049 Add console tests
DISPATCH-1049 Add console tests Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/b5deb035 Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/b5deb035 Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/b5deb035 Branch: refs/heads/master Commit: b5deb03579a7dedd81a56f32baa3e5f4b5b57136 Parents: af99754 Author: Ernest Allen Authored: Mon Jun 25 17:25:50 2018 -0400 Committer: Ernest Allen Committed: Mon Jun 25 17:25:50 2018 -0400 -- .gitignore |2 +- console/CMakeLists.txt | 207 +- console/stand-alone/.babelrc| 21 + console/stand-alone/gulpfile.js | 101 +- console/stand-alone/index.html | 11 +- console/stand-alone/main.js | 254 ++ console/stand-alone/modules/connection.js | 347 +++ console/stand-alone/modules/correlator.js | 50 + console/stand-alone/modules/management.js | 63 + console/stand-alone/modules/topology.js | 403 +++ console/stand-alone/modules/utilities.js| 115 + console/stand-alone/package-lock.json | 2519 ++ console/stand-alone/package.json| 24 +- console/stand-alone/plugin/css/dispatch.css |4 +- console/stand-alone/plugin/html/qdrList.html| 53 +- .../plugin/html/tmplChartConfig.html| 12 +- console/stand-alone/plugin/js/chord/data.js | 234 +- console/stand-alone/plugin/js/chord/filters.js | 52 +- .../plugin/js/chord/layout/layout.js|6 +- console/stand-alone/plugin/js/chord/matrix.js |3 +- console/stand-alone/plugin/js/chord/qdrChord.js | 24 +- .../plugin/js/chord/ribbon/ribbon.js|4 +- console/stand-alone/plugin/js/dispatchPlugin.js | 264 -- .../stand-alone/plugin/js/dlgChartController.js | 31 +- console/stand-alone/plugin/js/navbar.js | 140 +- .../stand-alone/plugin/js/posintDirective.js| 75 + .../stand-alone/plugin/js/qdrChartService.js| 1607 ++- console/stand-alone/plugin/js/qdrCharts.js | 33 +- console/stand-alone/plugin/js/qdrGlobals.js | 58 +- console/stand-alone/plugin/js/qdrList.js| 1732 ++-- console/stand-alone/plugin/js/qdrListChart.js | 146 - console/stand-alone/plugin/js/qdrOverview.js| 85 +- .../plugin/js/qdrOverviewChartsController.js| 18 +- .../plugin/js/qdrOverviewLogsController.js | 25 +- console/stand-alone/plugin/js/qdrSchema.js | 22 +- console/stand-alone/plugin/js/qdrService.js | 317 +-- console/stand-alone/plugin/js/qdrSettings.js| 89 +- .../plugin/js/qdrTopAddressesController.js | 16 +- console/stand-alone/plugin/js/topology/links.js | 216 ++ console/stand-alone/plugin/js/topology/nodes.js | 162 ++ .../plugin/js/topology/qdrTopology.js | 2512 +++-- .../stand-alone/plugin/js/topology/topoUtils.js | 225 ++ .../stand-alone/plugin/js/topology/traffic.js | 445 .../stand-alone/plugin/js/topology/traffic.ts | 443 --- console/stand-alone/test/filter.js | 73 + console/stand-alone/test/links.js | 82 + console/stand-alone/test/matrix.js | 51 + console/stand-alone/test/nodes.json |1 + console/stand-alone/test/utilities.js | 192 ++ console/stand-alone/tsconfig.json | 23 +- console/stand-alone/vendor-js.txt | 12 +- 51 files changed, 8155 insertions(+), 5449 deletions(-) -- http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/b5deb035/.gitignore -- diff --git a/.gitignore b/.gitignore index 49a9c44..d7c32e7 100644 --- a/.gitignore +++ b/.gitignore @@ -12,7 +12,7 @@ tests/policy-1/policy-*.json .metadata .settings console/test/topolgies/config-* -.history +.history/ .tox .vscode console/stand-alone/node_modules/ http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/b5deb035/console/CMakeLists.txt -- diff --git a/console/CMakeLists.txt b/console/CMakeLists.txt index bfd9cd8..a55b572 100644 --- a/console/CMakeLists.txt +++ b/console/CMakeLists.txt @@ -20,101 +20,122 @@ ## ## Add cmake option to choose whether to install stand-alone console ## -option(CONSOLE_INSTALL "Build and install console (requires npm)" ON) +option(CONSOLE_INSTALL "Build and install console (requires npm 5.2+)" ON) if(CONSOLE_INSTALL) - find_program(NPX_EXE npx DOC "Location of the npx task runner") -if (NPX_EXE) - - set(CONSOLE_SOURCE_DIR "${CMAKE_SOURCE_DIR}/console/stand-alone") - set(CONSOLE_BUILD_DIR
svn commit: r27723 - /dev/qpid/jms/0.34.0-rc1/
Author: robbie Date: Mon Jun 25 20:08:06 2018 New Revision: 27723 Log: add files for qpid-jms-0.34.0 (RC1) Added: dev/qpid/jms/0.34.0-rc1/ dev/qpid/jms/0.34.0-rc1/apache-qpid-jms-0.34.0-bin.tar.gz (with props) dev/qpid/jms/0.34.0-rc1/apache-qpid-jms-0.34.0-bin.tar.gz.asc (with props) dev/qpid/jms/0.34.0-rc1/apache-qpid-jms-0.34.0-bin.tar.gz.sha512 dev/qpid/jms/0.34.0-rc1/apache-qpid-jms-0.34.0-src.tar.gz (with props) dev/qpid/jms/0.34.0-rc1/apache-qpid-jms-0.34.0-src.tar.gz.asc (with props) dev/qpid/jms/0.34.0-rc1/apache-qpid-jms-0.34.0-src.tar.gz.sha512 Added: dev/qpid/jms/0.34.0-rc1/apache-qpid-jms-0.34.0-bin.tar.gz == Binary file - no diff available. Propchange: dev/qpid/jms/0.34.0-rc1/apache-qpid-jms-0.34.0-bin.tar.gz -- svn:mime-type = application/x-gzip Added: dev/qpid/jms/0.34.0-rc1/apache-qpid-jms-0.34.0-bin.tar.gz.asc == Binary file - no diff available. Propchange: dev/qpid/jms/0.34.0-rc1/apache-qpid-jms-0.34.0-bin.tar.gz.asc -- svn:mime-type = application/pgp-signature Added: dev/qpid/jms/0.34.0-rc1/apache-qpid-jms-0.34.0-bin.tar.gz.sha512 == --- dev/qpid/jms/0.34.0-rc1/apache-qpid-jms-0.34.0-bin.tar.gz.sha512 (added) +++ dev/qpid/jms/0.34.0-rc1/apache-qpid-jms-0.34.0-bin.tar.gz.sha512 Mon Jun 25 20:08:06 2018 @@ -0,0 +1 @@ +0f38df0d2c9e5fe904df046099b3d805aaef89c2d0c5943fe2e5284f7e67f221561d7f9370feea7e9875738cc438b7e4ad55143e181c9564b4ead86f4f13e0df apache-qpid-jms-0.34.0-bin.tar.gz Added: dev/qpid/jms/0.34.0-rc1/apache-qpid-jms-0.34.0-src.tar.gz == Binary file - no diff available. Propchange: dev/qpid/jms/0.34.0-rc1/apache-qpid-jms-0.34.0-src.tar.gz -- svn:mime-type = application/x-gzip Added: dev/qpid/jms/0.34.0-rc1/apache-qpid-jms-0.34.0-src.tar.gz.asc == Binary file - no diff available. Propchange: dev/qpid/jms/0.34.0-rc1/apache-qpid-jms-0.34.0-src.tar.gz.asc -- svn:mime-type = application/pgp-signature Added: dev/qpid/jms/0.34.0-rc1/apache-qpid-jms-0.34.0-src.tar.gz.sha512 == --- dev/qpid/jms/0.34.0-rc1/apache-qpid-jms-0.34.0-src.tar.gz.sha512 (added) +++ dev/qpid/jms/0.34.0-rc1/apache-qpid-jms-0.34.0-src.tar.gz.sha512 Mon Jun 25 20:08:06 2018 @@ -0,0 +1 @@ +6709707f30d74a1c01b7f810772987ed8c32837238451b3421e5e0050ba8860efc663c035273099646b4d9de0c647a7451d42929f334a2cfc9f654068b0ba8ce apache-qpid-jms-0.34.0-src.tar.gz - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
qpid-jms git commit: QPIDJMS-396: avoid corner case leading to unexpected wait
Repository: qpid-jms Updated Branches: refs/heads/master fe0307b58 -> 842ce9059 QPIDJMS-396: avoid corner case leading to unexpected wait Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/842ce905 Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/842ce905 Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/842ce905 Branch: refs/heads/master Commit: 842ce9059f7d515500eebcbf850f514f259a43a6 Parents: fe0307b Author: Robbie Gemmell Authored: Mon Jun 25 19:19:06 2018 +0100 Committer: Robbie Gemmell Committed: Mon Jun 25 19:19:06 2018 +0100 -- .../src/main/java/org/apache/qpid/jms/provider/ProviderFuture.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/842ce905/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/ProviderFuture.java -- diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/ProviderFuture.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/ProviderFuture.java index c708593..c228a1f 100644 --- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/ProviderFuture.java +++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/ProviderFuture.java @@ -138,7 +138,7 @@ public class ProviderFuture implements AsyncResult { final long elapsed = System.nanoTime() - startTime; final long diff = elapsed - timeout; -if (diff > 0) { +if (diff >= 0) { failOnError(); return isComplete(); } - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
qpid-jms git commit: [maven-release-plugin] prepare for next development iteration
Repository: qpid-jms Updated Branches: refs/heads/master 052125c5c -> ecff6e001 [maven-release-plugin] prepare for next development iteration Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/ecff6e00 Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/ecff6e00 Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/ecff6e00 Branch: refs/heads/master Commit: ecff6e001eb3d826d5275765e32c666b3668246b Parents: 052125c Author: Robbie Gemmell Authored: Mon Jun 25 20:32:27 2018 +0100 Committer: Robbie Gemmell Committed: Mon Jun 25 20:32:27 2018 +0100 -- apache-qpid-jms/pom.xml| 2 +- pom.xml| 4 ++-- qpid-jms-client/pom.xml| 2 +- qpid-jms-discovery/pom.xml | 2 +- qpid-jms-docs/pom.xml | 2 +- qpid-jms-examples/pom.xml | 2 +- qpid-jms-interop-tests/pom.xml | 2 +- qpid-jms-interop-tests/qpid-jms-activemq-tests/pom.xml | 2 +- 8 files changed, 9 insertions(+), 9 deletions(-) -- http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/ecff6e00/apache-qpid-jms/pom.xml -- diff --git a/apache-qpid-jms/pom.xml b/apache-qpid-jms/pom.xml index 4f9ca2d..a1d5f26 100644 --- a/apache-qpid-jms/pom.xml +++ b/apache-qpid-jms/pom.xml @@ -18,7 +18,7 @@ org.apache.qpid qpid-jms-parent -0.34.0 +0.35.0-SNAPSHOT 4.0.0 http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/ecff6e00/pom.xml -- diff --git a/pom.xml b/pom.xml index 726207c..bae252c 100644 --- a/pom.xml +++ b/pom.xml @@ -24,7 +24,7 @@ org.apache.qpid qpid-jms-parent - 0.34.0 + 0.35.0-SNAPSHOT pom QpidJMS 2013 @@ -82,7 +82,7 @@ scm:git:http://git-wip-us.apache.org/repos/asf/qpid-jms.git scm:git:https://git-wip-us.apache.org/repos/asf/qpid-jms.git https://git-wip-us.apache.org/repos/asf?p=qpid-jms.git -0.34.0 +HEAD http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/ecff6e00/qpid-jms-client/pom.xml -- diff --git a/qpid-jms-client/pom.xml b/qpid-jms-client/pom.xml index 0b9d517..6147c57 100644 --- a/qpid-jms-client/pom.xml +++ b/qpid-jms-client/pom.xml @@ -20,7 +20,7 @@ org.apache.qpid qpid-jms-parent -0.34.0 +0.35.0-SNAPSHOT qpid-jms-client http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/ecff6e00/qpid-jms-discovery/pom.xml -- diff --git a/qpid-jms-discovery/pom.xml b/qpid-jms-discovery/pom.xml index 0132edc..2c943b4 100644 --- a/qpid-jms-discovery/pom.xml +++ b/qpid-jms-discovery/pom.xml @@ -20,7 +20,7 @@ org.apache.qpid qpid-jms-parent -0.34.0 +0.35.0-SNAPSHOT qpid-jms-discovery http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/ecff6e00/qpid-jms-docs/pom.xml -- diff --git a/qpid-jms-docs/pom.xml b/qpid-jms-docs/pom.xml index 01d0bf2..cef69bb 100644 --- a/qpid-jms-docs/pom.xml +++ b/qpid-jms-docs/pom.xml @@ -18,7 +18,7 @@ org.apache.qpid qpid-jms-parent -0.34.0 +0.35.0-SNAPSHOT 4.0.0 http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/ecff6e00/qpid-jms-examples/pom.xml -- diff --git a/qpid-jms-examples/pom.xml b/qpid-jms-examples/pom.xml index 479f5fd..0cbd6ec 100644 --- a/qpid-jms-examples/pom.xml +++ b/qpid-jms-examples/pom.xml @@ -20,7 +20,7 @@ org.apache.qpid qpid-jms-parent -0.34.0 +0.35.0-SNAPSHOT qpid-jms-examples http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/ecff6e00/qpid-jms-interop-tests/pom.xml -- diff --git a/qpid-jms-interop-tests/pom.xml b/qpid-jms-interop-tests/pom.xml index cdcb1bd..422bf88 100644 --- a/qpid-jms-interop-tests/pom.xml +++ b/qpid-jms-interop-tests/pom.xml @@ -20,7 +20,7 @@ org.apache.qpid qpid-jms-parent -0.34.0 +0.35.0-SNAPSHOT qpid-jms-interop-tests http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/ecff6e00/qpid-jms-interop-tests/qpid-jms-activemq-tests/pom.xml -- diff --git a/qpid-jms-interop-tests/qpid-jms-activemq-tests/pom.xml b/qpid-jms-interop-tests/qpid-jms-activemq-tests/pom.xml index be60920..64b76b9 100644 --- a/qpid-jms-interop-tests/qpid-jms-activemq-tests/pom.xml +++
[1/2] qpid-proton git commit: PROTON-1868: Fix pn_handle_t python binding on Visual Studio 64 bit compiles
Repository: qpid-proton Updated Branches: refs/heads/master ccb9e5a38 -> 7c0a3387a PROTON-1868: Fix pn_handle_t python binding on Visual Studio 64 bit compiles Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/798894f6 Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/798894f6 Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/798894f6 Branch: refs/heads/master Commit: 798894f63dba6a0d4eaa6e015d6f5ac64274be2f Parents: ccb9e5a Author: Andrew Stitcher Authored: Mon Jun 25 23:01:58 2018 -0400 Committer: Andrew Stitcher Committed: Tue Jun 26 01:25:03 2018 -0400 -- c/include/proton/cproton.i | 7 +-- python/CMakeLists.txt | 2 +- python/cproton.i | 8 ruby/CMakeLists.txt| 2 ++ ruby/cproton.i | 3 +++ 5 files changed, 19 insertions(+), 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/798894f6/c/include/proton/cproton.i -- diff --git a/c/include/proton/cproton.i b/c/include/proton/cproton.i index 464e74b..31e5b77 100644 --- a/c/include/proton/cproton.i +++ b/c/include/proton/cproton.i @@ -26,7 +26,11 @@ typedef unsigned long int uint32_t; typedef long int int32_t; typedef unsigned long long int uint64_t; typedef long long int int64_t; +#if UINTPTR_SIZE==8 +typedef unsigned long long int uintptr_t; +#else typedef unsigned long int uintptr_t; +#endif /* Parse these interface header files to generate APIs for script languages */ @@ -61,8 +65,7 @@ typedef unsigned long int uintptr_t; %immutable PN_OBJECT; %immutable PN_VOID; %immutable PN_WEAKREF; -/* Treat pn_handle_t like uintptr_t - syntactically it is a C void* but really it's just an int */ -%apply uintptr_t { pn_handle_t }; + %include "proton/object.h" %ignore pn_error_format; http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/798894f6/python/CMakeLists.txt -- diff --git a/python/CMakeLists.txt b/python/CMakeLists.txt index 2c3f4d9..037552e 100644 --- a/python/CMakeLists.txt +++ b/python/CMakeLists.txt @@ -20,7 +20,7 @@ # NB For python the SWIG module name must have the same name as the input .i file for CMake to generate the # correct dependencies -set(CMAKE_SWIG_FLAGS "-threads") +set(CMAKE_SWIG_FLAGS "-threads" "-DUINTPTR_SIZE=${CMAKE_SIZEOF_VOID_P}") include_directories (${PN_C_INCLUDE_DIR} ${PYTHON_INCLUDE_PATH}) http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/798894f6/python/cproton.i -- diff --git a/python/cproton.i b/python/cproton.i index b173dd8..3bc60ea 100644 --- a/python/cproton.i +++ b/python/cproton.i @@ -100,6 +100,14 @@ PN_HANDLE(PNI_PYTRACER); %ignore pn_message_get_correlation_id; %ignore pn_message_set_correlation_id; +%typemap(in) pn_handle_t { + $1 = PyLong_AsVoidPtr($input); +} + +%typemap(out) pn_handle_t { + $result = PyLong_FromVoidPtr((void*)$1); +} + %typemap(in) pn_bytes_t { if ($input == Py_None) { $1.start = NULL; http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/798894f6/ruby/CMakeLists.txt -- diff --git a/ruby/CMakeLists.txt b/ruby/CMakeLists.txt index 1dc106c..a27a67a 100644 --- a/ruby/CMakeLists.txt +++ b/ruby/CMakeLists.txt @@ -28,6 +28,8 @@ list(APPEND SWIG_MODULE_cproton-ruby_EXTRA_DEPS ${PROTON_HEADERS} ) +set(CMAKE_SWIG_FLAGS "-DUINTPTR_SIZE=${CMAKE_SIZEOF_VOID_P}") + include_directories(${PN_C_INCLUDE_DIR} ${RUBY_INCLUDE_PATH}) swig_add_library(cproton-ruby LANGUAGE ruby SOURCES cproton.i) http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/798894f6/ruby/cproton.i -- diff --git a/ruby/cproton.i b/ruby/cproton.i index a9c731a..1de88f0 100644 --- a/ruby/cproton.i +++ b/ruby/cproton.i @@ -52,6 +52,9 @@ Keep preprocessor directives and macro expansions in the normal header section. #endif %} +/* Treat pn_handle_t like uintptr_t - syntactically it is a C void* but really it's just an int */ +%apply uintptr_t { pn_handle_t }; + %typemap(in) pn_bytes_t { if ($input == Qnil) { $1.start = NULL; - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
qpid-jms git commit: QPIDJMS-395: expand test to check versions with and without container-id hint, i.e. invalid ClientID
Repository: qpid-jms Updated Branches: refs/heads/master ed27c4ea5 -> 02c76f64c QPIDJMS-395: expand test to check versions with and without container-id hint, i.e. invalid ClientID Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/02c76f64 Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/02c76f64 Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/02c76f64 Branch: refs/heads/master Commit: 02c76f64c5a7b83f862e5f4358e7135ed096da7d Parents: ed27c4e Author: Robbie Gemmell Authored: Mon Jun 25 11:08:31 2018 +0100 Committer: Robbie Gemmell Committed: Mon Jun 25 11:08:31 2018 +0100 -- .../failover/FailoverIntegrationTest.java | 36 ++-- 1 file changed, 34 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/02c76f64/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/failover/FailoverIntegrationTest.java -- diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/failover/FailoverIntegrationTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/failover/FailoverIntegrationTest.java index 8aa8b1f..734f875 100644 --- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/failover/FailoverIntegrationTest.java +++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/failover/FailoverIntegrationTest.java @@ -32,6 +32,8 @@ import static org.junit.Assert.fail; import java.net.URI; import java.util.Enumeration; +import java.util.HashMap; +import java.util.Map; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicBoolean; @@ -66,6 +68,7 @@ import org.apache.qpid.jms.JmsQueue; import org.apache.qpid.jms.JmsResourceNotFoundException; import org.apache.qpid.jms.JmsSendTimedOutException; import org.apache.qpid.jms.policy.JmsDefaultPrefetchPolicy; +import org.apache.qpid.jms.provider.amqp.AmqpSupport; import org.apache.qpid.jms.test.QpidJmsTestCase; import org.apache.qpid.jms.test.Wait; import org.apache.qpid.jms.test.testpeer.TestAmqpPeer; @@ -125,7 +128,16 @@ public class FailoverIntegrationTest extends QpidJmsTestCase { @Test(timeout = 2) public void testFailoverHandlesConnectErrorInvalidField() throws Exception { +doFailoverHandlesConnectErrorInvalidFieldTestImpl(false); +} + +@Test(timeout = 2) +public void testFailoverHandlesConnectErrorInvalidFieldWithContainerIdHint() throws Exception { +// As above but also including hint that the container-id is the invalid field, i.e invalid ClientID +doFailoverHandlesConnectErrorInvalidFieldTestImpl(true); +} +private void doFailoverHandlesConnectErrorInvalidFieldTestImpl(boolean includeContainerIdHint) throws Exception { try (TestAmqpPeer originalPeer = new TestAmqpPeer(); TestAmqpPeer finalPeer = new TestAmqpPeer();) { @@ -133,7 +145,13 @@ public class FailoverIntegrationTest extends QpidJmsTestCase { final String finalURI = createPeerURI(finalPeer); final DescribedType amqpValueNullContent = new AmqpValueDescribedType(null); -originalPeer.rejectConnect(AmqpError.INVALID_FIELD, "Client ID already in use", null); +Map errorInfo = null; +if (includeContainerIdHint) { +errorInfo = new HashMap(); +errorInfo.put(AmqpSupport.INVALID_FIELD, AmqpSupport.CONTAINER_ID); +} + +originalPeer.rejectConnect(AmqpError.INVALID_FIELD, "Client ID already in use", errorInfo); finalPeer.expectSaslAnonymous(); finalPeer.expectOpen(); @@ -179,7 +197,16 @@ public class FailoverIntegrationTest extends QpidJmsTestCase { @Test(timeout = 2) public void testFailoverHandlesConnectErrorInvalidFieldOnReconnect() throws Exception { +doFailoverHandlesConnectErrorInvalidFieldOnReconnectTestImpl(false); +} +@Test(timeout = 2) +public void testFailoverHandlesConnectErrorInvalidFieldOnReconnectWithContainerIdHint() throws Exception { +// As above but also including hint that the container-id is the invalid field, i.e invalid ClientID +doFailoverHandlesConnectErrorInvalidFieldOnReconnectTestImpl(true); +} + +private void doFailoverHandlesConnectErrorInvalidFieldOnReconnectTestImpl(boolean includeContainerIdHint) throws Exception { try (TestAmqpPeer originalPeer = new TestAmqpPeer(); TestAmqpPeer rejectingPeer = new TestAmqpPeer(); TestAmqpPeer finalPeer = new TestAmqpPeer();) { @@ -193,7 +220,12 @@ public class FailoverIntegrationTest extends QpidJmsTestCase {
qpid-jms git commit: QPIDJMS-2: commit for testing git to JIRA comment bot another time, ignore.
Repository: qpid-jms Updated Branches: refs/heads/master 29b46cdfd -> 133340800 QPIDJMS-2: commit for testing git to JIRA comment bot another time, ignore. Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/13334080 Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/13334080 Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/13334080 Branch: refs/heads/master Commit: 133340800c665b0ae470f493b707737673b3a233 Parents: 29b46cd Author: Robbie Gemmell Authored: Mon Jun 25 09:33:29 2018 +0100 Committer: Robbie Gemmell Committed: Mon Jun 25 09:33:29 2018 +0100 -- qpid-jms-client/src/test/resources/README.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/13334080/qpid-jms-client/src/test/resources/README.txt -- diff --git a/qpid-jms-client/src/test/resources/README.txt b/qpid-jms-client/src/test/resources/README.txt index a638397..a93f825 100644 --- a/qpid-jms-client/src/test/resources/README.txt +++ b/qpid-jms-client/src/test/resources/README.txt @@ -1,5 +1,5 @@ # The various SSL stores and certificates were created with the following commands: -# Requires using JDK 8+ keytool command. +# Requires use of JDK 8+ keytool command. # Clean up existing files # --- - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org