5 Replies Latest reply on Dec 14, 2007 1:05 AM by starksm64

    Major regression in EJBSpecUnitTestCase run time

    starksm64

      I'm seeing a 10x increase in the runtime of the org.jboss.test.security.test.EJBSpecUnitTestCase under jbossas5 trunk vs jbossas4.2 trunk.

      jbossas5:
      [starksm@succubus testsuite]$ run_tests.sh
      ant -Dtest=org.jboss.test.security.test.EJBSpecUnitTestCase -Dnojars=t -Djunit.timeout=1800000 -Djbosstest.cluster.node0=192.168.3.130 -Djbosstest.cluster.node1=192.168.3.120 -Djbosstest.threadcount=1 -Djbosstest.iterationcount=50 one-test
      ...
      one-test:
      [mkdir] Created dir: /home/svn/JBossHead/jboss-head/testsuite/output/log
      [junit] Running org.jboss.test.security.test.EJBSpecUnitTestCase
      [junit] Found log4j.xml: file:/home/svn/JBossHead/jboss-head/testsuite/output/resources/log4j.xml
      [junit] Tests run: 25, Failures: 0, Errors: 4, Time elapsed: 55.844 sec
      [junit] Test org.jboss.test.security.test.EJBSpecUnitTestCase FAILED

      jbossas4.2:
      [starksm@succubus testsuite]$ run_tests.sh
      ant -Dtest=org.jboss.test.security.test.EJBSpecUnitTestCase -Dnojars=t -Djunit.timeout=1800000 -Djbosstest.cluster.node0=192.168.3.130 -Djbosstest.cluster.node1=192.168.3.120 -Djbosstest.threadcount=1 -Djbosstest.iterationcount=50 one-test
      Buildfile: build.xml

      one-test:
      [mkdir] Created dir: /home/svn/JBossAS/JBoss4.2/Branch_4_2/testsuite/output/log
      [junit] Running org.jboss.test.security.test.EJBSpecUnitTestCase
      [junit] Tests run: 25, Failures: 0, Errors: 0, Time elapsed: 5.13 sec

      BUILD SUCCESSFUL
      Total time: 7 seconds

      The majority of the time is spent in the 2 stress methods testStress, testStressNoJaasCache, which just make jbosstest.iterationcount (min 100) calls to a secure ejb using jbosstest.threadcount threads. Each iteration is just an ejb jaas-login/create/invoke/remove/jaas-logout cycle for a simple stateless ejb, so the delay is either in the security layer, or the remoting transport layer.