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

Some tests fail when using a limited number of pregenerated .jsa CDS archives

XMLWordPrintable

    • b14
    • generic
    • generic

        Currently the default JVM comes on most platforms with 4 jsa files (for coops/nocoops and with and without compressed object headers).
        See also :

        https://github.com/openjdk/jdk/blob/master/make/Images.gmk#L195C1-L213C6

        ifeq ($(BUILD_CDS_ARCHIVE), true)
          $(foreach v, $(JVM_VARIANTS), \
            $(eval $(call CreateCDSArchive,$v,)) \
          )

          ifeq ($(call isTargetCpuBits, 64), true)
            $(foreach v, $(JVM_VARIANTS), \
              $(eval $(call CreateCDSArchive,$v,_nocoops)) \
            )
            ifeq ($(BUILD_CDS_ARCHIVE_COH), true)
              $(foreach v, $(JVM_VARIANTS), \
                $(eval $(call CreateCDSArchive,$v,_coh)) \
              )
              $(foreach v, $(JVM_VARIANTS), \
                $(eval $(call CreateCDSArchive,$v,_nocoops_coh)) \
              )
            endif
          endif
        endif


        But there might be cases where the number of jsa files is reduced (see for example BUILD_CDS_ARCHIVE_COH).
        The (jtreg) tests coming with the codebase should still work in case a JVM has reduced numbers of jsa files.
        But for some tests this is currently not the case.
        Examples:

        test/hotspot/jtreg/runtime/CompressedOops/CompressedCPUSpecificClassSpaceReservation.java
        test/hotspot/jtreg/runtime/cds/TestDefaultArchiveLoading.java
        test/hotspot/jtreg/runtime/cds/appcds/loaderConstraints/DynamicLoaderConstraintsTest.java (custom-cl-zgc)

        Maybe we could add a new @requires tag for these tests?
        Or somehow check that all jsa archives are present?

              mbaesken Matthias Baesken
              mbaesken Matthias Baesken
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: