Uploaded image for project: 'Application Server 7'
  1. Application Server 7
  2. AS7-4011

TS: Bad approach used as fallback mechanism for gathering IP address

XMLWordPrintable

    • Icon: Feature Request Feature Request
    • Resolution: Duplicate
    • Icon: Minor Minor
    • None
    • 7.1.1.Final
    • Test Suite
    • None

      There are several places in TS where we can see similar code like this:

      static final String someIPproperty = System.getProperty("<some key>", "localhost"); 
      

      or

      static final String someIPproperty = System.getProperty("<some key>", "127.0.0.1"); 
      

      As you can see above, this fallback mechanism is bound in this case (key value isn't found) to IPv4 only IP address at all. This approach is bad because we can run in other network stack - IPv6 is presented in these days - and in this case the such testcase fails with some strange error due to this issue.

      I think we have two option how to resolve this issue:

      1. Don't use fallback mechanism at all and fix (= remove) them in present testcases
      2. Create auxiliary class which return 127.0.0.1 or ::1 string (but not string "localhost" because we can't be sure how it is translated )

      common setup in Linux is to translate localhost -> 127.0.0.1 and localhost6 -> ::1

      Ad 1) I prefer this option because some forget/miss setting is very easy to catch

      Ad 2) This auxiliary class should need to make some magic decision in which IP network stack mode we are now running and return IPv4 or IPv6 lookpack address accordingly.

      I've been asking for decision in jboss-as7-dev mailing list [1 and we should wait for feedback from developers for final decision how to fix this issue.

      [1] http://lists.jboss.org/pipermail/jboss-as7-dev/2012-March/005449.html

            ozizka_jira Ondrej Zizka (Inactive)
            pjanouse@redhat.com Pavel Janousek
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: