Uploaded image for project: 'JBoss Modules'
  1. JBoss Modules
  2. MODULES-435

Module.addExportedPaths performance degraded by ModuleIdentifier deprecation

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Unresolved
    • Icon: Major Major
    • 2.1.6.Final
    • 1.12.0.Final
    • None

      Module.addExportedPaths degrades in performance on 1.6+ after MODULES-256. This could become noticeable in a case of more complex/numerous modules+dependencies and is something I saw remaining for similar cases after resolving WFCORE-6188. It's noteworthy there is no impact on EAP 7.0.9 (around ~10 second start with attached test app) and 7.1.0+ degrades to 30+ seconds with MODULES-256.

      From thread dumps and a JFR, I can see it is spending more times in call stacks like:

      java.lang.String.offsetByCodePoints
      org.jboss.modules.ModuleIdentifier.toString()
      org.jboss.modules.ModuleLoader.loadModuleLocal
      org.jboss.modules.ModuleLoader.preloadModule
      org.jboss.modules.Module.addExportedPaths
      

      And:

      java.lang.String.hashCode
      org.jboss.modules.ModuleIdentifier.calculateHashCode
      org.modules.ModuleIdentifier.<init>
      org.jboss.modules.ModuleIdentifier.fromString
      org.jboss.modules.ModuleLoader.preloadModule
      org.jboss.modules.Module.addExportedPaths
      

      For repeating dependencies, these could repeat the same calls a lot for recurring overhead.

              Unassigned Unassigned
              rhn-support-aogburn Aaron Ogburn
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated: