2 Replies Latest reply on Jan 3, 2019 4:04 AM by Jordi Miquel Codina

    Tabjolt custom plan error: Failed to set up load test session

    Alexandra Usacheva

      Hi everyone,

       

      I am having an issue with Tabjolt running a custom plan.

       

      In Jmeter, I have opened the default 'InteractVizLoadTest', made no changes at all and saved it as custom plan with a new name (For testing. So I am sure that the errors come from Jmeter installation, not from the poor configuration of the custom plan).

      Then I launched the default IteractVizLoadTest and all was perfect. No errors, all is good. Later, I launched the custom (logically equal) plan. It has started all necessary processes, and I got to the line:

      Created the tree successfully using C:\Tabjolt\testplans\InteractVizLoadTest-Jmeter-1.jmx

      Starting the test @ Thu Jul 26 19:54:45 NOVT 2018 (1532613285282)

       

      But after that, there is an error:

       

      FATAL [2018-07-26 19:54:45,944][setUp Thread Group 1-1] (LoadSessionSetup.java:78)   - Failed to set up load test session. Stopping the test run.

      java.lang.NullPointerException

           at com.tableausoftware.test.server.perfTestSuite.LoadSessionSetup.runTest(LoadSessionSetup.java:52)

           at org.apache.jmeter.protocol.java.sampler.JavaSampler.sample(JavaSampler.java:191)

           at org.apache.jmeter.threads.JMeterThread.process_sampler(JMeterThread.java:429)

           at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:257)

           at java.lang.Thread.run(Thread.java:745)

       

      What can be wrong?

       

      And also FYI:

      1. I copied the files from tabjolt directory to the apache jmeter directory, so it has all the .jar files. (Maybe I've missed some?)

      2. I also had a look on a known bug found in Tabjolt documentation (the one where you shoud copy some text rows from the default plan to the custom one) - but the comparison of these two text files didn't gave me any differences, except for some new arguments in the custom one and some Prop names. Guess they are not the reason if the issue.

      3. In Jmeter, when opening a custom plan, I can see the proper classname: com.tableausoftware.test.server.perfTestSuite.InteractVizTest.

      4. I launch Jmeter with a custom .bat file, where I define the proxy parameters for the connection. Could this be a reason?

       

      All thoughts on this are welcome!

       

      Thank you.

      Aleksandra

        • 1. Re: Tabjolt custom plan error: Failed to set up load test session
          Alexandra Usacheva

          After researching a bit further I did try deleting all the differences between the custom test file and the default file using Beyond Compare.

          I have seen posts like below earlier, but I had much more differences, so I was not sure what exactly I should delete:

          Tabjolt custom workload mix "Failed to set up load test session" error

           

          So I made both file totally equal and the custom test works!

           

          I still need to figure out the duration and the number of threads numbers, because when setting --d parameter to 30 sec in run.bat, I got the duration equal to 18 sec in Postgres db.

          • 2. Re: Tabjolt custom plan error: Failed to set up load test session
            Jordi Miquel Codina

            Hi Alexandra,

             

            Nice that you could make your custom test work...

             

            I have installed version 2018.2 and when trying to run jmeter (bin\jmeter.bat from the TabJolt root folder) to be able to customize my own test plans I got the following error...

             

            D:\Tableau\Tabjolt\TabJolt\bin>jmeter.bat

            The system cannot find the path specified.

            errorlevel=3

            Press any key to continue . . .

             

            If instead I try to run the command from the java path where TabJolt installs jre:

             

            D:\Tableau\Tabjolt\TabJolt\jre\bin>java -jar "D:\Tableau\Tabjolt\TabJolt\bin\ApacheJMeter.jar"

             

            I get the following error

             

            2019/01/03 11:55:52 ERROR - jmeter.gui.action.ActionRouter: exception finding action handlers java.lang.SecurityException: Prohibited package name: java.main.com.tableausoftware.hostedutils

                    at java.lang.ClassLoader.preDefineClass(ClassLoader.java:659)

                    at java.lang.ClassLoader.defineClass(ClassLoader.java:758)

                    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)

                    at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)

                    at java.net.URLClassLoader.access$100(URLClassLoader.java:73)

                    at java.net.URLClassLoader$1.run(URLClassLoader.java:368)

                    at java.net.URLClassLoader$1.run(URLClassLoader.java:362)

                    at java.security.AccessController.doPrivileged(Native Method)

                    at java.net.URLClassLoader.findClass(URLClassLoader.java:361)

                    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)

                    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)

                    at java.lang.Class.forName0(Native Method)

                    at java.lang.Class.forName(Class.java:348)

                    at org.apache.jorphan.reflect.ClassFinder.isChildOf(ClassFinder.java:465)

                    at org.apache.jorphan.reflect.ClassFinder.access$000(ClassFinder.java:46)

                    at org.apache.jorphan.reflect.ClassFinder$FilterTreeSet.add(ClassFinder.java:106)

                    at org.apache.jorphan.reflect.ClassFinder$FilterTreeSet.add(ClassFinder.java:63)

                    at org.apache.jorphan.reflect.ClassFinder.findClassesInOnePath(ClassFinder.java:532)

                    at org.apache.jorphan.reflect.ClassFinder.findClassesInPaths(ClassFinder.java:548)

                    at org.apache.jorphan.reflect.ClassFinder.findClassesThatExtend(ClassFinder.java:291)

                    at org.apache.jmeter.gui.action.ActionRouter.populateCommandMap(ActionRouter.java:257)

                    at org.apache.jmeter.gui.action.ActionRouter.getInstance(ActionRouter.java:300)

                    at org.apache.jmeter.JMeter.startGui(JMeter.java:231)

                    at org.apache.jmeter.JMeter.start(JMeter.java:380)

                    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

                    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

                    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

                    at java.lang.reflect.Method.invoke(Method.java:497)

                    at org.apache.jmeter.NewDriver.main(NewDriver.java:259)

             

             

            2019/01/03 11:55:53 FATAL - jmeter.JMeter: An error occurred:  java.lang.SecurityException: Prohibited package name: java.main.com.tableausoftware.hostedutils

                    at java.lang.ClassLoader.preDefineClass(ClassLoader.java:659)

                    at java.lang.ClassLoader.defineClass(ClassLoader.java:758)

                    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)

                    at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)

                    at java.net.URLClassLoader.access$100(URLClassLoader.java:73)

                    at java.net.URLClassLoader$1.run(URLClassLoader.java:368)

                    at java.net.URLClassLoader$1.run(URLClassLoader.java:362)

                    at java.security.AccessController.doPrivileged(Native Method)

                    at java.net.URLClassLoader.findClass(URLClassLoader.java:361)

                    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)

                    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)

                    at java.lang.Class.forName0(Native Method)

                    at java.lang.Class.forName(Class.java:348)

                    at org.apache.jorphan.reflect.ClassFinder.isChildOf(ClassFinder.java:465)

                    at org.apache.jorphan.reflect.ClassFinder.access$000(ClassFinder.java:46)

                    at org.apache.jorphan.reflect.ClassFinder$FilterTreeSet.add(ClassFinder.java:106)

                    at org.apache.jorphan.reflect.ClassFinder$FilterTreeSet.add(ClassFinder.java:63)

                    at org.apache.jorphan.reflect.ClassFinder.findClassesInOnePath(ClassFinder.java:532)

                    at org.apache.jorphan.reflect.ClassFinder.findClassesInPaths(ClassFinder.java:548)

                    at org.apache.jorphan.reflect.ClassFinder.findClassesThatExtend(ClassFinder.java:291)

                    at org.apache.jorphan.reflect.ClassFinder.findClassesThatExtend(ClassFinder.java:215)

                    at org.apache.jorphan.reflect.ClassFinder.findClassesThatExtend(ClassFinder.java:198)

                    at org.apache.jorphan.reflect.ClassFinder.findClassesThatExtend(ClassFinder.java:159)

                    at org.apache.jmeter.gui.util.JMeterMenuBar.createMenuBar(JMeterMenuBar.java:241)

                    at org.apache.jmeter.gui.util.JMeterMenuBar.<init>(JMeterMenuBar.java:161)

                    at org.apache.jmeter.gui.MainFrame.init(MainFrame.java:458)

                    at org.apache.jmeter.gui.MainFrame.<init>(MainFrame.java:216)

                    at org.apache.jmeter.JMeter.startGui(JMeter.java:234)

                    at org.apache.jmeter.JMeter.start(JMeter.java:380)

                    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

                    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

                    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

                    at java.lang.reflect.Method.invoke(Method.java:497)

                    at org.apache.jmeter.NewDriver.main(NewDriver.java:259)

             

            An error occurred: Prohibited package name: java.main.com.tableausoftware.hosted utils

             

            Is it the same version of TabJolt that you have installed (2018.2)?

            Do you remember having  to tweak the Tabjolt configuration to be able to start jmeter, i.e. modifying the files or installing other components (Java SDK)?

             

            Thanks in advance,

             

            Jordi