JDBC Type 4 Driver Performance Tuning Guide for Version 1.1
HP NonStop JDBC Type 4 Driver 
Performance Tuning Guide for Version 1.0 
Page 2  Hewlett-Packard Company — 529619-002  April 8, 2005 
3  NonStop JDBC Type 4 Driver Tuning Tips 
3.1 Configuration Tips 
•  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, IBM WebSphere, etc. 
•  Use the maxPoolSize and minPoolSize properties to tune the connection pool. 
The default maxPoolSize and minPoolSize is -1, “no connection pooling.” 
•  Set minPoolSize to the anticipated number of connections to be used. For 
example, set minPoolSize to the number of application threads. 
•  Set the maxStatements property to enable statement pooling (the default is no 
statement pooling). For example, SQLMXDataSource.setMaxStatements(100). 
•  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). 
•  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 documents, 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/. 
•  Turn off translation Verification. Set the translationVerification property to false 
(the default is false). 
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. 
•  Use prepared statements (PreparedStatement class), and parameterize its 
arguments. 
•  Avoid retrieving unnecessary columns: don't use "SELECT *". 






