This page contains answers to common questions about Hammerora

   

Can I contribute to Hammerora?

Absolutely, improvements, enhancements, bug fixes or even suggestions are all welcomed for inclusion into Hammerora by contacting smshaw@users.sourceforge.net

Back to Top

   

Does Hammerora charge expensive 'virtual user day' licensing fees?

It is a common perception that as a rule load testing software charges licensing fees per user per day. Hammerora is free software ( free as in freedom ) and has no licensing fees. It therefore has no such restrictions allowing the creation of the number of virtual users that the hardware will support.

Back to Top

   

On Windows why does Oratcl fails to load with the error "couldn't load library"?

A common error is for Oratcl to be compiled and available in the correct location and this package loads however if the OCI libraries cannot be found the full error as below will be seen:

couldn't load library "C:/Program Files/Tcl/lib/oratcl4.1/../oratcl41.dll": this library or a dependent library could not be found in library path

Under the "My computer" properties "advanced" tab set the lib environment variable to include the Oracle OCI libraries. Detailed information can be found in the Installation section.

Back to Top

   

Does Hammerora work with other databases?

Hammerora's development and testing is done with Oracle and the oratcl OCI interface. Saying this Hammerora is architected to work with any thread-safe TCL extension and therefore for example Hammerora is effective as a load test tool for MySQL, see the following link for compilation and use of TCLMySQL

http://www.xdobry.de/mysqltcl/index.html

TCLODBC has also been reported to be thread safe and is available at the following location. Hammerora  with  a TCLODBC interface has been tested and used successfully with SQL Server 2000.

http://sourceforge.net/projects/tclodbc

TclODBC V2.x has been used or tested with: SQLBase, MS SQL Server, Oracle, Progress, Sybase SQLAnywhere, Informix Online Dynamic Server, PostgresSQL, MySQL, Microsoft Access, Paradox, Unify DataServer.

Back to Top

   

What is TPC-C?

TPC-C is the industry standard database benchmark for OLTP systems. More information can be found at  tpc.org.

Back to Top

   

How can I time my SQL statements in TCL?

The TCL time or clock commands are useful for timing statements. More information is available in the documentation.

Back to Top



   

What is a good transaction rate for the TPC-C tests?

The transaction rates measured for the TPC-C tests depend on many variables of which the CPU and disk performance are the most influential as well as the number of warehouses tested. Oracle licensing prevents disclosure of specific results however a simple notebook/desktop would most likely report a transaction rate of a few thousand whereas a production level server would record transaction rates in the tens to hundreds of thousands.

Back to Top

   

Is Hammerora affiliated with Oracle?

No Hammerora or its author are not affiliated with Oracle in any way.

Back to Top

   

How much disk space should I allocate for the TPC-C schema?

For the TPC-C schema allocate approximately 100MB per warehouse.

Back to Top

   

I get ora-1000 "too many open cursors." when creating the TPC-C schema, is this a TCL error?

This error is an Oracle specific error resolved by setting the Oracle parameter open_cursors to a higher value than the default, a suggested starting point is 300-500.

Back to Top

   

Why when running the TPC-C tests is the transaction rate/activity so low?

The default TPC-C test implements thinking and keying as defined in the TPC-C specification. To implement a higher workload set the parameter KEYANDTHINK to a non-true value as below:

set KEYANDTHINK "false"

Back to Top

   

Is it possible to open and read CSV files for input into tests?

Yes, any TCL commands supported in a normal multi-threaded environment are supported within Hammerora. Therefore opening and reading input data from files is possible by simply using the TCL "open" and "read" commands. Writing to the same file within threads is not advisable.

Back to Top

   

Why do I get the Oracle error ORA-01461: can bind a LONG value only for insert INTO a LONG column when creating the TPC-C schema?

This error has been reported when using a multibyte character set such as UTF8 on the server but not on the client and is an Oracle bug. To resolve the bug set the client character set to the same as the server.

Back to Top

   

Why can't I create more than 250-270 virtual users on Red Hat Enteprise Linux 3.0?

This is an operating system per user limit and not a hammerora bug. To create more virtual users increase the stack size with the command ulimit -s

Back to Top

   

Why does the application crash when running more than 1 thread in an SMP environment?

This error has been reported on a number of different platforms and summarised in bug 785404. Regardless of platform this bug "goes away" when using TCL 8.4.7 and Oracle 10g and therefore these components are advised.

Back to Top

   

Why does the TPC-C creation script not create the Default TPC-C tablespace?

TPCCTAB is the name of the tablespace in which you want the TPC-C schema created though you can also use any other tablespace you wish. To create this tablespace needs to allocate a datafile for storage which will depend on the particular system and the space needed depends on the number of warehouses to create. Therefore before creating the TPC-C schema  create the tablespace required for example:
 
CREATE TABLESPACE TPCCTAB DATAFILE '/u01/oradata/tpcctab1.dbf'
SIZE 1000M EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;

Back to Top

Do you have to pay a license to implement TPC-C?

To quote from the TPC FAQ at http://www.tpc.org/information/about/faq-generic.asp
TPC benchmarks are industry standards. The TPC, at no charge,distributes its benchmark specifications to the public.

Back to Top


How long does it take to populate the TPC-C schema?

A test load  on a 1.5GHz CPU notebook generating the data local to the database created a 1 warehouse schema in 3 minutes.  For the data generation the time taken will be dependant upon CPU capacity. Loading across a network will likely take a longer time due to the network latency for commits.

Back to Top