Return-Path: X-Original-To: apmail-activemq-dev-archive@www.apache.org Delivered-To: apmail-activemq-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 9CC251065A for ; Fri, 28 Feb 2014 04:42:21 +0000 (UTC) Received: (qmail 6849 invoked by uid 500); 28 Feb 2014 04:42:20 -0000 Delivered-To: apmail-activemq-dev-archive@activemq.apache.org Received: (qmail 6585 invoked by uid 500); 28 Feb 2014 04:42:20 -0000 Mailing-List: contact dev-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 dev@activemq.apache.org Received: (qmail 6574 invoked by uid 99); 28 Feb 2014 04:42:19 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 28 Feb 2014 04:42:19 +0000 Date: Fri, 28 Feb 2014 04:42:19 +0000 (UTC) From: "Arthur Naseef (JIRA)" To: dev@activemq.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (AMQ-3166) client calls to createProducer() and send() successful even though BrokerFilter methods throw exceptions MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/AMQ-3166?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13915455#comment-13915455 ] Arthur Naseef commented on AMQ-3166: ------------------------------------ Anyone with thoughts on (a) the best approach to resolving this, and (b) avoiding reduced performance, please speak up. > client calls to createProducer() and send() successful even though BrokerFilter methods throw exceptions > -------------------------------------------------------------------------------------------------------- > > Key: AMQ-3166 > URL: https://issues.apache.org/jira/browse/AMQ-3166 > Project: ActiveMQ > Issue Type: Bug > Components: Broker, JMS client > Affects Versions: 5.4.2, 5.5.0 > Reporter: Arthur Naseef > Assignee: Arthur Naseef > Attachments: AMQ3166Test.java, AMQ3166Test.java, FailedTransactionTracking.java, FailedTransactionTrackingPlugin.java > > > Client calls to createProducer() always return without an error even though a BrokerFilter's addProducer() method throws an exception on the request. In contrast, createConsumer() throws an exception, as expected, when BrokerFilter's addConsumer() throws an exception. > Clients using transacted sessions always return successfully from send() when a BrokerFilter's send() method throws an exception. > Below is a broker configuration file using to illustrate the problem. > To reproduce the problem With this configuration, a test client only needs to connect with user = "user" and password = "password", and then attempt to produce messages with a transacted session to any queue other than ABC (e.g. DEF). > Tracing the cause of the issue has lead to finding that the client code for creating a producer uses an Async send for the producer information. The analogous code for consumers uses a Sync send. > I will work on a patch. It would be very helpful to have feedback on the operation of the bus and the best way to resolve this problem. Based on my research, it seems that createProducer() should be using a Sync send in place of the Async one. Not yet sure about send(). Another possibility is to move the security operations to earlier in the internal broker flow. > === SAMPLE BROKER XML === > xmlns="http://www.springframework.org/schema/beans" > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd > http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd"> > brokerName="localhost" > dataDirectory="${activemq.base}/data" > destroyApplicationContextOnStop="true" > > > > > > > > > groups="users"/> > > > > > > > > > > > > > > > > > > -- This message was sent by Atlassian JIRA (v6.1.5#6160)