[ 
http://jira.codehaus.org/browse/XFIRE-886?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tony Bussieres updated XFIRE-886:
---------------------------------

    Attachment: LocalClientTest.patch

This is a proof that there is a multithreading problem in the Client.

The test starts 3 Thread that contain a Client
and does the same invoke as described in testInvoke()
Each Thread invoke 15 times the service. 

If the Client patch is not applied I get the :

Feb 23, 2007 10:25:22 AM org.codehaus.xfire.client.CorrelatorHandler invoke
INFO: No correlated invocation was found.

If the patch is applied, everything goes OK





> XFire Client not ThreadSafe
> ---------------------------
>
>                 Key: XFIRE-886
>                 URL: http://jira.codehaus.org/browse/XFIRE-886
>             Project: XFire
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.2.4
>         Environment: Linux 2.6, Java 1.4.2 / Java 1.5
>            Reporter: Tony Bussieres
>         Assigned To: Dan Diephouse
>             Fix For: 1.2.5
>
>         Attachments: Client.java.patch, LocalClientTest.patch
>
>
> I use XFire as a client. witin Mule,
> The XFire Client are in a Pool  (common pool) and
> many threads are using thoses clients to call a service.
> Sometimes (about 14 times / 60) with 2 threads this happens :
> DEBUG 2007-02-22 12:57:16,520 [Test-1] org.codehaus.xfire.client.Client:
> Received message to http://serveur:3003/scoperta/scopertaTest
> DEBUG 2007-02-22 12:57:16,520 [Test-1]
> org.codehaus.xfire.handler.HandlerPipeline: adding handler
> [EMAIL PROTECTED] to phase pre-dispatch
> DEBUG 2007-02-22 12:57:16,520 [Test-1]
> org.codehaus.xfire.handler.HandlerPipeline: adding handler
> [EMAIL PROTECTED] to phase parse
> DEBUG 2007-02-22 12:57:16,520 [Test-1]
> org.codehaus.xfire.handler.HandlerPipeline: adding handler
> [EMAIL PROTECTED] to phase
> pre-invoke
> DEBUG 2007-02-22 12:57:16,521 [Test-1]
> org.codehaus.xfire.handler.HandlerPipeline: adding handler
> [EMAIL PROTECTED] to phase dispatch
> DEBUG 2007-02-22 12:57:16,521 [Test-1]
> org.codehaus.xfire.handler.HandlerPipeline: adding handler
> [EMAIL PROTECTED] to phase dispatch
> DEBUG 2007-02-22 12:57:16,521 [Test-1]
> org.codehaus.xfire.handler.HandlerPipeline: adding handler
> [EMAIL PROTECTED] to phase dispatch
> DEBUG 2007-02-22 12:57:16,521 [Test-1]
> org.codehaus.xfire.handler.HandlerPipeline: Invoking phase transport
> DEBUG 2007-02-22 12:57:16,521 [Test-1]
> org.codehaus.xfire.handler.HandlerPipeline: Invoking phase parse
> DEBUG 2007-02-22 12:57:16,521 [Test-1]
> org.codehaus.xfire.handler.HandlerPipeline: Invoking handler
> org.codehaus.xfire.soap.handler.ReadHeadersHandler in phase parse
> DEBUG 2007-02-22 12:57:16,521 [Test-1]
> org.codehaus.xfire.handler.HandlerPipeline: Invoking phase pre-dispatch
> DEBUG 2007-02-22 12:57:16,521 [Test-1]
> org.codehaus.xfire.handler.HandlerPipeline: Invoking handler
> org.codehaus.xfire.client.CorrelatorHandler in phase pre-dispatch
> DEBUG 2007-02-22 12:57:16,521 [Test-1] org.codehaus.xfire.client.Client:
> Correlating context with ID 1172167036476261041791506
> INFO  2007-02-22 12:57:16,521 [Test-1] org.codehaus.xfire.client.Client:
> No correlated invocation was found.
> Cause:
> When a client is triggered : Client.onReceive(MessageContext)
> It creates a pipeline,
> put the handlers in the pipeline then invoke the pipeline *using
> MessageContext*
> HOWEVER sometimes the client triggered != the client in the context.
> so the handlers added to the pipeline are not related to the good client.
> Fix:
> See patch in attachment
> The fix does :
> Get the handlers for the client in the MessageContext.
> Add them to the pipeline. (not the ones from "this")

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe from this list please visit:

    http://xircles.codehaus.org/manage_email

Reply via email to