harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Vasily Zakharov (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HARMONY-2615) [drlvm][test] Stress test for massive class loading from bootclasspath
Date Mon, 26 Feb 2007 13:05:08 GMT

     [ https://issues.apache.org/jira/browse/HARMONY-2615?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Vasily Zakharov updated HARMONY-2615:
-------------------------------------

    Attachment: ClassLoadingStressTest.java
                ClassLoadingStress.java

Attached updated version of the test, multi-threaded and with much improved diagnostics.

ClassLoadingStress.java - the standalone test itself.

ClassLoadingStressTest.java - JUnit wrapper, each test case must be run in its own VM.


> [drlvm][test] Stress test for massive class loading from bootclasspath
> ----------------------------------------------------------------------
>
>                 Key: HARMONY-2615
>                 URL: https://issues.apache.org/jira/browse/HARMONY-2615
>             Project: Harmony
>          Issue Type: Test
>          Components: DRLVM
>            Reporter: Vasily Zakharov
>         Attachments: ClassLoadingStress.java, ClassLoadingStressTest.java, CrashTestBCP.java,
CrashTestBCP2.java
>
>
> This is a stress test which loads all the classes it finds in VM bootclasspath using
simple Class.forName() call.
>  
> Not all of the classes are supposed to be loaded correctly this way, so the test ignores
any class loading errors - its main purpose is to make sure VM survives loading thousands
of classes without a crash. Also, investigating why particular classes fail to load may provide
clues to some other bugs in VM or classlib.
> I recommend including this test to some Harmony test suite that is run regularly, as
it may detect many VM issues that may occur in future.
> Currently this test crashes both on Windows/IA32 and Linux/IA32 in a very strange way
- at some point, unhandled exception occurs inside the catch(Throwable) block:
> 9879: org.mmtk.plan.Plan
> java.lang.ClassNotFoundException: null.Factory
>         at java.lang.Class.forName(Unknown Source)
>         at java.lang.Class.forName(Unknown Source)
>         at org.mmtk.vm.VM.<clinit>(Unknown Source)
>         at org.mmtk.utility.Constants.<clinit>(Unknown Source)
>         at org.mmtk.plan.Plan.<clinit>(Unknown Source)
>         at java.lang.VMClassRegistry.initializeClass(Native Method)
>         at java.lang.Class.forName(Unknown Source)
>         at java.lang.Class.forName(Unknown Source)
>         at CrashTestBCP.load(CrashTestBCP.java:75)
>         at CrashTestBCP.main(CrashTestBCP.java:98)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message