HI,

Found a issue while executing sample 54 and 55 as follows:

Steps:

   1.

   Start ESB and setup 4 axis2 servers at the back end. (port 9001, 9002,
   9003, 9004) and deploy LoadbalanceFailoverService.
   2.

   Login to the ESB and update ESB config with sample 54 configuration.
   3.

   run the axis2client   ant loadbalancefailover -Di=10 -Dmode=session
   4.

   Output:

[java] Request: 1 with Session ID: 0 ---- Response : with    Response from
server: MyServer1

    [java] Request: 2 with Session ID: 1 ---- Response : with    Response
from server: MyServer2

    [java] Request: 3 with Session ID: 1 ---- Response : with    Response
from server: MyServer2

    [java] Request: 4 with Session ID: 0 ---- Response : with    Response
from server: MyServer1

    [java] Request: 5 with Session ID: 2 ---- Response : with    Response
from server: MyServer3

    [java] Request: 6 with Session ID: 0 ---- Response : with    Response
from server: MyServer1

    [java] Request: 7 with Session ID: 1 ---- Response : with    Response
from server: MyServer2

    [java] Request: 8 with Session ID: 2 ---- Response : with    Response
from server: MyServer3

    [java] Request: 9 with Session ID: 0 ---- Response : with    Response
from server: MyServer1

    [java] Request: 10 with Session ID: 1 ---- Response : with    Response
from server: MyServer2

Session ID : 0 -> MyServer1, Session ID: 1 -> MyServer2, Session ID:2
->MyServer3

   1.

   Update ESB configuration with sample 55 configuration and run the
   axis2client again
   2.

   Output:

[java] Request: 1 with Session ID: 0 ---- Response : with    Response from
server: MyServer1

    [java] Request: 2 with Session ID: 2 ---- Response : with    Response
from server: MyServer3

    [java] Request: 3 with Session ID: 2 ---- Response : with    Response
from server: MyServer3

    [java] Request: 4 with Session ID: 2 ---- Response : with    Response
from server: MyServer3

    [java] Request: 5 with Session ID: 0 ---- Response : with    Response
from server: MyServer1

    [java] Request: 6 with Session ID: 2 ---- Response : with    Response
from server: MyServer3

    [java] Request: 7 with Session ID: 1 ---- Response : with    Response
from server: MyServer2

    [java] Request: 8 with Session ID: 2 ---- Response : with    Response
from server: MyServer3

    [java] Request: 9 with Session ID: 1 ---- Response : with    Response
from server: MyServer2

    [java] Request: 10 with Session ID: 0 ---- Response : with    Response
from server: MyServer1

Session ID : 0 -> MyServer1, Session ID: 1 -> MyServer2, Session ID:2
->MyServer3

7. With the sample 55 configuration MyServer2 should not respond for the
requests, it should respond only when MyServer1 is down.

I could reproduce this using soapUI too, when I use the same client IDs
(c1, c2, c3) with the soap request.

[The client Id, which directed to the MyServer2 with sample 54
configuration; always directed to MyServer2 even after I updated the
synapse config to sample 55]

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";
xmlns:ser="http://services.samples";>

  <soapenv:Header>

  <syn:ClientID xmlns:syn="http://ws.apache.org/ns/synapse
">c1</syn:ClientID>

  </soapenv:Header>

  <soapenv:Body>

     <ser:sampleOperation>

        <!--Optional:-->

        <ser:param>1</ser:param>

     </ser:sampleOperation>

  </soapenv:Body>

</soapenv:Envelope>

It seems this is not the right behavior of the ESB with session affinity
load balancing.
Is this a know issue? or Is there any workaround for this?

Thanks
Amalka
-- 

Amalka Subasinghe

WSO2 Inc.
Mobile: +94 77 9401267
_______________________________________________
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to