Return-Path: Delivered-To: apmail-camel-dev-archive@www.apache.org Received: (qmail 48335 invoked from network); 4 Oct 2009 08:54:20 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 4 Oct 2009 08:54:20 -0000 Received: (qmail 81004 invoked by uid 500); 4 Oct 2009 08:54:20 -0000 Delivered-To: apmail-camel-dev-archive@camel.apache.org Received: (qmail 80946 invoked by uid 500); 4 Oct 2009 08:54:20 -0000 Mailing-List: contact dev-help@camel.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@camel.apache.org Delivered-To: mailing list dev@camel.apache.org Received: (qmail 80936 invoked by uid 500); 4 Oct 2009 08:54:20 -0000 Delivered-To: apmail-activemq-camel-dev@activemq.apache.org Received: (qmail 80933 invoked by uid 99); 4 Oct 2009 08:54:20 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 04 Oct 2009 08:54:20 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.140] (HELO brutus.apache.org) (140.211.11.140) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 04 Oct 2009 08:54:17 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 2279F234C045 for ; Sun, 4 Oct 2009 01:53:53 -0700 (PDT) Message-ID: <3215296.1254646433138.JavaMail.jira@brutus> Date: Sun, 4 Oct 2009 01:53:53 -0700 (PDT) From: "Claus Ibsen (JIRA)" To: camel-dev@activemq.apache.org Subject: [jira] Commented: (CAMEL-2049) Improper configuration of MINA connector and acceptor instances; Better producer In-Reply-To: <1365139320.1254387660345.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: ae95407df07c98740808b2ef9da0087c X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/activemq/browse/CAMEL-2049?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=54611#action_54611 ] Claus Ibsen commented on CAMEL-2049: ------------------------------------ Dmytro Do you mind creating a new patch with the updated code from the 1.x branch which uses your thread safe producer. Then it would be much easier for me to commit it to the 1.x codebase. Then we have a solution with concurrent mina producers for both 1.x and 2.0 Backporting the pooling is *way* to much work. > Improper configuration of MINA connector and acceptor instances; Better producer > -------------------------------------------------------------------------------- > > Key: CAMEL-2049 > URL: https://issues.apache.org/activemq/browse/CAMEL-2049 > Project: Apache Camel > Issue Type: Bug > Components: camel-mina > Affects Versions: 1.6.0 > Environment: Windows XP > Reporter: Dmytro Rud > Assignee: Claus Ibsen > Fix For: 1.6.2, 2.0.0 > > Attachments: MinaComponent.patch, MinaSocketProducer.java > > > A sample scenario where both MINA producer(s) and consumer(s) are used in the same route (e.g. some kind of dispatching or proxying): > from("mina:tcp://localhost:8888?lazySessionCreation=true&sync=true") > .to("mina:tcp://localhost:7777?lazySessionCreation=true&sync=true"); > from("mina:tcp://localhost:7777?lazySessionCreation=true&sync=true") > .process(/*prepare answer*/); > Due to improper configuration of MINA acceptor and connector instances in MinaComponent#createSocketEndpoint(), no more than 15 incoming threads can be served at port 8888 -- the producer becomes unable to open an outgoing session. This is actually an issue of MINA, not of Camel -- a test application written using "raw" MINA shows the same behaviour. > A solution is to apply configuration rules described, e.g., at http://mina.apache.org/configuring-thread-model.html, as done in the attached patch. > Moreover, the standard Camel-MINA producer is not thread-safe -- actually a well-known point. A second attached file contains a thread pool-based reentrant version, which can be efficiently used for TCP endpoints with both parameters 'lazySessionCreation' and 'sync' set to true. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.