|
| PureLoadTM |
| Frequently Asked Questions |
|
|
|
|
|
|
|
| General |
|
|
|
| Platform Specific Problems |
|
|
|
| Advanced |
|
|
|
|
|
| General |
|
| How many virtual users can PureLoad simulate? |
|
|
This is mostly depending on the particular user definition of the system to be tested. Other factors are which hardware is being used to generate load and how CPU/network intensive the performed operations are. |
|
| The PureLoad license limits the number of virtual clients. Each client can be used freely to simulate user behavior. As a rule of thumb, one can generally simulate one user with one virtual client. See What is a virtual client? for more details. |
|
| How many worker threads can I use per worker? |
|
| This depends on the platform as well as which version of Java VM being used. For most cases it should be technically possible to use at least around 500 threads per worker. Such a high number of threads could make sense if running scenarios with a lot of sleep time, but otherwise it is not recommended. Also see Tuning PureLoad. |
|
| When I copy/paste from PureLoad to Excel (using Ctrl-C) an extra line is inserted. Why?
|
|
The default end-of-line delimiter (on Windows) is "\r\n" (Return + Newline).
When pasting into Excel you should change this to "\r" (Return), using the Properties dialog. |
|
| My test seems to hang. What is happening? |
|
| The server application does not respond. Stop execution, enable a task specific debug, trace or verbose settings and run again. Watch the worker log carefully if it halts when contacting the server application. Another work-a-round is to set timeout on the failing task. This will cause the test to continue even if a task hangs. |
|
| "Port already in use" error |
|
| If you get error messages when starting PureLoad servers saying something similar to: |
|
Error starting NamingServer at: host[192.168.10.1]:1099
Exception message is: Port already in use: 1099; .... |
|
| This means that the specified port is used by another process. The most common reason is that you already have an instance of the PureLoad server running. Another reason could be that the specified port is used by another program installed on the machine. In this case you must choose another port for the actual process. Read the Installation properties section for more information. |
|
| "Class not found" error |
|
If you get the error message "Class not found" then the following might be appropriate.
PureLoad does not rely on the CLASSPATH environment variable. Instead this setting among others is defined in the $PURELOAD_HOME/bin/pureload.lax file as property lax.class.path. |
|
| Some generic tasks such as the JDBC tasks needs a JDBC driver in order for the tasks to be able to execute. In this case you must update the lax.class.path property to include the location of the JDBC driver classes. If the class path is correct but you still get this error, it can be an invalid message. On some platforms, the Java VM reports ClassNotFoundException when the real problem is rather an out of memory exception, see the next section about "Out of memory". |
|
| Note: For tasks using external code such as the example above with JDBC driver then you will need to make these dependencies available to the task space process and all machines that hosts worker threads. I.e. include appropriate class files, etc. in the CLASSPATH. |
|
| "Out of memory" error |
|
| If "Out of memory" exceptions appear in the worker log then you will need to increase the memory size of the worker JVM. This exception may also be caused by running out of other OS resources, for example max. number of open file descriptors on UNIX (see below). To increase the maximum allowed memory for a worker, modify worker.args in the $PURELOAD_HOME/bin/pureload.lax file. See PureLoad Tuning for more information. |
|
| Large scenarios that are executed many times (iterations) might cause the console to report out of memory problems. This is typically related to when the Update Interval setting in Tool Properties is set to low (polling to often). Increase the number of seconds and try again. |
|
| Platform Specific Problems |
|
| I have problem downloading your software using Internet Explorer? |
|
| We have received reports that downloads doesn't work for some customers using Internet Explorer, please read more about Download Problems. |
|
| When starting PureLoad I get segmentation fault on my Linux platform? |
|
| This is may be caused by a problem, described in the release notes for Java 2 SDK, Standard Edition Version 1.3.1 as follows: |
|
| The newer glibc-2.2.x libraries cannot correctly handle initial thread stack sizes larger than 6 MB. This can cause a segmentation fault on some Linux platforms that use the newer libraries. Such platforms include Red Hat 7.0, Mandrake 8.0, SuSe 7.2, and Debian 2.2. The problem will not occur on Linux platforms that are using glibc-2.1.x such as Red Hat 6.1 and 6.2. It will also not affect Red Hat 7.1 because it uses a different thread stack layout. |
|
| Workaround - Use "ulimit -s 2048" in bash shell or "limit stacksize 2048" in tcsh to limit the initial thread stack to 2 MB. |
|
| Out of environment space" on a Windows 95/98 system |
|
| If you encounter an "Out of environment space" error, then you will need to increase the size of the environment table. You do this by editing the CONFIG.SYS configuration file. The change will be permanent and you must restart the computer in order to get use of it. |
|
| shell=command.com /e:8192 /p |
|
| Once you have increased the size of the environment table, try running PureLoad again. |
|
| Note: It is not recommended to use Windows 95/98 with PureLoad other in evaluation purposes. |
|
| "Connection refused" error in Windows |
|
| PureLoad workers creates lot of client OS threads that all attempt to connect to the task space and naming servers. If you receive "Connection refused" errors this is probably due to that the backlog of connection requests limit in Windows are reached. Windows NT 4.0 Workstation and Windows 2000 Professional are limited to a backlog of 5 connection requests. Windows NT 4.0 Server and Windows 2000 Server can accept a backlog of up to 200 connections. You can change the behavior on a NT server with some registry settings. See the Microsoft documentation on how to do this (and the possible implications of doing it). |
|
| Out of file descriptors on UNIX |
|
| PureLoad uses sockets (RMI) for internal communication between the servers. This should not cause running out of file descriptor, but if used together with Tasks that uses file descriptors this might be a problem. See PureLoad Tuning for more information. |
|
| Advanced |
|
| I implement my own tasks, but I'm not able to load them into PureLoad. Why? |
|
| The most common reason for this is related to how the CLASSPATH is used in PureLoad. There are two properties that you should define in the pureload.lax file: |
|
- lax.class.path
the Java classpath necessary to run this application. This must include the path to your own tasks and other classes used by your tasks.
- autoreload.class.path
the classpath including classes that should be reloaded when changed. This should include the path to your own tasks and other classes used by your tasks.
|
| I want to use PureLoad servers located outside of my firewall. Can I do this? |
|
| PureLoad uses RMI for internal communication between servers and the console and there is no way to restrict the ports used by RMI that we are aware of (which makes it hard to configure a firewall). |
|
| As described in the document: http://java.sun.com/j2se/1.3/docs/guide/rmi/faq.html#firewall there are two main methods to handle cases like this: HTTP-tunneling or SOCK |
|
| We do have a small SOCKS server written in Java that we can provide as as a work-a-round. Please contact support@codework.com for more information. |
|