Re: Artemis Roadmap
Thanks Bruce - I will look at this page shortly - I hope this week, but should be no later than the end of next week. Art -- Sent from: http://activemq.2283324.n4.nabble.com/ActiveMQ-Dev-f2368404.html
[GitHub] activemq-artemis issue #1702: ARTEMIS-1542 - AMQP message cluster-bridging f...
Github user toddbaert commented on the issue: https://github.com/apache/activemq-artemis/pull/1702 Lol, very sorry. Typing too fast, out of excitement! Thank YOU, @clebertsuconic :) ---
[GitHub] activemq-artemis issue #1702: ARTEMIS-1542 - AMQP message cluster-bridging f...
Github user clebertsuconic commented on the issue: https://github.com/apache/activemq-artemis/pull/1702 @toddbaert clambertus? :) ---
[GitHub] activemq-artemis issue #1702: ARTEMIS-1542 - AMQP message cluster-bridging f...
Github user toddbaert commented on the issue: https://github.com/apache/activemq-artemis/pull/1702 @clambertus :guitar: Opensource :guitar: Thanks so much for your help! I've tested and all seems well now. ---
[GitHub] activemq-artemis issue #1702: ARTEMIS-1542 - AMQP message cluster-bridging f...
Github user clebertsuconic commented on the issue: https://github.com/apache/activemq-artemis/pull/1702 @toddbaert just for future reference, as I told you on #1701 I made a mistake a reverted your fix by accident. this PR is fixing my accidental revert... it should be done now.. thanks for contributing!!! Opensource rocks! ---
[GitHub] activemq-artemis pull request #1702: ARTEMIS-1542 - AMQP message cluster-bri...
Github user asfgit closed the pull request at: https://github.com/apache/activemq-artemis/pull/1702 ---
[GitHub] activemq-artemis issue #1701: ARTEMIS-1542 - AMQP message cluster-bridging f...
Github user toddbaert commented on the issue: https://github.com/apache/activemq-artemis/pull/1701 @clebertsuconic a OK, I understand now. Thanks! ---
[GitHub] activemq-artemis issue #1701: ARTEMIS-1542 - AMQP message cluster-bridging f...
Github user clebertsuconic commented on the issue: https://github.com/apache/activemq-artemis/pull/1701 @toddbaert during my merge, I added an example... on that example.. I reverted your fix by accident... I didn't mean to setNull... sorry about that. I will merge your PR as that should fix it. ---
[GitHub] activemq-artemis issue #1701: ARTEMIS-1542 - AMQP message cluster-bridging f...
Github user toddbaert commented on the issue: https://github.com/apache/activemq-artemis/pull/1701 I'm not sure I understand what you're referring to. Anyway, I hope that you can merge https://github.com/apache/activemq-artemis/pull/1702, as it is the main problem. If you have any concerns, let me know and I'll help however I can. You can produce the issue with my configuration and sample c# client on my original JIRA: https://issues.apache.org/jira/browse/ARTEMIS-1549 :smiley: ---
[GitHub] activemq-artemis issue #1701: ARTEMIS-1542 - AMQP message cluster-bridging f...
Github user clebertsuconic commented on the issue: https://github.com/apache/activemq-artemis/pull/1701 @toddbaert it was an accident.. didn't mean it. ---
[GitHub] activemq-artemis issue #1701: ARTEMIS-1542 - AMQP message cluster-bridging f...
Github user toddbaert commented on the issue: https://github.com/apache/activemq-artemis/pull/1701 @clebertsuconic you also did not commit my proposed change to ClusterConnectionBridge.java, which is the heart of our issue. https://github.com/apache/activemq-artemis/pull/1702 ---
[GitHub] activemq-artemis issue #1701: ARTEMIS-1542 - AMQP message cluster-bridging f...
Github user clebertsuconic commented on the issue: https://github.com/apache/activemq-artemis/pull/1701 @toddbaert O... @#$@$!@@! (bad word goes here)... I screwed up... I had a debug thingy that I committed as part of this ---
[GitHub] activemq-artemis issue #1696: NO-JIRA fixed minor regression and broken test...
Github user michaelandrepearce commented on the issue: https://github.com/apache/activemq-artemis/pull/1696 @pgfox please do, I also didnât check for checkstyle and all that stuff. ---
[GitHub] activemq-artemis issue #1702: ARTEMIS-1542 - AMQP message cluster-bridging f...
Github user toddbaert commented on the issue: https://github.com/apache/activemq-artemis/pull/1702 I am still seeing the issue. With the changes in this PR, the issue is resolved. Can you please look at the diff? - messageCopy = super.beforeForward(messageCopy, null); + messageCopy = super.beforeForward(messageCopy, forwardingAddress); Why would we want to call super.beforeForward() with a null second arg? This is the source of the problem. ---
[GitHub] activemq-artemis issue #1702: ARTEMIS-1542 - AMQP message cluster-bridging f...
Github user clebertsuconic commented on the issue: https://github.com/apache/activemq-artemis/pull/1702 The address wasnât set at the producer. The address would be reset at the target. ---
[GitHub] activemq-artemis pull request #:
Github user toddbaert commented on the pull request: https://github.com/apache/activemq-artemis/commit/64552367b2b9208500f0ab3581540e203a74caae#commitcomment-26192098 No, this doesn't address the problem. https://github.com/apache/activemq-artemis/pull/1702 ---
[GitHub] activemq-artemis issue #1702: ARTEMIS-1542 - AMQP message cluster-bridging f...
Github user toddbaert commented on the issue: https://github.com/apache/activemq-artemis/pull/1702 @clebertsuconic @michaelandrepearce in ClusterConnectionBridge.beforeForward(Message message, SimpleString forwardingAddress), we call super.beforeForward(message, null). The is why we lose the address. This code path is executed when broker1 forwards an AMQP message to broker2. This is why we will only see this in a cluster, when a producer sends a message to broker1 and a consumer is listening on broker2. ---
[GitHub] activemq-artemis issue #1701: ARTEMIS-1542 - AMQP message cluster-bridging f...
Github user toddbaert commented on the issue: https://github.com/apache/activemq-artemis/pull/1701 @clebertsuconic @michaelandrepearce Guys - please see my messages above. The primary issue is that the forwarding address is set to null, as I described.. I was in the middle of an interactive rebase when you attempted to merge (which I've now completed). New PR is here: https://github.com/apache/activemq-artemis/pull/1702. ---
[GitHub] activemq-artemis pull request #1702: ARTEMIS-1542 - AMQP message cluster-bri...
GitHub user toddbaert opened a pull request: https://github.com/apache/activemq-artemis/pull/1702 ARTEMIS-1542 - AMQP message cluster-bridging fixi Fixing and issue where AMQP messages would lose their address when being sent accross a cluster-bridge. You can merge this pull request into a Git repository by running: $ git pull https://github.com/toddbaert/activemq-artemis master Alternatively you can review and apply these changes as the patch at: https://github.com/apache/activemq-artemis/pull/1702.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1702 commit 61499244412c069c29a6fb093c9780368e1bdc15 Author: toddDate: 2017-12-11T16:17:57Z ARTEMIS-1542 - AMQP message cluster-bridging fixi Fixing and issue where AMQP messages would lose their address when being sent accross a cluster-bridge. ---
[GitHub] activemq-artemis issue #1701: ARTEMIS-1542 - AMQP message cluster-bridging f...
Github user toddbaert commented on the issue: https://github.com/apache/activemq-artemis/pull/1701 @clebertsuconic I don't think you've address the issue. The address is set to null BY broker1 when it forwards the message to broker2. Please see ClusterConnectionBridge.beforeForward(Message message, SimpleString forwardingAddress), it call super.beforeForward(message, null), regardless of the forwarding message in the original call. ---
[GitHub] activemq-artemis issue #1701: ARTEMIS-1542 - AMQP message cluster-bridging f...
Github user clebertsuconic commented on the issue: https://github.com/apache/activemq-artemis/pull/1701 @toddbaert that was a problem only if message.address was null.. I didn't think a cpp producer would leave it null... it should be fixed now. ---
[GitHub] activemq-artemis issue #1701: ARTEMIS-1542 - AMQP message cluster-bridging f...
Github user toddbaert commented on the issue: https://github.com/apache/activemq-artemis/pull/1701 @clebertsuconic @michaelandrepearce The problem seems to me to be pretty simple: in ClusterConnectionBridge.beforeForward(Message message, SimpleString forwardingAddress), we call super.beforeForward(message, **null**). The is why we lose the address. This code path is executed when broker1 forwards an AMQP message to broker2. This is why we will only see this in a cluster, when a producer sends a message to broker1 and a consumer is listening on broker2. ---
[GitHub] activemq-artemis issue #1701: ARTEMIS-1542 - AMQP message cluster-bridging f...
Github user clebertsuconic commented on the issue: https://github.com/apache/activemq-artemis/pull/1701 @toddbaert thanks a lot.. merged it manually. let me know what you think. ---
[GitHub] activemq-artemis pull request #1701: ARTEMIS-1542 - AMQP message cluster-bri...
Github user asfgit closed the pull request at: https://github.com/apache/activemq-artemis/pull/1701 ---
[GitHub] activemq-artemis issue #1701: ARTEMIS-1542 - AMQP message cluster-bridging f...
Github user clebertsuconic commented on the issue: https://github.com/apache/activemq-artemis/pull/1701 @toddbaert leave this with me... merging it now ---
[GitHub] activemq-artemis issue #1701: ARTEMIS-1542 - AMQP message cluster-bridging f...
Github user clebertsuconic commented on the issue: https://github.com/apache/activemq-artemis/pull/1701 hmmm.. you've made some mess of your branch here.. I can't merge it... I have an older version.. where I added an example based on yours... I will merge that one... leave it with me ---
Re: Artemis client pinned to 1 of 2 brokers when attempting to connect
I am looking to change the code, if necessary, to get this working. I'll look for you on IRC; it may be easier to clarify that way. On Sun, Dec 10, 2017 at 6:43 PM, Clebert Suconicwrote: > I understand. I thought you were proposing a code change. > > On Sun, Dec 10, 2017 at 8:13 PM Arthur Naseef wrote: > > > Initial connect is where I'm seeing this now Clebert. It can choose from > > multiple nodes, but only sticks to one until the retries are exhausted. > > However, I have unlimited retries, so the client is pinned. > > > > On Sun, Dec 10, 2017 at 7:44 AM, Clebert Suconic < > > clebert.suco...@gmail.com> > > wrote: > > > > > On Sat, Dec 9, 2017 at 11:02 PM Arthur Naseef wrote: > > > > > > > Thanks Clebert. Reconnect-at-any-node sounds very similar - the only > > > real > > > > difference is the "initial connection" versus reconnect. > > > > > > > > > > Initial connect could always look at other nodes. > > > > > > > > > > > In my mind, the desired operation is the same for initial connect > > versus > > > > reconnect. Are you aware of a desire to do differently? > > > > > > > > > We have a JIRA but failover is easy to mess up. There was something > else > > > with higher priority (Open wire, amqp,... etc etc) > > > > > > > > > > > > > > > > > > > > Art > > > > > > > > > > > > On Sat, Dec 9, 2017 at 7:33 AM, Clebert Suconic < > > > clebert.suco...@gmail.com > > > > > > > > > wrote: > > > > > > > > > There is a JIRA open in artemis. Reconnect at any node. > > > > > > > > > > We could add a property as reconnect any node. And make the change > > you > > > > > mentioned. > > > > > > > > > > That’s a different semantic between the two. I can dig for the jira > > > later > > > > > if you like. I am Typing on the phone now. > > > > > > > > > > On Fri, Dec 8, 2017 at 4:01 PM Arthur Naseef > wrote: > > > > > > > > > > > Note that I'm doing much of this for the first time, and not > > finding > > > > > > examples on the website, so I expect there's a good chance I'm > > > missing > > > > > > something. > > > > > > > > > > > > Summary of the problem: > > > > > >* Clients get pinned to a single broker url when attempting to > > > > > connect, > > > > > > when using infinite connect attempts. > > > > > > > > > > > > Background: > > > > > > I'm attempting to setup the Artemis client in a way that will > > get > > > > > > parity with the AMQ 5.x failover transport's default operation > > > (without > > > > > > optional configuration settings) using static broker urls: > > > > > > > > > > > > * Client is configured with 2 (possibly more) broker URLs > > > > > > * Brokers are configured to run active/passive > > > > > > * All connection failures hidden from the client code; that > is: > > > > > > * Application blocks indefinitely on JMS operations when > > > > > connection > > > > > > to broker is down > > > > > > * Application never gets an exception when the connection > > to > > > > the > > > > > > broker is down > > > > > > * Log messages recorded when connections lost and > recreated > > > > > > > > > > > > > > > > > > Artemis client setup: > > > > > > import > > > > > > org.apache.activemq.artemis.jms.client. > ActiveMQConnectionFactory; > > > > > > > > > > > > ActiveMQConnectionFactory connectionFactory = new > > > > > > ActiveMQConnectionFactory("broker-url: > tcp://localhost:61616#tcp:// > > > > > > localhost:61617"); > > > > > > > > > > > > connectionFactory.setInitialConnectAttempts(-1); // > Inifinite > > > > > > connectionFactory.setReconnectAttempts(-1); // Infinite > > > > > > connectionFactory.setMaxRetryInterval(1000); // 1 second > > > > > > > > > > > > > > > > > > Test steps: > > > > > > * All brokers are SHUTDOWN > > > > > > * Start the client > > > > > > * Start either broker > > > > > > > > > > > > > > > > > > Expected: > > > > > > * Client reliably connects to the broker that starts, within > > the > > > > > > max-reconnect period > > > > > > > > > > > > > > > > > > Actual: > > > > > > * Client only connects sometimes; other times, it remains > > > > > disconnected > > > > > > indefinitely > > > > > > > > > > > > > > > > > > Diagnosing: > > > > > > * Using the debugger and reading the code, found the > following > > > key > > > > > > points in the code: > > > > > > > > > > > > ServerLocatorImpl.java:771 > > > > > > TransportConfiguration tc = selectConnector(); > > > > > > ClientSessionFactoryImpl.java:1086 > > > > > > Connector liveConnector = createConnector( > connectorFactory, > > > > > > connectorConfig); > > > > > > NettyConnector.java:575 > > > > > > * host and port > > > > > > > > > > > > * The host and port in the Netty Connector remain the same on > > > every > > > > > > call. The retry logic is in ClientSessionFactoryImpl, which does > > not > > > > > have > > > > > > access to
[GitHub] activemq-artemis issue #1701: ARTEMIS-1542 - AMQP message cluster-bridging f...
Github user clebertsuconic commented on the issue: https://github.com/apache/activemq-artemis/pull/1701 @michaelandrepearce you need a producer and have a meessage with destination == null to make this happen. the AMQP JMS client will set the destination on the producer.. what won't happen through the C++ client. You would need to run the test with a C++ client. The best would probably be to have an AMQP Example with clustered messages. ---
[GitHub] activemq-artemis issue #1696: NO-JIRA fixed minor regression and broken test...
Github user pgfox commented on the issue: https://github.com/apache/activemq-artemis/pull/1696 @michaelandrepearce Thanks Mike, I updated the PR with your commit. I will do a test run tonight on the new PR. ---
[GitHub] activemq-artemis pull request #1688: ARTEMIS-1537 broker was less strict whi...
Github user stanlyDoge commented on a diff in the pull request: https://github.com/apache/activemq-artemis/pull/1688#discussion_r156064778 --- Diff: artemis-server/src/main/java/org/apache/activemq/artemis/core/deployers/impl/FileConfigurationParser.java --- @@ -253,9 +253,12 @@ public Configuration parseMainConfig(final InputStream input) throws Exception { String xml = XMLUtil.readerToString(reader); xml = XMLUtil.replaceSystemProps(xml); Element e = XMLUtil.stringToElement(xml); - + NodeList children = e.getElementsByTagName("core"); --- End diff -- Ah, didn't know about this, sorry. Should be ok now. ---
[GitHub] activemq-artemis issue #1701: ARTEMIS-1542 - AMQP message cluster-bridging f...
Github user toddbaert commented on the issue: https://github.com/apache/activemq-artemis/pull/1701 @michaelandrepearce I'll add a test case and consolidate the commits. ---
[GitHub] activemq-artemis pull request #1688: ARTEMIS-1537 broker was less strict whi...
Github user michaelandrepearce commented on a diff in the pull request: https://github.com/apache/activemq-artemis/pull/1688#discussion_r156030409 --- Diff: artemis-server/src/main/java/org/apache/activemq/artemis/core/deployers/impl/FileConfigurationParser.java --- @@ -253,9 +253,12 @@ public Configuration parseMainConfig(final InputStream input) throws Exception { String xml = XMLUtil.readerToString(reader); xml = XMLUtil.replaceSystemProps(xml); Element e = XMLUtil.stringToElement(xml); - + NodeList children = e.getElementsByTagName("core"); --- End diff -- https://github.com/apache/activemq-artemis/blob/master/artemis-server/src/main/resources/schema/artemis-server.xsd it does. ---
[GitHub] activemq-artemis pull request #1688: ARTEMIS-1537 broker was less strict whi...
Github user stanlyDoge commented on a diff in the pull request: https://github.com/apache/activemq-artemis/pull/1688#discussion_r156024601 --- Diff: artemis-server/src/main/java/org/apache/activemq/artemis/core/deployers/impl/FileConfigurationParser.java --- @@ -253,9 +253,12 @@ public Configuration parseMainConfig(final InputStream input) throws Exception { String xml = XMLUtil.readerToString(reader); xml = XMLUtil.replaceSystemProps(xml); Element e = XMLUtil.stringToElement(xml); - + NodeList children = e.getElementsByTagName("core"); --- End diff -- Hmm, after another investigation I am not sure if this is possible with current XSD schema. It does not contain 'configuration' element, so it cannot be checked this way. There are two solutions - modify XSD schema to contain missing element or use my solution, where I am getting first child of 'configuration', which is 'core'. ---
[GitHub] activemq-artemis issue #1701: ARTEMIS-1542 - AMQP message cluster-bridging f...
Github user michaelandrepearce commented on the issue: https://github.com/apache/activemq-artemis/pull/1701 @toddbaert is there a test case for this to be added, to both prove fix, and avoid future regression? Also could you squash up your commits into one, once test is added. Thanks. ---