JBoss Enterprise Application Platform 4 and 5
  1. JBoss Enterprise Application Platform 4 and 5
  2. JBPAPP-3008

Clustering tests failing with explicitly specified IPv6 addresses

    Details

    • Type: Bug Bug
    • Status: Closed Closed (View Workflow)
    • Priority: Major Major
    • Resolution: Done
    • Affects Version/s: 4.2.0.GA_CP08, 4.3.0.GA_CP07
    • Component/s: Testsuite
    • Security Level: Public (Everyone can see)
    • Labels:
      None
    • Environment:
      All platforms
    • Similar Issues:
      Show 10 results 

      Description

      Many HTTP session-based clustering tests are failing when the testsuite is started up with IPv6 addresses, for example:

      ./build.sh -Dnode0=[3ffe:ffff:0100:f101::1] -Dnode1=[3ffe:ffff:0100:f101::2] -DudpGroup=[ff0e::1:2:3] tests

      When the testsuite is started using domain names which resolve to the same IPv6 addresses, the tests pass:

      ./build.sh -Dnode0=lenovo6a -Dnode1=lenovo6b -DudpGroup=[ff0e::1:2:3] tests

      An example of a typical failure, in the test SimpleTestCase running under UDP:

      Error Message
      getSessionCookie(): fail to find session id. Server name: [fec0:0:a16:ffff::12]
      Stacktrace
      junit.framework.AssertionFailedError: getSessionCookie(): fail to find session id. Server name: [fec0:0:a16:ffff::12]
      at org.jboss.test.cluster.test.BaseTest.getSessionCookie(BaseTest.java:269)
      at org.jboss.test.cluster.test.BaseTest.setCookieDomainToThisServer(BaseTest.java:242)
      at org.jboss.test.cluster.test.SimpleTestCase.testHttpSessionReplication(SimpleTestCase.java:81)
      at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
      at junit.extensions.TestSetup$1.protect(TestSetup.java:21)
      at junit.extensions.TestSetup.run(TestSetup.java:25)

      The problem seems to be related to the use of cookies in the HTTP session replication tests.
      Here is a message which is emitted during many of these session based tests:

      2009-10-21 16:30:56,002 WARN [org.apache.commons.httpclient.HttpMethodBase] Cookie rejected: "$Version=0; JSESSIONID=AQYACiGZiyqiFpeNHDA1Ug**; $Path=/". Illegal domain attribute "[fec0". Domain of origin: "[fec0:0:a16:ffff::11]"

      HttpClient seems to be having two problems with cookies:
      it cannot correctly parse cookie domains which are IPv6 addresses (see https://issues.apache.org/jira/browse/HTTPCLIENT-654)
      (ii) even if I fix the issue HTTPCLIENT-654 by modifying the codebase as described, it seems that cookies are still getting rejected - don't know if this is due to the cookie management policy

      The cookie angle may be a red herring, but it was the only difference I could see between a clean run and a failing run.

      1. httpclient-3.0.1-ipv6.patch
        1 kB
        Richard Achmatowicz
      2. httpclient-3.1-ipv6.patch2
        1 kB
        Richard Achmatowicz

        Issue Links

          Activity

          Hide
          Richard Achmatowicz
          added a comment -

          Attaching patch for commons-httpclient-3.1 and the new patched jar file.

          Show
          Richard Achmatowicz
          added a comment - Attaching patch for commons-httpclient-3.1 and the new patched jar file.
          Hide
          Richard Achmatowicz
          added a comment -

          Attach patch and jar for commons-httpclient version 3.0.1 (compiled with JDK 1.5)

          Show
          Richard Achmatowicz
          added a comment - Attach patch and jar for commons-httpclient version 3.0.1 (compiled with JDK 1.5)
          Hide
          Richard Achmatowicz
          added a comment -

          The patched jars (and related artifacts) have been uploaded to the JBoss buildmagic repository at the locations:
          http://repository.jboss.com/apache-httpclient/3.0.1.patch01/
          http://repository.jboss.com/apache-httpclient/3.1.patch01/

          Test reslults look fine.
          Closing this issue, depite the fact that it will also apply to EAP 5 versions.
          Leaving the related issue JBPAPP-1811 (which specifies EAP 5+) open to track.

          Show
          Richard Achmatowicz
          added a comment - The patched jars (and related artifacts) have been uploaded to the JBoss buildmagic repository at the locations: http://repository.jboss.com/apache-httpclient/3.0.1.patch01/ http://repository.jboss.com/apache-httpclient/3.1.patch01/ Test reslults look fine. Closing this issue, depite the fact that it will also apply to EAP 5 versions. Leaving the related issue JBPAPP-1811 (which specifies EAP 5+) open to track.
          Hide
          Richard Achmatowicz
          added a comment -

          EAP CP branch JBPAPP_4_2_0_GA_CP now incorporates the patched versions of these jars via build-thirdparty.xml.
          This covers both fix versions above.

          Show
          Richard Achmatowicz
          added a comment - EAP CP branch JBPAPP_4_2_0_GA_CP now incorporates the patched versions of these jars via build-thirdparty.xml. This covers both fix versions above.
          Hide
          Brian Stansberry
          added a comment -

          Thanks, Richard!

          Show
          Brian Stansberry
          added a comment - Thanks, Richard!

            People

            • Assignee:
              Brian Stansberry
              Reporter:
              Richard Achmatowicz
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: