[jboss-svn-commits] JBL Code SVN: r31625 - labs/jbosstm/workspace/whitingjr/trunk/performance/src/test/java/auction/test/basic.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Fri Feb 12 13:13:56 EST 2010
Author: whitingjr
Date: 2010-02-12 13:13:55 -0500 (Fri, 12 Feb 2010)
New Revision: 31625
Modified:
labs/jbosstm/workspace/whitingjr/trunk/performance/src/test/java/auction/test/basic/ProfiledStateTransitions.java
Log:
Added data creation programatically.
Modified: labs/jbosstm/workspace/whitingjr/trunk/performance/src/test/java/auction/test/basic/ProfiledStateTransitions.java
===================================================================
--- labs/jbosstm/workspace/whitingjr/trunk/performance/src/test/java/auction/test/basic/ProfiledStateTransitions.java 2010-02-12 18:12:30 UTC (rev 31624)
+++ labs/jbosstm/workspace/whitingjr/trunk/performance/src/test/java/auction/test/basic/ProfiledStateTransitions.java 2010-02-12 18:13:55 UTC (rev 31625)
@@ -26,7 +26,10 @@
import java.io.File;
import java.io.InputStream;
import java.sql.Connection;
+import java.sql.Date;
+import java.sql.PreparedStatement;
import java.sql.SQLException;
+import java.sql.Types;
import java.util.HashSet;
import java.util.Set;
@@ -117,6 +120,7 @@
protected boolean isOptionalWriteEnabled;
private DefaultDataTypeFactory dataTypeFactoryB;
protected Profiler profiler;
+ private int concurrencyCount;
@Override
public void prepareDataSet(String location, String factory) throws Exception
@@ -264,9 +268,9 @@
@BeforeTest(groups = "integration-warmup")
@Parameters(
- {"deploy_beans_xml", "scan_classpath", "jndi_datasource_A", "jndi_datasource_B", "jndi_name_emf_A", "jndi_name_emf_B", "jndi_name_usertx_A", "jndi_name_usertx_B", "session_jndi_A", "session_jndi_B", "invoke_optional_write", "transaction_timeout", "use_lrco"})
+ {"deploy_beans_xml", "scan_classpath", "jndi_datasource_A", "jndi_datasource_B", "jndi_name_emf_A", "jndi_name_emf_B", "jndi_name_usertx_A", "jndi_name_usertx_B", "session_jndi_A", "session_jndi_B", "invoke_optional_write", "transaction_timeout", "use_lrco", "concurrency_count"})
public void startContainer(String deployBeansXml, String scanClasspath, String jndiDatasourceA, String jndiDatasourceB, String jndiNameEMF_A, String jndiNameEMF_B,
- String jndiNameUserTxA, String jndiNameUserTxB, String jndiNameHSF_A, String jndiNameHSF_B, String flag, String transactionTimeout, String useLRCO) throws Exception
+ String jndiNameUserTxA, String jndiNameUserTxB, String jndiNameHSF_A, String jndiNameHSF_B, String flag, String transactionTimeout, String useLRCO, String concurrencyCountConfig) throws Exception
{
// Set configuration options from TestNG parameters
JNDI_DATASOURCE = jndiDatasourceA;
@@ -293,6 +297,11 @@
jtaPropertyManager.getJTAEnvironmentBean().setLastResourceOptimisationInterface("org.jboss.tm.LastResource");
}
+ if (StringUtils.isNotEmpty(concurrencyCountConfig))
+ {
+ this.concurrencyCount = Integer.parseInt(concurrencyCountConfig);
+ }
+
// Boot the JBoss Microcontainer with EJB3 settings, automatically
// loads ejb3-interceptors-aop.xml and embedded-jboss-beans.xml
EJB3StandaloneBootstrap.boot(null);
@@ -362,6 +371,10 @@
{
op.execute(iDatabaseConn , dataSet);
}
+ /* Because the number of threads varies for each test, use batch data population.
+ * Uses a prepared statement to batch the inserts. */
+ insertUsers(this.concurrencyCount, connection);
+
/* Reinstate the constraints. */
if (controller.isDisablePreferedOverDrop())
{// enforce the constraints
@@ -505,7 +518,30 @@
{
return this.profiler;
}
-
+
+ private void insertUsers(Integer userCount, Connection connection)
+ throws SQLException
+ {
+ PreparedStatement pStatement = connection.prepareStatement("insert into USERS (USER_ID, OBJ_VERSION, FIRSTNAME, LASTNAME, USERNAME, PASSWD, EMAIL, RANK, CREATED, HOME_STREET, HOME_ZIPCODE, HOME_CITY, DEFAULT_BILLING_DETAILS_ID) values (?,?,?,?,?,?,?,?,?,?,?,?,?)");;
+ for (int count = 1; count <= userCount; count += 1)
+ {
+ pStatement.setInt(1, count);
+ pStatement.setInt(2, 0);
+ pStatement.setString(3, "John");
+ pStatement.setString(4, "Doe");
+ pStatement.setString(5, String.format("johndoe%1$s", count));
+ pStatement.setString(6, "secret");
+ pStatement.setString(7, "jd at mail.tld");
+ pStatement.setInt(8, 0);
+ pStatement.setDate(9, new Date(System.currentTimeMillis()));
+ pStatement.setString(10, "Foostreet");
+ pStatement.setString(11, "22222");
+ pStatement.setString(12, "Foocity");
+ pStatement.setNull(13, Types.NUMERIC);
+ pStatement.addBatch();
+ }
+ pStatement.executeBatch();
+ }
}
More information about the jboss-svn-commits
mailing list