Uploaded image for project: 'River (Retired)'
  1. River (Retired)
  2. RIVER-415

Non-forward compatible code leads to RuntimeException when accessing class com.sun.jini.logging.Levels

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • jtsk_2.1, River_2.2.0
    • None
    • com_sun_jini_logging
    • None
    • Oracle JDK 1.6.0_38 or higher; 1.7.0_13 or higher

    • Hide
      Run against a JDK version which matches the expected serialization format; or patch the local version of Levels to match the expected format.

      A fuller fix needs more complicated serialization/deserialization code to create a Level object.
      Show
      Run against a JDK version which matches the expected serialization format; or patch the local version of Levels to match the expected format. A fuller fix needs more complicated serialization/deserialization code to create a Level object.

    Description

      With Oracle JDK 1.6.0_38 and JDK 1.7.0_13, Oracle added an extra field (localizedLevelName) to java.util.logging.Level.

      com.sun.jini.logging.Levels contains some code which depends on knowing the serialization format of the JDK class and crashes with the below exception when attempting to upgrade JDK version.

      java.lang.RuntimeException: Unexpected exception
      at com.sun.jini.logging.Levels.createLevel(Levels.java:142)
      at com.sun.jini.logging.Levels.<clinit>(Levels.java:52)
      ... 20 more
      Caused by: java.io.EOFException
      at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2577)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1315)
      at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1970)
      at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1894)
      at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1777)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
      at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
      at com.sun.jini.logging.Levels.createLevel(Levels.java:138)
      ... 21 more

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              rgibson Robert Gibson
              Votes:
              1 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: