Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-6492789

/usr/java link points to Java 1.5.0 instead of Java 1.6 after upgrade to snv_50/snv_52.

XMLWordPrintable

    • b105
    • generic, x86
    • solaris, solaris_nevada, solaris_10
    • Not verified

      This is found when I tried to reproduce an upgrade core dump from snv_51 to snv_52. This impacts both sparc and x86.

      I did the following initial install on sparc:

      OS: snv_51
      Media: DVD net image
      Cluster: SUNWCXall
      Locale to install: C


      Then I upgrade to snv_52 as follow:

      OS: snv_52
      Media: DVd net image
      Upgrade method: ttinstall and upgrade without Disk Space Reallocation


      After the upgrade, the /usr/java link points to Java 1.5.0 instead of Java 1.6. In Nevada, Java 1.6 should be the /usr/java default:

      line2-v440# cd /usr
      line2-v440# ls -lia java
           26026 lrwxrwxrwx 1 root other 15 Nov 10 14:23 java -> jdk/jdk1.5.0_08
      line2-v440# uname -a
      SunOS line2-v440 5.11 snv_52 sun4u sparc SUNW,Sun-Fire-V440
      line2-v440#


      During upgrade, all the SUNWj5* pacakges are pkgrm and pkadded back.

      pkgrm of SUNWj5* packages
      pkgadd of SUNWj5* packages


      line2-v440# grep SUNWj5r up*script
              do_pkgrm / SUNWj5rt
              logprogress 28 pkgrm SUNWj5rt
              do_pkgrm / SUNWj5rtx
              logprogress 478 pkgrm SUNWj5rtx
              do_local_pkgadd / SUNWj5rt /cdrom/Solaris_11/Product un.usr
              logprogress 830 local_pkgadd SUNWj5rt
              do_local_pkgadd / SUNWj5rtx /cdrom/Solaris_11/Product un.usr
              logprogress 1141 local_pkgadd SUNWj5rtx
      line2-v440# grep SUNWj6 up*script
      line2-v440#

      However, the SUNWj6* packages are not pkgadded back because there are no changes.

      The reason why the SUNWj5* packages are pkgrm is because of the following entries:

      PKG=SUNWj5cfg
      ARCH=sparc
      VERSION=1000
      PKGRM=yes
      PKG=SUNWj5dev
      ARCH=sparc
      VERSION=1000
      PKGRM=yes
      PKG=SUNWj5dmo
      ARCH=sparc
      VERSION=1000
      PKGRM=yes
      PKG=SUNWj5dmx
      ARCH=sparc
      VERSION=1000
      PKGRM=yes
      PKG=SUNWj5dvx
      ARCH=sparc
      VERSION=1000
      PKGRM=yes
      PKG=SUNWj5jmp
      ARCH=sparc
      VERSION=1000
      PKGRM=yes
      PKG=SUNWj5man
      ARCH=sparc
      VERSION=1000
      PKGRM=yes
      PKG=SUNWj5rt
      ARCH=sparc
      VERSION=1000
      PKGRM=yes
      PKG=SUNWj5rtx
      ARCH=sparc
      VERSION=1000
      PKGRM=yes

      This means that every time you upgrade the system, the SUNWj5* packages will be pkgrm and then pkgadded back.

      However, the SUNWj6* packages does not have the same *ph files. Thus it will not be pkgadded back if the packages had not been upgraded.
      Meanwhile this had impact our Install Build machines since we use Live upgrade to upgrade them. The /usr/java link had been wrong as follow.

      On install-bldsp-11, it is currently running snv_50 and this is LU from snv_48. The /usr/java link is wrong as follow:

      install-bldsp-11{ding}41: su
      Password:
      # lustatus
      Boot Environment Is Active Active Can Copy
      Name Complete Now On Reboot Delete Status
      -------------------------- -------- ------ --------- ------ ----------
      nv_52 yes no no yes -
      nv_50 yes yes yes no -
      # ls -lia /usr/java
           23307 lrwxrwxrwx 1 root other 15 Oct 12 07:39 /usr/java -> jdk/jdk1.5.0_08
      #

      According to the upgrade script, all the SUNWj5* packages are pkgrm and pkgadd. The SUNWj6* packages are also pkgadded. However, the link is still wrong.

      # grep SUNWj5 up*script
              do_pkgrm / SUNWj5rt
              logprogress 89 pkgrm SUNWj5rt
              do_pkgrm / SUNWj5man
              logprogress 156 pkgrm SUNWj5man
              do_pkgrm / SUNWj5dev
              logprogress 181 pkgrm SUNWj5dev
              do_pkgrm / SUNWj5rtx
              logprogress 467 pkgrm SUNWj5rtx
              do_pkgrm / SUNWj5dmx
              logprogress 468 pkgrm SUNWj5dmx
              do_pkgrm / SUNWj5dvx
              logprogress 469 pkgrm SUNWj5dvx
              do_pkgrm / SUNWj5cfg
              logprogress 544 pkgrm SUNWj5cfg
              do_pkgrm / SUNWj5dmo
              logprogress 545 pkgrm SUNWj5dmo
              do_local_pkgadd / SUNWj5rt /net/ins3525-svr/export/nv/solarisdvd.nvs_dvd/latest/Solaris_11/Product un.usr
              logprogress 721 local_pkgadd SUNWj5rt
              do_local_pkgadd / SUNWj5dev /net/ins3525-svr/export/nv/solarisdvd.nvs_dvd/latest/Solaris_11/Product un.usr
              logprogress 774 local_pkgadd SUNWj5dev
              do_local_pkgadd / SUNWj5cfg /net/ins3525-svr/export/nv/solarisdvd.nvs_dvd/latest/Solaris_11/Product un.root
              logprogress 988 local_pkgadd SUNWj5cfg
              do_local_pkgadd / SUNWj5dmo /net/ins3525-svr/export/nv/solarisdvd.nvs_dvd/latest/Solaris_11/Product un.usr
              logprogress 997 local_pkgadd SUNWj5dmo
              do_local_pkgadd / SUNWj5rtx /net/ins3525-svr/export/nv/solarisdvd.nvs_dvd/latest/Solaris_11/Product un.usr
              logprogress 1015 local_pkgadd SUNWj5rtx
              do_local_pkgadd / SUNWj5dmx /net/ins3525-svr/export/nv/solarisdvd.nvs_dvd/latest/Solaris_11/Product un.usr
              logprogress 1016 local_pkgadd SUNWj5dmx
              do_local_pkgadd / SUNWj5dvx /net/ins3525-svr/export/nv/solarisdvd.nvs_dvd/latest/Solaris_11/Product un.usr
              logprogress 1017 local_pkgadd SUNWj5dvx
              do_local_pkgadd / SUNWj5man /net/ins3525-svr/export/nv/solarisdvd.nvs_dvd/latest/Solaris_11/Product un.usr
              logprogress 1018 local_pkgadd SUNWj5man
      # grep SUNWj6 up*script
              do_removef / SUNWj6rt
              logprogress 161 removef SUNWj6rt
              do_removef / SUNWj6dev
              logprogress 232 removef SUNWj6dev
              do_removef / SUNWj6man
              logprogress 527 removef SUNWj6man
              do_local_pkgadd / SUNWj6rt /net/ins3525-svr/export/nv/solarisdvd.nvs_dvd/latest/Solaris_11/Product usr
              logprogress 775 local_pkgadd SUNWj6rt
              do_local_pkgadd / SUNWj6cfg /net/ins3525-svr/export/nv/solarisdvd.nvs_dvd/latest/Solaris_11/Product root
              logprogress 1040 local_pkgadd SUNWj6cfg
              do_local_pkgadd / SUNWj6dev /net/ins3525-svr/export/nv/solarisdvd.nvs_dvd/latest/Solaris_11/Product usr
              logprogress 1041 local_pkgadd SUNWj6dev
              do_local_pkgadd / SUNWj6dmo /net/ins3525-svr/export/nv/solarisdvd.nvs_dvd/latest/Solaris_11/Product usr
              logprogress 1043 local_pkgadd SUNWj6dmo
              do_local_pkgadd / SUNWj6rtx /net/ins3525-svr/export/nv/solarisdvd.nvs_dvd/latest/Solaris_11/Product usr
              logprogress 1063 local_pkgadd SUNWj6rtx
              do_local_pkgadd / SUNWj6dmx /net/ins3525-svr/export/nv/solarisdvd.nvs_dvd/latest/Solaris_11/Product usr
              logprogress 1064 local_pkgadd SUNWj6dmx
              do_local_pkgadd / SUNWj6dvx /net/ins3525-svr/export/nv/solarisdvd.nvs_dvd/latest/Solaris_11/Product usr
              logprogress 1066 local_pkgadd SUNWj6dvx
              do_local_pkgadd / SUNWj6man /net/ins3525-svr/export/nv/solarisdvd.nvs_dvd/latest/Solaris_11/Product usr
              logprogress 1068 local_pkgadd SUNWj6man
      #
      This summarize the failure of /usr/java link. In all cases, I am using SUNWCXall

      Arch Upgrade from OS Upgrade to OS /usr/java
      =================================================================
      x86 Solaris 9 Update 8 snv_49 points to Java 1.5 - Fails
      sparc Solaris 9 Update 9 snv_51a points to Java 1.6 - OK
      x86 Solaris 10 FCS snv_49 points to Java 1.5 - Fails
      sparc Solaris 10 FCS snv_52 In progress
      sparc snv_48 snv_50 points to Java 1.5 - Fails
      sparc snv_50 snv_52 points to Java 1.5 - Fails
      x86 snv_48 snv_50 points to Java 1.5 - Fails
      x86 snv_50 snv_52 points to Java 1.5 - Fails
      Any upgrade to snv_49 (or indeed anything less than snv_51) should
      result in 1.5 being the default. Hence lines above with snv_49 should
      read "points to Java 1.5 - OK".

      If the same version of Java packages is present in builds 48 through 52,
      there is a simple explanation for all of this.

            jkowalsksunw Joseph Kowalski (Inactive)
            mmding Mary Ding (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: