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

Remove sun.nio.ch.Util.atBugLevel() either completely or at least get rid of volatile field bugLevel

    Details

    • Type: Enhancement
    • Status: Resolved
    • Priority: P4
    • Resolution: Fixed
    • Affects Version/s: 10
    • Fix Version/s: 10
    • Component/s: core-libs
    • Labels:
      None
    • Subcomponent:
    • Resolved In Build:
      b19

      Description

      The implementation for honoring the system property "sun.nio.ch.bugLevel" uses the same pattern as was used for "sun.nio.cs.bugLevel". The method sun.nio.ch.Util.atBugLevel() returns a value that is stored in a volatile field. The synchronization efforts that "volatile" implies can significantly harm performance on some platforms.

      With JDK-8182743, the handling for "sun.nio.cs.bugLevel" has been removed completely. Although "sun.nio.ch.bugLevel" is probably not queried at performance relevant places, such as the former was, the aim of this bug is to try to remove this as well or at least get rid of the volatile.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                clanger Christoph Langer
                Reporter:
                clanger Christoph Langer
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: