camel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Claus Ibsen (JIRA)" <>
Subject [jira] Resolved: (CAMEL-2049) Improper configuration of MINA connector and acceptor instances; Better producer
Date Thu, 08 Oct 2009 06:23:52 GMT


Claus Ibsen resolved CAMEL-2049.

       Resolution: Fixed
    Fix Version/s: 2.1.0

> Improper configuration of MINA connector and acceptor instances; Better producer
> --------------------------------------------------------------------------------
>                 Key: CAMEL-2049
>                 URL:
>             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.1.0, 2.0.0
>         Attachments: 2009-10-06.patch, MinaComponent.patch,
> 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,
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.

View raw message