Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 1D8B0200C14 for ; Tue, 7 Feb 2017 10:12:47 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id 1C1BC160B68; Tue, 7 Feb 2017 09:12:47 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 69521160B3E for ; Tue, 7 Feb 2017 10:12:46 +0100 (CET) Received: (qmail 83849 invoked by uid 500); 7 Feb 2017 09:12:45 -0000 Mailing-List: contact issues-help@activemq.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@activemq.apache.org Delivered-To: mailing list issues@activemq.apache.org Received: (qmail 83840 invoked by uid 99); 7 Feb 2017 09:12:45 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd2-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 07 Feb 2017 09:12:45 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd2-us-west.apache.org (ASF Mail Server at spamd2-us-west.apache.org) with ESMTP id C81B51A01EF for ; Tue, 7 Feb 2017 09:12:44 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd2-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -1.999 X-Spam-Level: X-Spam-Status: No, score=-1.999 tagged_above=-999 required=6.31 tests=[KAM_LAZY_DOMAIN_SECURITY=1, RP_MATCHES_RCVD=-2.999] autolearn=disabled Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd2-us-west.apache.org [10.40.0.9]) (amavisd-new, port 10024) with ESMTP id VdbYveK4-JWJ for ; Tue, 7 Feb 2017 09:12:43 +0000 (UTC) Received: from mailrelay1-us-west.apache.org (mailrelay1-us-west.apache.org [209.188.14.139]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with ESMTP id 6CC7A5FB45 for ; Tue, 7 Feb 2017 09:12:43 +0000 (UTC) Received: from jira-lw-us.apache.org (unknown [207.244.88.139]) by mailrelay1-us-west.apache.org (ASF Mail Server at mailrelay1-us-west.apache.org) with ESMTP id EFF0EE0146 for ; Tue, 7 Feb 2017 09:12:41 +0000 (UTC) Received: from jira-lw-us.apache.org (localhost [127.0.0.1]) by jira-lw-us.apache.org (ASF Mail Server at jira-lw-us.apache.org) with ESMTP id AC4712528B for ; Tue, 7 Feb 2017 09:12:41 +0000 (UTC) Date: Tue, 7 Feb 2017 09:12:41 +0000 (UTC) From: "ASF GitHub Bot (JIRA)" To: issues@activemq.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (ARTEMIS-931) Improve HTTP upgrade connection MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Tue, 07 Feb 2017 09:12:47 -0000 [ https://issues.apache.org/jira/browse/ARTEMIS-931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15855612#comment-15855612 ] ASF GitHub Bot commented on ARTEMIS-931: ---------------------------------------- GitHub user jmesnil opened a pull request: https://github.com/apache/activemq-artemis/pull/991 [ARTEMIS-931] Fix HTTP Upgrade Connection * Fix isEquivalent() method to take into account the activemqServerName property when httpUpgradeEnabled is true. Two ActiveMQ server hosted on the same app server may have the same host and port (corresponding to the Web server HTTP port). The activemqServerName property is used to distinguish them. * Iron out HTTP upgrade handler so that the latch is always count down and the channel context is closed unless the handshake was completed successfully JIRA: https://issues.apache.org/jira/browse/ARTEMIS-931 You can merge this pull request into a Git repository by running: $ git pull https://github.com/jmesnil/activemq-artemis ARTEMIS-931_improve_http-upgrade_connection Alternatively you can review and apply these changes as the patch at: https://github.com/apache/activemq-artemis/pull/991.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 #991 ---- commit dd052026e6c5616f1f51795ea21d26f12deaf9e7 Author: Jeff Mesnil Date: 2017-02-06T15:26:02Z [ARTEMIS-931] Fix HTTP Upgrade Connection * Fix isEquivalent() method to take into account the activemqServerName property when httpUpgradeEnabled is true. Two ActiveMQ server hosted on the same app server may have the same host and port (corresponding to the Web server HTTP port). The activemqServerName property is used to distinguish them. * Iron out HTTP upgrade handler so that the latch is always count down and the channel context is closed unless the handshake was completed successfully JIRA: https://issues.apache.org/jira/browse/ARTEMIS-931 ---- > Improve HTTP upgrade connection > ------------------------------- > > Key: ARTEMIS-931 > URL: https://issues.apache.org/jira/browse/ARTEMIS-931 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Broker > Affects Versions: 1.5.2 > Reporter: Jeff Mesnil > Fix For: 2.0.0, 1.5.x > > > When Artemis connector is configured to use http-upgrade, it will send an HTTP request to the server to perform the upgrade handshake and wait for response for 30 seconds maximum. > The code in HttpUpgradeHandler#channelRead0 checks if the received object from the server is a HttpResponse and check its header. > However if the received object is not an HttpResponse (e.g. a LastHttpContent if the web server is suspended and returns a 404 with a text content), the code does not close the context and does not countdown the latch. > This results in a 30s block for the client when we already know that the connection will not be possible. > Improving code in HttpUpgradeHandler#channelRead0 will remove this 30s wait time and ensure a fast dectection from the client so that it can try to connect to another server for example. -- This message was sent by Atlassian JIRA (v6.3.15#6346)