JDBC test script error" The result of 'TestRunner()' is not callable"
Gang Yan <[email protected]> Wed, 14 Oct 2015 03:53:35 -0700 (PDT)
| Newsgroups | gmane.comp.java.grinder.user |
|---|---|
| Message-ID | <bb8c70cb-4ba4-439f-980b-b71a902f07d8@default> |
--===============8452913649772079096==
Content-Type: multipart/alternative;
boundary="__1444820017727149276abhmp0002.oracle.com"
--__1444820017727149276abhmp0002.oracle.com
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Hi all :
=C2=A0
I use JDBC.py script run=C2=A0 performance testing . grinder log info:
=C2=A0
2015-10-14 18:42:40,132 ERROR com-0 thread-24: aborting thread - {}The resu=
lt of 'TestRunner()' is not callable
net.grinder.scriptengine.jython.JythonScriptExecutionException: The result =
of 'TestRunner()' is not callable
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at net.grinder.scriptengine.jyth=
on.JythonScriptEngine.createWorkerRunnable(JythonScriptEngine.java:183) ~[g=
rinder-core-3.11.jar:na]
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at net.grinder.engine.process.Gr=
inderProcess$ThreadStarterImplementation$2.create(GrinderProcess.java:784) =
~[grinder-core-3.11.jar:na]
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at net.grinder.engine.process.Gr=
inderThread.run(GrinderThread.java:90) ~[grinder-core-3.11.jar:na]
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at java.lang.Thread.run(Thread.j=
ava:744) [na:1.7.0_45]
2015-10-14 18:42:40,132 ERROR com-0 thread-3: aborting thread - {}The resul=
t of 'TestRunner()' is not callable
net.grinder.scriptengine.jython.JythonScriptExecutionException: The result =
of 'TestRunner()' is not callable
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at net.grinder.scriptengine.jyth=
on.JythonScriptEngine.createWorkerRunnable(JythonScriptEngine.java:183) ~[g=
rinder-core-3.11.jar:na]
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at net.grinder.engine.process.Gr=
inderProcess$ThreadStarterImplementation$2.create(GrinderProcess.java:784) =
~[grinder-core-3.11.jar:na]
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at net.grinder.engine.process.Gr=
inderThread.run(GrinderThread.java:90) ~[grinder-core-3.11.jar:na]
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at java.lang.Thread.run(Thread.j=
ava:744) [na:1.7.0_45]
=C2=A0
I modify script, but still =C2=A0error. Please help check it.
=C2=A0
I =C2=A0test script :
=C2=A0
# The sorting tes=C2=A0 supports a configurable array length.
# It runs the JavaTest.sort method of the JavaTest class.
=C2=A0
from net.grinder.script.Grinder import grinder
from net.grinder.script import Test
from datetime import datetime
from datetime import timedelta
from java.sql import DriverManager
from oracle.jdbc import OracleDriver
=C2=A0
########################################
#
# main body of test script starts here
#
########################################
=C2=A0
# Get the propeties to access test configuration information
properties =3D grinder.getProperties()
=C2=A0
# The description is a property (instead of a hardcoded string in this scri=
pt)
#test =3D Test(1, properties.get("javatest.description"))
test =3D Test(2, properties.get("javatest.description"))
=C2=A0
# select the method for which to collect information
# test.record(WriteMulitpleLittleFile.write)
=C2=A0
# initialize data for compressing
# fileName =3D properties.get("javatest.fileToCompress")
# grinder.logger.info("data file to compress is " + fileName)
# JavaTest.initializeCompression(fileName)
=C2=A0
# If the run mode is runOnce, the TestRunner class will
# run once.=C2=A0 Otherwise, if the run mode is continuous,
# the TestRunner class will run the test for at least
# the specified duration (but possibly longer)
runMode =3D properties.get("javatest.runMode")
#WriteMulitpleLittleFile.setParameters(dir, fileSize...)
if runMode =3D=3D "continuous":
=C2=A0 # figure out how long to run the test
=C2=A0 m =3D int(properties.getProperty("javatest.durationMinutes", "0"))
=C2=A0 h =3D int(properties.getProperty("javatest.durationHours", "0"))
=C2=A0 d =3D int(properties.getProperty("javatest.durationDays", "0"))
=C2=A0 duration =3D timedelta(minutes=3Dm,hours=3Dh,days=3Dd)
=C2=A0 grinder.logger.info("run mode is continuous, duration is " + str(dur=
ation))
elif runMode =3D=3D "runOnce":
=C2=A0 grinder.logger.info("run mode is run once")
=C2=A0 duration =3D timedelta(minutes=3D0)
else:
=C2=A0 grinder.logger.info("run mode not set or not recongized, default to =
run once")
=C2=A0 duration =3D timedelta(minutes=3D0)
=C2=A0
########################################
#
# The TestRunner class is used by The Grinder to perform the test
#
########################################
=C2=A0
#test1 =3D Test(1, "Database insert")
test2 =3D Test(2, "Database query")
=C2=A0
# Load the Oracle JDBC driver.
DriverManager.registerDriver(OracleDriver())
=C2=A0
def getConnection():
=C2=A0=C2=A0=C2=A0 return DriverManager.getConnection(
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "jdbc:oracle:thin:@den00bvr.us.o=
racle.com:1521:orcl", "PBPUBLIC", "PBPUBLIC")
=C2=A0
def ensureClosed(object):
=C2=A0=C2=A0=C2=A0 try: object.close()
=C2=A0=C2=A0=C2=A0 except: pass
=C2=A0
# One time initialisation that cleans out old data.
connection =3D getConnection()
statement =3D connection.createStatement()
=C2=A0
#try: statement.execute("drop table grinder_test1126")
#except: pass
=C2=A0
#statement.execute("create table grinder_test1126(thread number, run number=
)")
=C2=A0
ensureClosed(statement)
ensureClosed(connection)
=C2=A0
class TestRunner:
=C2=A0=C2=A0 def __init__(self):
#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 tid =3D grinder.threadNumber
=C2=A0
#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if (grinder.threadNumber % 2 =
=3D=3D 0):
#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 E=
ven threadNumber
#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 D=
o insertStatement
#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 else:
#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 O=
dd threadNumber
#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 D=
o queryStatement
=C2=A0
#=C2=A0=C2=A0 def __call__(self):
#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 self.testRunner()
=C2=A0
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 endTime =3D datetime.now() + dur=
ation
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 notDone =3D True
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 while notDone:
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 connection =3D None
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 insertStatement =3D None
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 queryStatement =3D None
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 notDone =3D datetime.now()=
< endTime
=C2=A0
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 try:
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 connecti=
on =3D getConnection()
#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 insertStateme=
nt =3D connection.createStatement()
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 querySta=
tement =3D connection.createStatement()
=C2=A0
#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 test1.record(=
insertStatement)
#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 insertStateme=
nt.execute("insert into grinder_test1126 values(%d, %d)" %
#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (grinder.threadNu=
mber, grinder.runNumber))
=C2=A0
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 test2.re=
cord(queryStatement)
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 querySta=
tement.execute("select * from employee")
=C2=A0
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 finally:
#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ensureClosed(=
insertStatement)
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ensureCl=
osed(queryStatement)
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ensureCl=
osed(connection)
=C2=A0
--__1444820017727149276abhmp0002.oracle.com
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: quoted-printable
<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-micr=
osoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" xmlns=3D"http:=
//www.w3.org/TR/REC-html40"><head><meta http-equiv=3DContent-Type content=
=3D"text/html; charset=3Dutf-8"><meta name=3DGenerator content=3D"Microsoft=
Word 12 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
=09{font-family:=E5=AE=8B=E4=BD=93;
=09panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
=09{font-family:"Cambria Math";
=09panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
=09{font-family:Calibri;
=09panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
=09{font-family:"\@=E5=AE=8B=E4=BD=93";
=09panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
=09{margin:0cm;
=09margin-bottom:.0001pt;
=09font-size:12.0pt;
=09font-family:=E5=AE=8B=E4=BD=93;}
a:link, span.MsoHyperlink
=09{mso-style-priority:99;
=09color:blue;
=09text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
=09{mso-style-priority:99;
=09color:purple;
=09text-decoration:underline;}
span.EmailStyle17
=09{mso-style-type:personal-reply;
=09font-family:"Calibri","sans-serif";
=09color:#1F497D;}
.MsoChpDefault
=09{mso-style-type:export-only;}
@page WordSection1
=09{size:612.0pt 792.0pt;
=09margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.WordSection1
=09{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DZH-CN link=3Dblue vli=
nk=3Dpurple><div class=3DWordSection1><div><div><p class=3DMsoNormal><span =
lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";c=
olor:#1F497D'>Hi all :<o:p></o:p></span></p><p class=3DMsoNormal><span lang=
=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color=
:#1F497D'><o:p> </o:p></span></p><p class=3DMsoNormal><span lang=3DEN-=
US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F49=
7D'>I use JDBC.py script run=C2=A0 performance testing . grinder log info:<=
o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-=
size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </=
o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:1=
0.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>2015-10-14 18:42:40=
,132 ERROR com-0 thread-24: aborting thread - {}The result of 'TestRunner()=
' is not callable<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN=
-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F4=
97D'>net.grinder.scriptengine.jython.JythonScriptExecutionException: The re=
sult of 'TestRunner()' is not callable<o:p></o:p></span></p><p class=3DMsoN=
ormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","s=
ans-serif";color:#1F497D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at net=
.grinder.scriptengine.jython.JythonScriptEngine.createWorkerRunnable(Jython=
ScriptEngine.java:183) ~[grinder-core-3.11.jar:na]<o:p></o:p></span></p><p =
class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:=
"Calibri","sans-serif";color:#1F497D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0 at net.grinder.engine.process.GrinderProcess$ThreadStarterImplementa=
tion$2.create(GrinderProcess.java:784) ~[grinder-core-3.11.jar:na]<o:p></o:=
p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.=
5pt;font-family:"Calibri","sans-serif";color:#1F497D'>=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 at net.grinder.engine.process.GrinderThread.run(Grind=
erThread.java:90) ~[grinder-core-3.11.jar:na]<o:p></o:p></span></p><p class=
=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Cali=
bri","sans-serif";color:#1F497D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
at java.lang.Thread.run(Thread.java:744) [na:1.7.0_45]<o:p></o:p></span></=
p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-fa=
mily:"Calibri","sans-serif";color:#1F497D'>2015-10-14 18:42:40,132 ERROR co=
m-0 thread-3: aborting thread - {}The result of 'TestRunner()' is not calla=
ble<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'f=
ont-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>net.grind=
er.scriptengine.jython.JythonScriptExecutionException: The result of 'TestR=
unner()' is not callable<o:p></o:p></span></p><p class=3DMsoNormal><span la=
ng=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";col=
or:#1F497D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at net.grinder.scrip=
tengine.jython.JythonScriptEngine.createWorkerRunnable(JythonScriptEngine.j=
ava:183) ~[grinder-core-3.11.jar:na]<o:p></o:p></span></p><p class=3DMsoNor=
mal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","san=
s-serif";color:#1F497D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at net.g=
rinder.engine.process.GrinderProcess$ThreadStarterImplementation$2.create(G=
rinderProcess.java:784) ~[grinder-core-3.11.jar:na]<o:p></o:p></span></p><p=
class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family=
:"Calibri","sans-serif";color:#1F497D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0 at net.grinder.engine.process.GrinderThread.run(GrinderThread.java:9=
0) ~[grinder-core-3.11.jar:na]<o:p></o:p></span></p><p class=3DMsoNormal><s=
pan lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-seri=
f";color:#1F497D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at java.lang.T=
hread.run(Thread.java:744) [na:1.7.0_45]<o:p></o:p></span></p><p class=3DMs=
oNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri",=
"sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=3DMsoNorma=
l><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-=
serif";color:#1F497D'>I modify script, but still =C2=A0error. Please help c=
heck it.<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=
=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p=
> </o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'fo=
nt-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>I =C2=A0te=
st script :<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US st=
yle=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'><=
o:p> </o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D=
'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'># The s=
orting tes=C2=A0 supports a configurable array length.<o:p></o:p></span></p=
><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-fam=
ily:"Calibri","sans-serif";color:#1F497D'># It runs the JavaTest.sort metho=
d of the JavaTest class.<o:p></o:p></span></p><p class=3DMsoNormal><span la=
ng=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";col=
or:#1F497D'><o:p> </o:p></span></p><p class=3DMsoNormal><span lang=3DE=
N-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F=
497D'>from net.grinder.script.Grinder import grinder<o:p></o:p></span></p><=
p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-famil=
y:"Calibri","sans-serif";color:#1F497D'>from net.grinder.script import Test=
<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font=
-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>from datetim=
e import datetime<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN=
-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F4=
97D'>from datetime import timedelta<o:p></o:p></span></p><p class=3DMsoNorm=
al><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans=
-serif";color:#1F497D'>from java.sql import DriverManager<o:p></o:p></span>=
</p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-=
family:"Calibri","sans-serif";color:#1F497D'>from oracle.jdbc import Oracle=
Driver<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=
=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p=
> </o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'fo=
nt-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>##########=
##############################<o:p></o:p></span></p><p class=3DMsoNormal><s=
pan lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-seri=
f";color:#1F497D'>#<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3D=
EN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1=
F497D'># main body of test script starts here<o:p></o:p></span></p><p class=
=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Cali=
bri","sans-serif";color:#1F497D'>#<o:p></o:p></span></p><p class=3DMsoNorma=
l><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-=
serif";color:#1F497D'>########################################<o:p></o:p></=
span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;=
font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span><=
/p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-f=
amily:"Calibri","sans-serif";color:#1F497D'># Get the propeties to access t=
est configuration information<o:p></o:p></span></p><p class=3DMsoNormal><sp=
an lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif=
";color:#1F497D'>properties =3D grinder.getProperties()<o:p></o:p></span></=
p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-fa=
mily:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p c=
lass=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"=
Calibri","sans-serif";color:#1F497D'># The description is a property (inste=
ad of a hardcoded string in this script)<o:p></o:p></span></p><p class=3DMs=
oNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri",=
"sans-serif";color:#1F497D'>#test =3D Test(1, properties.get("javatest=
.description"))<o:p></o:p></span></p><p class=3DMsoNormal><span lang=
=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color=
:#1F497D'>test =3D Test(2, properties.get("javatest.description")=
)<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'fon=
t-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> =
</o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size=
:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'># select the meth=
od for which to collect information<o:p></o:p></span></p><p class=3DMsoNorm=
al><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans=
-serif";color:#1F497D'># test.record(WriteMulitpleLittleFile.write)<o:p></o=
:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10=
.5pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></s=
pan></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;f=
ont-family:"Calibri","sans-serif";color:#1F497D'># initialize data for comp=
ressing<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=
=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'># fi=
leName =3D properties.get("javatest.fileToCompress")<o:p></o:p></=
span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;=
font-family:"Calibri","sans-serif";color:#1F497D'># grinder.logger.info(&qu=
ot;data file to compress is " + fileName)<o:p></o:p></span></p><p clas=
s=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Cal=
ibri","sans-serif";color:#1F497D'># JavaTest.initializeCompression(fileName=
)<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'fon=
t-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> =
</o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size=
:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'># If the run mode=
is runOnce, the TestRunner class will<o:p></o:p></span></p><p class=3DMsoN=
ormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","s=
ans-serif";color:#1F497D'># run once.=C2=A0 Otherwise, if the run mode is c=
ontinuous,<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US sty=
le=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'># =
the TestRunner class will run the test for at least<o:p></o:p></span></p><p=
class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family=
:"Calibri","sans-serif";color:#1F497D'># the specified duration (but possib=
ly longer)<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US sty=
le=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>ru=
nMode =3D properties.get("javatest.runMode")<o:p></o:p></span></p=
><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-fam=
ily:"Calibri","sans-serif";color:#1F497D'>#WriteMulitpleLittleFile.setParam=
eters(dir, fileSize...)<o:p></o:p></span></p><p class=3DMsoNormal><span lan=
g=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";colo=
r:#1F497D'>if runMode =3D=3D "continuous":<o:p></o:p></span></p><=
p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-famil=
y:"Calibri","sans-serif";color:#1F497D'>=C2=A0 # figure out how long to run=
the test<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US styl=
e=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>=C2=
=A0 m =3D int(properties.getProperty("javatest.durationMinutes", =
"0"))<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-U=
S style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>=C2=A0 h =3D int(properties.getProperty("javatest.durationHours&quo=
t;, "0"))<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3D=
EN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1=
F497D'>=C2=A0 d =3D int(properties.getProperty("javatest.durationDays&=
quot;, "0"))<o:p></o:p></span></p><p class=3DMsoNormal><span lang=
=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color=
:#1F497D'>=C2=A0 duration =3D timedelta(minutes=3Dm,hours=3Dh,days=3Dd)<o:p=
></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-siz=
e:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>=C2=A0 grinder.l=
ogger.info("run mode is continuous, duration is " + str(duration)=
)<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'fon=
t-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>elif runMod=
e =3D=3D "runOnce":<o:p></o:p></span></p><p class=3DMsoNormal><sp=
an lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif=
";color:#1F497D'>=C2=A0 grinder.logger.info("run mode is run once"=
;)<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'fo=
nt-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>=C2=A0 dur=
ation =3D timedelta(minutes=3D0)<o:p></o:p></span></p><p class=3DMsoNormal>=
<span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-se=
rif";color:#1F497D'>else:<o:p></o:p></span></p><p class=3DMsoNormal><span l=
ang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";co=
lor:#1F497D'>=C2=A0 grinder.logger.info("run mode not set or not recon=
gized, default to run once")<o:p></o:p></span></p><p class=3DMsoNormal=
><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-s=
erif";color:#1F497D'>=C2=A0 duration =3D timedelta(minutes=3D0)<o:p></o:p><=
/span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt=
;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span>=
</p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-=
family:"Calibri","sans-serif";color:#1F497D'>##############################=
##########<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US sty=
le=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>#<=
o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-=
size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'># The TestRun=
ner class is used by The Grinder to perform the test<o:p></o:p></span></p><=
p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-famil=
y:"Calibri","sans-serif";color:#1F497D'>#<o:p></o:p></span></p><p class=3DM=
soNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri"=
,"sans-serif";color:#1F497D'>########################################<o:p><=
/o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:=
10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p><=
/span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt=
;font-family:"Calibri","sans-serif";color:#1F497D'>#test1 =3D Test(1, "=
;Database insert")<o:p></o:p></span></p><p class=3DMsoNormal><span lan=
g=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";colo=
r:#1F497D'>test2 =3D Test(2, "Database query")<o:p></o:p></span><=
/p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-f=
amily:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p =
class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:=
"Calibri","sans-serif";color:#1F497D'># Load the Oracle JDBC driver.<o:p></=
o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:1=
0.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>DriverManager.regis=
terDriver(OracleDriver())<o:p></o:p></span></p><p class=3DMsoNormal><span l=
ang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";co=
lor:#1F497D'><o:p> </o:p></span></p><p class=3DMsoNormal><span lang=3D=
EN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1=
F497D'>def getConnection():<o:p></o:p></span></p><p class=3DMsoNormal><span=
lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";=
color:#1F497D'>=C2=A0=C2=A0=C2=A0 return DriverManager.getConnection(<o:p><=
/o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:=
10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 "jdbc:oracle:thin:@den00bvr.us.oracle.com:152=
1:orcl", "PBPUBLIC", "PBPUBLIC")<o:p></o:p></span>=
</p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-=
family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p=
class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family=
:"Calibri","sans-serif";color:#1F497D'>def ensureClosed(object):<o:p></o:p>=
</span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5p=
t;font-family:"Calibri","sans-serif";color:#1F497D'>=C2=A0=C2=A0=C2=A0 try:=
object.close()<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-U=
S style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>=C2=A0=C2=A0=C2=A0 except: pass<o:p></o:p></span></p><p class=3DMsoNorma=
l><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-=
serif";color:#1F497D'><o:p> </o:p></span></p><p class=3DMsoNormal><spa=
n lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"=
;color:#1F497D'># One time initialisation that cleans out old data.<o:p></o=
:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10=
.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>connection =3D getCo=
nnection()<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US sty=
le=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>st=
atement =3D connection.createStatement()<o:p></o:p></span></p><p class=3DMs=
oNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri",=
"sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=3DMsoNorma=
l><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-=
serif";color:#1F497D'>#try: statement.execute("drop table grinder_test=
1126")<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US st=
yle=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>#=
except: pass<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US s=
tyle=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>=
<o:p> </o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=
=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>#sta=
tement.execute("create table grinder_test1126(thread number, run numbe=
r)")<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US styl=
e=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:=
p> </o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'f=
ont-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>ensureClo=
sed(statement)<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US=
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D=
'>ensureClosed(connection)<o:p></o:p></span></p><p class=3DMsoNormal><span =
lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";c=
olor:#1F497D'><o:p> </o:p></span></p><p class=3DMsoNormal><span lang=
=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color=
:#1F497D'>class TestRunner:<o:p></o:p></span></p><p class=3DMsoNormal><span=
lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";=
color:#1F497D'>=C2=A0=C2=A0 def __init__(self):<o:p></o:p></span></p><p cla=
ss=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Ca=
libri","sans-serif";color:#1F497D'>#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 tid =3D grinder.threadNumber<o:p></o:p></span></p><p class=3DMsoNormal>=
<span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-se=
rif";color:#1F497D'><o:p> </o:p></span></p><p class=3DMsoNormal><span =
lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";c=
olor:#1F497D'>#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if (grinder.threa=
dNumber % 2 =3D=3D 0):<o:p></o:p></span></p><p class=3DMsoNormal><span lang=
=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color=
:#1F497D'>#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 Even threadNumber<o:p></o:p></span></p><p class=3DMsoNormal><span=
lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";=
color:#1F497D'>#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 Do insertStatement<o:p></o:p></span></p><p class=3DMsoNorma=
l><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-=
serif";color:#1F497D'>#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 else:<o:p=
></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-siz=
e:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>#=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 Odd threadNumber<=
o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-=
size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>#=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 Do queryStatem=
ent<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'f=
ont-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p>&nbs=
p;</o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-si=
ze:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>#=C2=A0=C2=A0 d=
ef __call__(self):<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DE=
N-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F=
497D'>#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 self.testRunner()<o:p></o:p></s=
pan></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;f=
ont-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></=
p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-fa=
mily:"Calibri","sans-serif";color:#1F497D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0 endTime =3D datetime.now() + duration<o:p></o:p></span></p><p =
class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:=
"Calibri","sans-serif";color:#1F497D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0 notDone =3D True<o:p></o:p></span></p><p class=3DMsoNormal><span lan=
g=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";colo=
r:#1F497D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 while notDone:<o:p></=
o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:1=
0.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 connection =3D None<o:p></o:p></span></p><p =
class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:=
"Calibri","sans-serif";color:#1F497D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0 insertStatement =3D None<o:p></o:p></span></p><p class=3DMsoNo=
rmal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sa=
ns-serif";color:#1F497D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 q=
ueryStatement =3D None<o:p></o:p></span></p><p class=3DMsoNormal><span lang=
=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color=
:#1F497D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 notDone =3D date=
time.now() < endTime<o:p></o:p></span></p><p class=3DMsoNormal><span lan=
g=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";colo=
r:#1F497D'><o:p> </o:p></span></p><p class=3DMsoNormal><span lang=3DEN=
-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F4=
97D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 try:<o:p></o:p></span></p><=
p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-famil=
y:"Calibri","sans-serif";color:#1F497D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 connection =3D getConnection()<o:p></o:p>=
</span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5p=
t;font-family:"Calibri","sans-serif";color:#1F497D'>#=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 insertStatement =3D connection.crea=
teStatement()<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'=
>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 querySt=
atement =3D connection.createStatement()<o:p></o:p></span></p><p class=3DMs=
oNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri",=
"sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=3DMsoNorma=
l><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-=
serif";color:#1F497D'>#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 test1.record(insertStatement)<o:p></o:p></span></p><p class=3DMso=
Normal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","=
sans-serif";color:#1F497D'>#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 insertStatement.execute("insert into grinder_test1126 =
values(%d, %d)" %<o:p></o:p></span></p><p class=3DMsoNormal><span lang=
=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color=
:#1F497D'>#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (grinder=
.threadNumber, grinder.runNumber))<o:p></o:p></span></p><p class=3DMsoNorma=
l><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-=
serif";color:#1F497D'><o:p> </o:p></span></p><p class=3DMsoNormal><spa=
n lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"=
;color:#1F497D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 test2.record(queryStatement)<o:p></o:p></span></p><p class=3DMsoN=
ormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","s=
ans-serif";color:#1F497D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 queryStatement.execute("select * from employee"=
;)<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'fo=
nt-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> =
;</o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'font-siz=
e:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0 finally:<o:p></o:p></span></p><p class=3DMsoNor=
mal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri","san=
s-serif";color:#1F497D'>#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0 ensureClosed(insertStatement)<o:p></o:p></span></p><p class=3D=
MsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:"Calibri=
","sans-serif";color:#1F497D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 ensureClosed(queryStatement)<o:p></o:p></span></p><p =
class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:10.5pt;font-family:=
"Calibri","sans-serif";color:#1F497D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ensureClosed(connection)<o:p></o:p></span></=
p></div><div><p class=3DMsoNormal><span lang=3DEN-US><o:p> </o:p></spa=
n></p></div></div></div></body></html>
--__1444820017727149276abhmp0002.oracle.com--
--===============8452913649772079096==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
------------------------------------------------------------------------------
--===============8452913649772079096==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
_______________________________________________
grinder-use mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/grinder-use
--===============8452913649772079096==--