JDBC Type 4 Driver Performance Tuning Guide for Version 1.0
HP NonStop JDBC Type 4 Driver 
Performance Tuning Guide for Version 1.0 
Page 2  Hewlett-Packard Company — 529619-001  November 29, 2004 
3  NonStop JDBC Type 4 Driver Tuning Tips 
3.1 Configuration Tips 
•  Connection pooling. Use connection pooling either explicitly with your own 
implementation, the Type 4 driver connection pooling mechanism (the default 
is no connection pooling) or implicitly through a product that supports 
connection pooling, such as BEA Weblogic Server, or IBM WebSphere, etc. 
•  Maximum pool size. Use the maxPoolSize and minPoolSize properties to 
tune the connection pool. 
o  The default maxPoolSize is 0—“unlimited” pool size. 
o  The default minPoolSize is 0—connections are never physically closed 
but are added to the connection pool. 
o  Set minPoolSize to the anticipated number of connections to be used. 
For example, set minPoolSize to the number of application threads. 
•  Statement pooling. Set the maxStatements property to enable statement 
pooling (the default is no statement pooling). For example, 
SQLMXDataSource.setMaxStatements(100). 
•  Logging. Turn off logging. Set the t4LogLevel property to OFF (the default is 
OFF). Set the DriverManager.setLogWriter() and/or 
DataSource.setLogWriter() methods to null (the default is null). 
•  Heap manager. Increase or decrease the Java virtual machine (JVM) heap 
size to balance performance versus memory usage. The Type 4 driver creates 
objects that must be garbage collected by the JVM. For additional information 
on JVM heap optimization, see the Tuning Garbage Collection with the 1.4.2 
Java™ Virtual Machine at http://java.sun.com/docs/hotspot/gc1.4.2/ and 
Turbo-charging Java HotSpot Virtual Machine, v1.4.x to Improve the 
Performance and Scalability of Application Servers at 
http://java.sun.com/developer/technicalArticles/Programming/turbo/. 
3.2  Design and Programming Tips 
•  Do not use the same connection simultaneously in different threads. The 
connection’s operations will be serialized. Use different connections with 
different threads to get parallel execution. 
•  Use the same connection to execute multiple statements. Closing and 
reopening a connection can be very costly. 
•  When using connection pooling, avoid setting the connection’s catalog, 
schema, transaction isolation, and autocommit attributes programmatically at 






