about Grinder MultiThreads

Gang Yan <[email protected]> Sun, 17 Nov 2013 03:19:40 -0800 (PST)
Newsgroups gmane.comp.java.grinder.user,gmane.comp.java.grinder.devel
Message-ID <779cfd73-f47e-49a3-97db-b6b0d7b52eee@default>
--__1384687171232281254abhmp0020.oracle.com
Content-Type: multipart/alternative;
	boundary="__1384687171233281255abhmp0020.oracle.com"

--__1384687171233281255abhmp0020.oracle.com
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

Hi =C2=A0All

=C2=A0

Sorry, I have queation about Grinder MultiThreads.

=C2=A0

I write WriteMulitpleLittleFile Method test Java IO. I use Grinder Control =
test case run.

=C2=A0

Appear Stack Overflow when start test. I set javatest.durationMinutes =3D 1=
0 and grinder.threads =3D 1 in properties file.

=C2=A0

I'm not sure this problem. I don=E2=80=99t know how to Control Grinder test=
 threads in test code?

=C2=A0

Please you help check.!

=C2=A0

Thanks!

=C2=A0

Grinder info=20

=C2=A0

2013-11-17 10:54:49,702 INFO=C2=A0 com-0 : The Grinder version 3.11

2013-11-17 10:54:49,730 INFO=C2=A0 com-0 : Java(TM) SE Runtime Environment =
1.6.0_37-b06: Oracle JRockit(R) (R28.2.5-20-152429-1.6.0_37-20120927-1915-l=
inux-x86_64, compiled mode) on Linux amd64 2.6.39-40

0.209.1.el6uek.x86_64

2013-11-17 10:54:49,978 INFO=C2=A0 com-0 : time zone is UTC (+0000)

2013-11-17 10:54:50,084 INFO=C2=A0 com-0 : worker process 0

2013-11-17 10:54:50,166 INFO=C2=A0 com-0 : instrumentation agents: byte cod=
e transforming instrumenter for Jython 2.5; byte code transforming instrume=
nter for Java

2013-11-17 10:54:52,449 INFO=C2=A0 com-0 : run mode is continuous, duration=
 is 0:10:00

2013-11-17 10:54:52,450 INFO=C2=A0 com-0 : running "test_IO.py" using Jytho=
n 2.5.3 (2.5:c56500f08d34+, Aug 13 2012, 14:54:35)

[Oracle JRockit(R) (Oracle Corporation)]

2013-11-17 10:54:52,501 INFO=C2=A0 com-0 thread-0: starting, will do 1 run

2013-11-17 10:54:52,504 INFO=C2=A0 com-0 : start time is 1384685692504 ms s=
ince Epoch

2013-11-17 10:55:15,357 ERROR com-0 thread-0 [ run-0 ]: aborted run - Java =
exception calling TestRunner

net.grinder.scriptengine.jython.JythonScriptExecutionException: Java except=
ion calling TestRunner

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 WriteMulitpleLittleFile.write()

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 File "./test_IO.py", line 62, in=
 __call__

java.lang.OutOfMemoryError: Resource temporarily unavailable in tsStartJava=
Thread (lifecycle.c:1097).

=C2=A0

Attempting to allocate 512M bytes

=C2=A0

There is insufficient native memory for the Java

Runtime Environment to continue.

=C2=A0

Possible reasons:

=C2=A0 The system is out of physical RAM or swap space

=C2=A0 In 32 bit mode, the process size limit was hit

=C2=A0

Possible solutions:

=C2=A0 Reduce memory load on the system

=C2=A0 Increase physical memory or swap space

=C2=A0 Check if swap backing store is full

=C2=A0 Use 64 bit Java on a 64 bit OS

=C2=A0 Decrease Java heap size (-Xmx/-Xms)

=C2=A0 Decrease number of Java threads

=C2=A0 Decrease Java thread stack sizes (-Xss)

=C2=A0 Disable compressed references (-XXcompressedRefs=3Dfalse)

=C2=A0

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at java.lang.Thread.start0(Nativ=
e Method) [na:1.6.0_37]

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at java.lang.Thread.start(Thread=
.java:640) [na:1.6.0_37]

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at javatest.WriteMulitpleLittleF=
ile.write(WriteMulitpleLittleFile.java:66) ~[JavaOsTesting/:na]

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at sun.reflect.GeneratedMethodAc=
cessor2.invoke(Unknown Source) ~[na:na]

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at sun.reflect.DelegatingMethodA=
ccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) ~[na:1.6.0_37]

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at java.lang.reflect.Method.invo=
ke(Method.java:597) ~[na:1.6.0_37]

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at org.python.core.PyReflectedFu=
nction.__call__(PyReflectedFunction.java:186) ~[jython-standalone-2.5.3.jar=
:na]

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at org.python.core.PyReflectedFu=
nction.__call__(PyReflectedFunction.java:204) ~[jython-standalone-2.5.3.jar=
:na]

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at org.python.core.PyObject.__ca=
ll__(PyObject.java:371) ~[jython-standalone-2.5.3.jar:na]

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at org.python.core.PyObject.__ca=
ll__(PyObject.java:375) ~[jython-standalone-2.5.3.jar:na]

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at org.python.pycode._pyx1.__cal=
l__$2(./test_IO.py:61) ~[na:na]

=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0at org.python.pycode._pyx1.call_=
function(./test_IO.py) ~[na:na]

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at org.python.core.PyTableCode.c=
all(PyTableCode.java:165) ~[jython-standalone-2.5.3.jar:na]

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at org.python.core.PyBaseCode.ca=
ll(PyBaseCode.java:301) ~[jython-standalone-2.5.3.jar:na]

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at org.python.core.PyBaseCode.ca=
ll(PyBaseCode.java:194) ~[jython-standalone-2.5.3.jar:na]

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at org.python.core.PyFunction.__=
call__(PyFunction.java:387) ~[jython-standalone-2.5.3.jar:na]

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at org.python.core.PyMethod.inst=
ancemethod___call__(PyMethod.java:220) ~[jython-standalone-2.5.3.jar:na]

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at org.python.core.PyMethod.__ca=
ll__(PyMethod.java:211) ~[jython-standalone-2.5.3.jar:na]

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at org.python.core.PyMethod.__ca=
ll__(PyMethod.java:206) ~[jython-standalone-2.5.3.jar:na]

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at org.python.core.PyObject.invo=
ke(PyObject.java:3555) ~[jython-standalone-2.5.3.jar:na]

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at org.python.core.PyInstance.in=
stance___call__(PyInstance.java:351) ~[jython-standalone-2.5.3.jar:na]

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at org.python.core.PyInstance.__=
call__(PyInstance.java:342) ~[jython-standalone-2.5.3.jar:na]

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at org.python.core.PyObject.__ca=
ll__(PyObject.java:371) ~[jython-standalone-2.5.3.jar:na]

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at net.grinder.scriptengine.jyth=
on.JythonScriptEngine$JythonWorkerRunnable.run(JythonScriptEngine.java:263)=
 ~[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:119) ~[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:662) [na:1.6.0_37]

2013-11-17 10:55:15,360 INFO=C2=A0 com-0 thread-0: finished 1 run

2013-11-17 10:55:15,362 INFO=C2=A0 com-0 : elapsed time is 22858 ms

2013-11-17 10:55:15,362 INFO=C2=A0 com-0 : Final statistics for this proces=
s:

2013-11-17 10:55:15,381 INFO=C2=A0 com-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 Te=
sts=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 Errors=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 Mean Test=C2=A0=C2=A0=C2=A0 Test Time=C2=A0=C2=A0=C2=A0 TPS

=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=C2=A0=C2=A0=C2=A0=C2=
=A0 Time (ms)=C2=A0=C2=A0=C2=A0 Standard

=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=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 Deviation

=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=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 (ms)

=C2=A0

Test 1=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 84=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 1=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 260.90=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 314.80=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 3.67=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 "Compress file javasrc.tar"

=C2=A0

Totals=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 84=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 1=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 260.90=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 314.80=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 3.67

=C2=A0

=C2=A0 Tests resulting in error only contribute to the Errors column.

=C2=A0 Statistics for individual tests can be found in the data file, inclu=
ding

=C2=A0 (possibly incomplete) statistics for erroneous tests. Composite test=
s

=C2=A0 are marked with () and not included in the totals.

=C2=A0

=C2=A0

--__1384687171233281255abhmp0020.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=3D"Content-Type" CONTENT=
=3D"text/html; charset=3Dus-ascii"><meta name=3DGenerator content=3D"Micros=
oft Word 12 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
=09{font-family:\5B8B\4F53;
=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:"\@\5B8B\4F53";
=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;
=09text-align:justify;
=09text-justify:inter-ideograph;
=09font-size:10.5pt;
=09font-family:"Calibri","sans-serif";}
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;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
=09{mso-style-priority:99;
=09mso-style-link:"Balloon Text Char";
=09margin:0cm;
=09margin-bottom:.0001pt;
=09text-align:justify;
=09text-justify:inter-ideograph;
=09font-size:8.0pt;
=09font-family:"Calibri","sans-serif";}
span.BalloonTextChar
=09{mso-style-name:"Balloon Text Char";
=09mso-style-priority:99;
=09mso-style-link:"Balloon Text";}
span.EmailStyle19
=09{mso-style-type:personal;
=09font-family:"Calibri","sans-serif";
=09color:windowtext;}
span.EmailStyle20
=09{mso-style-type:personal;
=09font-family:"Calibri","sans-serif";
=09color:#1F497D;}
span.EmailStyle21
=09{mso-style-type:personal;
=09font-family:"Calibri","sans-serif";
=09color:#1F497D;}
span.EmailStyle22
=09{mso-style-type:personal;
=09font-family:"Calibri","sans-serif";
=09color:#1F497D;}
span.EmailStyle23
=09{mso-style-type:personal-reply;
=09font-family:"Calibri","sans-serif";
=09color:#1F497D;}
.MsoChpDefault
=09{mso-style-type:export-only;
=09font-size:10.0pt;}
@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 style=3D'text-justify-trim:punctuation'><div class=3DWordSectio=
n1><p class=3DMsoNormal><span lang=3DEN-US>Hi &nbsp;All<o:p></o:p></span></=
p><p class=3DMsoNormal><span lang=3DEN-US style=3D'color:#1F497D'><o:p>&nbs=
p;</o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US>Sorry, I have qu=
eation about Grinder MultiThreads.<o:p></o:p></span></p><p class=3DMsoNorma=
l><span lang=3DEN-US><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span=
 lang=3DEN-US>I write WriteMulitpleLittleFile </span><span lang=3DEN>Method=
 test Java IO. I use Grinder Control test case run.<o:p></o:p></span></p><p=
 class=3DMsoNormal><span lang=3DEN-US style=3D'font-size:11.0pt;font-family=
:&#23435;&#20307;;color:#1F497D'><o:p>&nbsp;</o:p></span></p><p class=3DMso=
Normal><span lang=3DEN>Appear Stack Overflow when start test. I set javates=
t.durationMinutes =3D 10<span style=3D'color:#1F497D'> </span>and grinder.t=
hreads =3D 1 in properties file.</span><span lang=3DEN-US><o:p></o:p></span=
></p><p class=3DMsoNormal><span lang=3DEN><o:p>&nbsp;</o:p></span></p><p cl=
ass=3DMsoNormal><span lang=3DEN-US>I'm not sure this problem. I don&#8217;t=
 know how to </span><span lang=3DEN>Control Grinder test threads in test co=
de?</span><span lang=3DEN-US><o:p></o:p></span></p><p class=3DMsoNormal><sp=
an lang=3DEN-US><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span lang=
=3DEN-US>Please you help check.<span style=3D'color:#1F497D'>!</span><o:p><=
/o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US style=3D'color:#1F4=
97D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US st=
yle=3D'color:#1F497D'>Thanks!<o:p></o:p></span></p><p class=3DMsoNormal><sp=
an lang=3DEN-US><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span lang=
=3DEN-US>Grinder info <o:p></o:p></span></p><p class=3DMsoNormal><span lang=
=3DEN-US><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span lang=3DEN-U=
S>2013-11-17 10:54:49,702 INFO&nbsp; com-0 : The Grinder version 3.11<o:p><=
/o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US>2013-11-17 10:54:49=
,730 INFO&nbsp; com-0 : Java(TM) SE Runtime Environment 1.6.0_37-b06: Oracl=
e JRockit(R) (R28.2.5-20-152429-1.6.0_37-20120927-1915-linux-x86_64, compil=
ed mode) on Linux amd64 2.6.39-40<o:p></o:p></span></p><p class=3DMsoNormal=
><span lang=3DEN-US>0.209.1.el6uek.x86_64<o:p></o:p></span></p><p class=3DM=
soNormal><span lang=3DEN-US>2013-11-17 10:54:49,978 INFO&nbsp; com-0 : time=
 zone is UTC (+0000)<o:p></o:p></span></p><p class=3DMsoNormal><span lang=
=3DEN-US>2013-11-17 10:54:50,084 INFO&nbsp; com-0 : worker process 0<o:p></=
o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US>2013-11-17 10:54:50,=
166 INFO&nbsp; com-0 : instrumentation agents: byte code transforming instr=
umenter for Jython 2.5; byte code transforming instrumenter for Java<o:p></=
o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US>2013-11-17 10:54:52,=
449 INFO&nbsp; com-0 : run mode is continuous, duration is 0:10:00<o:p></o:=
p></span></p><p class=3DMsoNormal><span lang=3DEN-US>2013-11-17 10:54:52,45=
0 INFO&nbsp; com-0 : running &quot;test_IO.py&quot; using Jython 2.5.3 (2.5=
:c56500f08d34+, Aug 13 2012, 14:54:35)<o:p></o:p></span></p><p class=3DMsoN=
ormal><span lang=3DEN-US>[Oracle JRockit(R) (Oracle Corporation)]<o:p></o:p=
></span></p><p class=3DMsoNormal><span lang=3DEN-US>2013-11-17 10:54:52,501=
 INFO&nbsp; com-0 thread-0: starting, will do 1 run<o:p></o:p></span></p><p=
 class=3DMsoNormal><span lang=3DEN-US>2013-11-17 10:54:52,504 INFO&nbsp; co=
m-0 : start time is 1384685692504 ms since Epoch<o:p></o:p></span></p><p cl=
ass=3DMsoNormal><span lang=3DEN-US>2013-11-17 10:55:15,357 ERROR com-0 thre=
ad-0 [ run-0 ]: aborted run - Java exception calling TestRunner<o:p></o:p><=
/span></p><p class=3DMsoNormal><span lang=3DEN-US>net.grinder.scriptengine.=
jython.JythonScriptExecutionException: Java exception calling TestRunner<o:=
p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US>&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp; WriteMulitpleLittleFile.write()<o:p></o:p></span=
></p><p class=3DMsoNormal><span lang=3DEN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp; File &quot;./test_IO.py&quot;, line 62, in __call__<o:p></o:p>=
</span></p><p class=3DMsoNormal><span lang=3DEN-US>java.lang.OutOfMemoryErr=
or: Resource temporarily unavailable in tsStartJavaThread (lifecycle.c:1097=
).<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US><o:p>&nbsp;=
</o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US>Attempting to allo=
cate 512M bytes<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-U=
S><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US>There=
 is insufficient native memory for the Java<o:p></o:p></span></p><p class=
=3DMsoNormal><span lang=3DEN-US>Runtime Environment to continue.<o:p></o:p>=
</span></p><p class=3DMsoNormal><span lang=3DEN-US><o:p>&nbsp;</o:p></span>=
</p><p class=3DMsoNormal><span lang=3DEN-US>Possible reasons:<o:p></o:p></s=
pan></p><p class=3DMsoNormal><span lang=3DEN-US>&nbsp; The system is out of=
 physical RAM or swap space<o:p></o:p></span></p><p class=3DMsoNormal><span=
 lang=3DEN-US>&nbsp; In 32 bit mode, the process size limit was hit<o:p></o=
:p></span></p><p class=3DMsoNormal><span lang=3DEN-US><o:p>&nbsp;</o:p></sp=
an></p><p class=3DMsoNormal><span lang=3DEN-US>Possible solutions:<o:p></o:=
p></span></p><p class=3DMsoNormal><span lang=3DEN-US>&nbsp; Reduce memory l=
oad on the system<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN=
-US>&nbsp; Increase physical memory or swap space<o:p></o:p></span></p><p c=
lass=3DMsoNormal><span lang=3DEN-US>&nbsp; Check if swap backing store is f=
ull<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US>&nbsp; Use=
 64 bit Java on a 64 bit OS<o:p></o:p></span></p><p class=3DMsoNormal><span=
 lang=3DEN-US>&nbsp; Decrease Java heap size (-Xmx/-Xms)<o:p></o:p></span><=
/p><p class=3DMsoNormal><span lang=3DEN-US>&nbsp; Decrease number of Java t=
hreads<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US>&nbsp; =
Decrease Java thread stack sizes (-Xss)<o:p></o:p></span></p><p class=3DMso=
Normal><span lang=3DEN-US>&nbsp; Disable compressed references (-XXcompress=
edRefs=3Dfalse)<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-U=
S><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US>&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at java.lang.Thread.start0(Native Met=
hod) [na:1.6.0_37]<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DE=
N-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at java.lang.Thread.start(T=
hread.java:640) [na:1.6.0_37]<o:p></o:p></span></p><p class=3DMsoNormal><sp=
an lang=3DEN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at javatest.Writ=
eMulitpleLittleFile.write(WriteMulitpleLittleFile.java:66) ~[JavaOsTesting/=
:na]<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US>&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at sun.reflect.GeneratedMethodAccessor2.i=
nvoke(Unknown Source) ~[na:na]<o:p></o:p></span></p><p class=3DMsoNormal><s=
pan lang=3DEN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at sun.reflect.=
DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) ~=
[na:1.6.0_37]<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US>=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at java.lang.reflect.Method.invo=
ke(Method.java:597) ~[na:1.6.0_37]<o:p></o:p></span></p><p class=3DMsoNorma=
l><span lang=3DEN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.pyth=
on.core.PyReflectedFunction.__call__(PyReflectedFunction.java:186) ~[jython=
-standalone-2.5.3.jar:na]<o:p></o:p></span></p><p class=3DMsoNormal><span l=
ang=3DEN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.python.core.P=
yReflectedFunction.__call__(PyReflectedFunction.java:204) ~[jython-standalo=
ne-2.5.3.jar:na]<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-=
US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.python.core.PyObject._=
_call__(PyObject.java:371) ~[jython-standalone-2.5.3.jar:na]<o:p></o:p></sp=
an></p><p class=3DMsoNormal><span lang=3DEN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp; at org.python.core.PyObject.__call__(PyObject.java:375) ~[jy=
thon-standalone-2.5.3.jar:na]<o:p></o:p></span></p><p class=3DMsoNormal><sp=
an lang=3DEN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.python.py=
code._pyx1.__call__$2(./test_IO.py:61) ~[na:na]<o:p></o:p></span></p><p cla=
ss=3DMsoNormal><span lang=3DEN-US>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbs=
p;at org.python.pycode._pyx1.call_function(./test_IO.py) ~[na:na]<o:p></o:p=
></span></p><p class=3DMsoNormal><span lang=3DEN-US>&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp; at org.python.core.PyTableCode.call(PyTableCode.java:16=
5) ~[jython-standalone-2.5.3.jar:na]<o:p></o:p></span></p><p class=3DMsoNor=
mal><span lang=3DEN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.py=
thon.core.PyBaseCode.call(PyBaseCode.java:301) ~[jython-standalone-2.5.3.ja=
r:na]<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US>&nbsp;&n=
bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.python.core.PyBaseCode.call(PyBas=
eCode.java:194) ~[jython-standalone-2.5.3.jar:na]<o:p></o:p></span></p><p c=
lass=3DMsoNormal><span lang=3DEN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp; at org.python.core.PyFunction.__call__(PyFunction.java:387) ~[jython-st=
andalone-2.5.3.jar:na]<o:p></o:p></span></p><p class=3DMsoNormal><span lang=
=3DEN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.python.core.PyMe=
thod.instancemethod___call__(PyMethod.java:220) ~[jython-standalone-2.5.3.j=
ar:na]<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US>&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.python.core.PyMethod.__call__(Py=
Method.java:211) ~[jython-standalone-2.5.3.jar:na]<o:p></o:p></span></p><p =
class=3DMsoNormal><span lang=3DEN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; at org.python.core.PyMethod.__call__(PyMethod.java:206) ~[jython-stand=
alone-2.5.3.jar:na]<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3D=
EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.python.core.PyObjec=
t.invoke(PyObject.java:3555) ~[jython-standalone-2.5.3.jar:na]<o:p></o:p></=
span></p><p class=3DMsoNormal><span lang=3DEN-US>&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp;&nbsp; at org.python.core.PyInstance.instance___call__(PyInstance=
.java:351) ~[jython-standalone-2.5.3.jar:na]<o:p></o:p></span></p><p class=
=3DMsoNormal><span lang=3DEN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
at org.python.core.PyInstance.__call__(PyInstance.java:342) ~[jython-standa=
lone-2.5.3.jar:na]<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DE=
N-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.python.core.PyObject=
.__call__(PyObject.java:371) ~[jython-standalone-2.5.3.jar:na]<o:p></o:p></=
span></p><p class=3DMsoNormal><span lang=3DEN-US>&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp;&nbsp; at net.grinder.scriptengine.jython.JythonScriptEngine$Jyth=
onWorkerRunnable.run(JythonScriptEngine.java:263) ~[grinder-core-3.11.jar:n=
a]<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US>&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at net.grinder.engine.process.GrinderThread=
.run(GrinderThread.java:119) ~[grinder-core-3.11.jar:na]<o:p></o:p></span><=
/p><p class=3DMsoNormal><span lang=3DEN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp; at java.lang.Thread.run(Thread.java:662) [na:1.6.0_37]<o:p></o:p=
></span></p><p class=3DMsoNormal><span lang=3DEN-US>2013-11-17 10:55:15,360=
 INFO&nbsp; com-0 thread-0: finished 1 run<o:p></o:p></span></p><p class=3D=
MsoNormal><span lang=3DEN-US>2013-11-17 10:55:15,362 INFO&nbsp; com-0 : ela=
psed time is 22858 ms<o:p></o:p></span></p><p class=3DMsoNormal><span lang=
=3DEN-US>2013-11-17 10:55:15,362 INFO&nbsp; com-0 : Final statistics for th=
is process:<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US>20=
13-11-17 10:55:15,381 INFO&nbsp; com-0 :<o:p></o:p></span></p><p class=3DMs=
oNormal><span lang=3DEN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp; Tests&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Er=
rors&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Mean Test&nbsp;&nbsp;&nbsp; Test T=
ime&nbsp;&nbsp;&nbsp; TPS<o:p></o:p></span></p><p class=3DMsoNormal><span l=
ang=3DEN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp; Time (ms)&nbsp;&nbsp;&nbsp; Standard<o:p></o:p></span></p><=
p class=3DMsoNormal><span lang=3DEN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Deviation<o:p></o:p></span></=
p><p class=3DMsoNormal><span lang=3DEN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (ms)<o:p></o:p></span></p>=
<p class=3DMsoNormal><span lang=3DEN-US><o:p>&nbsp;</o:p></span></p><p clas=
s=3DMsoNormal><span lang=3DEN-US>Test 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
 84&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 260.90&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp; 314.80&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3.67&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Compress file jav=
asrc.tar&quot;<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US=
><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US>Totals=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 84&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp; 260.90&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 314.80&nbsp;&n=
bsp;&nbsp;&nbsp;&nbsp;&nbsp; 3.67<o:p></o:p></span></p><p class=3DMsoNormal=
><span lang=3DEN-US><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
lang=3DEN-US>&nbsp; Tests resulting in error only contribute to the Errors =
column.<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US>&nbsp;=
 Statistics for individual tests can be found in the data file, including<o=
:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US>&nbsp; (possibl=
y incomplete) statistics for erroneous tests. Composite tests<o:p></o:p></s=
pan></p><p class=3DMsoNormal><span lang=3DEN-US>&nbsp; are marked with () a=
nd not included in the totals.<o:p></o:p></span></p><p class=3DMsoNormal><s=
pan lang=3DEN-US><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span lan=
g=3DEN-US><o:p>&nbsp;</o:p></span></p></div></body></html>
--__1384687171233281255abhmp0020.oracle.com--

--__1384687171232281254abhmp0020.oracle.com
Content-Type: application/octet-stream; name="WriteMulitpleLittleFile.java"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="WriteMulitpleLittleFile.java"

cGFja2FnZSBqYXZhdGVzdDsNCg0KaW1wb3J0IGphdmEuaW8uQnVmZmVyZWRXcml0ZXI7DQppbXBv
cnQgamF2YS5pby5GaWxlOw0KaW1wb3J0IGphdmEuaW8uRmlsZUlucHV0U3RyZWFtOw0KaW1wb3J0
IGphdmEuaW8uRmlsZU5vdEZvdW5kRXhjZXB0aW9uOw0KaW1wb3J0IGphdmEuaW8uRmlsZU91dHB1
dFN0cmVhbTsNCmltcG9ydCBqYXZhLmlvLklPRXhjZXB0aW9uOw0KaW1wb3J0IGphdmEuaW8uT3V0
cHV0U3RyZWFtV3JpdGVyOw0KaW1wb3J0IGphdmEudXRpbC5BcnJheUxpc3Q7DQppbXBvcnQgamF2
YS51dGlsLkxpc3Q7DQppbXBvcnQgamF2YS51dGlsLlByb3BlcnRpZXM7DQppbXBvcnQgamF2YS51
dGlsLlJhbmRvbTsNCg0KDQpwdWJsaWMgY2xhc3MgV3JpdGVNdWxpdHBsZUxpdHRsZUZpbGUgew0K
CQ0KCS8vcHJpdmF0ZSBzdGF0aWMgZmluYWwgU3RyaW5nIERJUl9ERUZBVUxUID0gIi91MDEvc29m
dHdhcmUvSmF2YU9zVGVzdGluZy9qYXZhdGVzdCI7DQoJcHJpdmF0ZSBzdGF0aWMgZmluYWwgU3Ry
aW5nIERJUl9ERUZBVUxUID0gIi91MDEvc29mdHdhcmUvSmF2YU9zVGVzdGluZy9qYXZhdGVzdCI7
DQoJDQoJLy9wcml2YXRlIHN0YXRpYyBmaW5hbCBTdHJpbmcgQ09ORklHX0ZJTEVfTkFNRSA9ICIv
dTAxL3NvZnR3YXJlL0phdmFPc1Rlc3RpbmcvdGVzdF9JTy9jb21tb24ucHJvcGVydGllcyI7Ly9j
b25maWcgZmlsZSBwYXRoDQoJcHJpdmF0ZSBzdGF0aWMgZmluYWwgU3RyaW5nIENPTkZJR19GSUxF
X05BTUUgPSAiL3UwMS9zb2Z0d2FyZS9KYXZhT3NUZXN0aW5nL3Rlc3RfSU8vY29tbW9uLnByb3Bl
cnRpZXMiOw0KCQ0KCS8vcHJpdmF0ZSBzdGF0aWMgU3RyaW5nIEZJTEVfRElSX09MRCA9ICIvdTAx
L3NvZnR3YXJlL0phdmFPc1Rlc3RpbmcvdGVzdF9JTy90ZXN0X1Jlc3VsdHMiOw0KCXByaXZhdGUg
c3RhdGljIFN0cmluZyBGSUxFX0RJUl9PTEQgPSAiL3UwMS9zb2Z0d2FyZS9KYXZhT3NUZXN0aW5n
L3Rlc3RfSU8vdGVzdF9SZXN1bHRzIjsNCgkNCglwcml2YXRlIHN0YXRpYyBsb25nIEZJTEVfU0la
RSA9IDE7Ly/ljZXkuKrmlofku7bpu5jorqTkuIrpmZAxME0NCgkNCglwcml2YXRlIHN0YXRpYyBp
bnQgRklMRV9DT1VOVCA9IDEwOy8v5paH5Lu25pWw6buY6K6k5LiK6ZmQIDEwMOS4qg0KCQ0KCXBy
aXZhdGUgc3RhdGljIGludCBUSFJFQURfQ09VTlQgPSAxOy8v57q/56iL5pWw6buY6K6k5Li6MeS4
qg0KCQ0KCXByaXZhdGUgc3RhdGljIGludCBURVNUX0VYRUNfVElNRSA9IDUgKiA2MCAqIDEwMDA7
Ly/pu5jorqTmiafooYw15YiG6ZKfDQoJDQoJcHJpdmF0ZSBQcm9wZXJ0aWVzIHByb3BlcnRpZXM7
DQoJDQoJcHJpdmF0ZSBzdGF0aWMgU3RyaW5nIExPR19GSUxFID0gImY6L2lvX3Rlc3Qvd3JpdGVf
ZmlsZS5sb2ciOw0KCQ0KCXByaXZhdGUgc3RhdGljIExpc3Q8U3RyaW5nPiBmaWxlTmFtZXMgPSBu
ZXcgQXJyYXlMaXN0PFN0cmluZz4oKTsNCgkNCglwcml2YXRlIHN0YXRpYyBmaW5hbCBTdHJpbmcg
c3RyID0gIkVuY29kZXMgaGlnaGVyLWxldmVsIG1lc3NhZ2Ugb2JqZWN0cyBpbnRvIGJpbmFyeSBv
ciBwcm90b2NvbC1zcGVjaWZpYyBkYXRhLiAiDQoJCQkrICJNSU5BIGludm9rZXMgZW5jb2RlKElv
U2Vzc2lvbiwgT2JqZWN0LCBQcm90b2NvbEVuY29kZXJPdXRwdXQpIG1ldGhvZCB3aXRoIG1lc3Nh
Z2UgIg0KCQkJKyAid2hpY2ggaXMgcG9wcGVkIGZyb20gdGhlIHNlc3Npb24gd3JpdGUgcXVldWUs
ICINCgkJCSsgImFuZCB0aGVuIHRoZSBlbmNvZGVyIGltcGxlbWVudGF0aW9uIHB1dHMgZW5jb2Rl
ZCBtZXNzYWdlcyAodHlwaWNhbGx5IElvQnVmZmVycykgaW50byAiDQoJCQkrICJQcm90b2NvbEVu
Y29kZXJPdXRwdXQgYnkgY2FsbGluZyBQcm90b2NvbEVuY29kZXJPdXRwdXQud3JpdGUoT2JqZWN0
KS4gIjsNCgkNCglwcml2YXRlIHN0YXRpYyBXcml0ZU11bGl0cGxlTGl0dGxlRmlsZSB3cml0ZVBv
b2wgPSBuZXcgV3JpdGVNdWxpdHBsZUxpdHRsZUZpbGUoKTsNCgkNCglwcml2YXRlIHN0YXRpYyBm
aW5hbCBsb25nIHN0YXJ0VGltZTsNCgkNCglzdGF0aWMgew0KCQlzdGFydFRpbWUgPSBTeXN0ZW0u
Y3VycmVudFRpbWVNaWxsaXMoKTsNCgkJU3RyaW5nIGxvZyA9ICJ+fn5+IHN0YXJ0VGltZSA9ICIr
IHN0YXJ0VGltZTsNCgkJU3lzdGVtLm91dC5wcmludGxuKGxvZyk7DQoJfQkNCgkNCglwdWJsaWMg
c3RhdGljIHZvaWQgd3JpdGUoKXsNCgkJdHJ5ew0KCQkJcmVhZENvbmZpZygpOw0KCQkJbWtkaXJz
KCk7DQoJCQljcmVhdGVGaWxlcygpOwkJCQ0KCQkJDQoJCQlmaW5hbCBXb3JrZXJUZXJtaW5hbFRo
cmVhZFtdIHdyaXRlVGhyZWFkcyA9IG5ldyBXb3JrZXJUZXJtaW5hbFRocmVhZFtUSFJFQURfQ09V
TlRdOw0KCQkJZm9yKGludCBpID0gMDsgaSA8IFRIUkVBRF9DT1VOVDsgaSsrKXsNCgkJCQl3cml0
ZVRocmVhZHNbaV0gPSB3cml0ZVBvb2wubmV3IFdvcmtlclRlcm1pbmFsVGhyZWFkKCk7DQoJCQkJ
d3JpdGVUaHJlYWRzW2ldLnN0YXJ0KCk7DQoJCQkJDQoJCQkJU3RyaW5nIGxvZyA9ICJ+fn5+ICIr
IHdyaXRlVGhyZWFkc1tpXS5nZXROYW1lKCkgKyIgc3RhcnQgLi4uIjsNCgkJCQlTeXN0ZW0ub3V0
LnByaW50bG4obG9nKTsNCgkJCQkvL3dyaXRlRmlsZShMT0dfRklMRSwgbG9nKTsNCgkJCX0NCgkJ
CQ0KCQkJVGhyZWFkIHRpbWVUSCA9IG5ldyBUaHJlYWQoKXsNCgkJCQlwdWJsaWMgdm9pZCBydW4o
KXsJCQkJCQ0KCQkJCQl3aGlsZSh0cnVlKXsNCgkJCQkJCWxvbmcgc2xhcFRpbWVTZWNvbmQgPSBT
eXN0ZW0uY3VycmVudFRpbWVNaWxsaXMoKSAtIHN0YXJ0VGltZTsNCgkJCQkJCVN0cmluZyBsb2cg
PSAifn5+fiBzbGFwVGltZVNlY29uZCA9ICIrIHNsYXBUaW1lU2Vjb25kICsiLCBURVNUX0VYRUNf
VElNRSA9ICIrIFRFU1RfRVhFQ19USU1FOw0KCQkJCQkJU3lzdGVtLm91dC5wcmludGxuKGxvZyk7
DQoJCQkJCQl3cml0ZUZpbGUoTE9HX0ZJTEUsIGxvZyk7DQoJCQkJCQkNCgkJCQkJCWlmKHNsYXBU
aW1lU2Vjb25kID49IFRFU1RfRVhFQ19USU1FKXsNCgkJCQkJCQlmb3IoaW50IGkgPSAwOyBpIDwg
VEhSRUFEX0NPVU5UOyBpKyspew0KCQkJCQkJCQkvL3dyaXRlVGhyZWFkc1tpXS5zaHV0ZG93blJl
cXVlc3QoKTsNCgkJCQkJCQkJLy93cml0ZVRocmVhZHNbaV0uZG9TaHV0ZG93bigpOw0KCQkJCQkJ
CQlTdHJpbmcgbG9nX3RpbWUgPSAifn5+fiBUaW1lIGlzIG92ZXIhIjsNCgkJCQkJCQkJU3lzdGVt
Lm91dC5wcmludGxuKGxvZ190aW1lKTsNCgkJCQkJCQkJd3JpdGVGaWxlKExPR19GSUxFLCBsb2df
dGltZSk7DQoJCQkJCQkJCVN5c3RlbS5leGl0KDApOw0KCQkJCQkJCX0NCgkJCQkJCX0NCgkJCQkJ
fQ0KCQkJCX0NCgkJCX07DQoJCQl0aW1lVEguc3RhcnQoKTsNCgkJCQ0KCQkJDQoJCQlUaHJlYWQg
ZmlsZVRIID0gbmV3IFRocmVhZCgpew0KCQkJCXB1YmxpYyB2b2lkIHJ1bigpew0KCQkJCQltb25p
dG9yRmlsZVNpemUoKTsNCgkJCQl9DQoJCQl9Ow0KCQkJZmlsZVRILnN0YXJ0KCk7CQ0KCQkJDQoJ
CX1jYXRjaChFeGNlcHRpb24gZSkgew0KCQkJZS5wcmludFN0YWNrVHJhY2UoKTsNCgkJfQ0KCX0N
CgkNCglwcml2YXRlIHN0YXRpYyB2b2lkIHJlYWRDb25maWcoKXsNCgkJV3JpdGVNdWxpdHBsZUxp
dHRsZUZpbGUgd3JpdGVGaWxlID0gbmV3IFdyaXRlTXVsaXRwbGVMaXR0bGVGaWxlKCk7DQoJCXdy
aXRlRmlsZS5pbml0Q29uZmlnKENPTkZJR19GSUxFX05BTUUpOw0KCQlQcm9wZXJ0aWVzIHByb3Ag
PSB3cml0ZUZpbGUuZ2V0UHJvcGVydGllcygpOw0KCQkNCgkJU3RyaW5nIGZpbGVEaXIgPSAiIjsN
CgkJT2JqZWN0IGZpbGVEaXJPYmogPSBwcm9wLmdldCgiZmlsZV9kaXIiKTsNCgkJaWYoZmlsZURp
ck9iaiAhPSBudWxsKXsNCgkJCWZpbGVEaXIgPSAoU3RyaW5nKWZpbGVEaXJPYmo7DQoJCQlXcml0
ZU11bGl0cGxlTGl0dGxlRmlsZS5zZXRGSUxFX0RJUihmaWxlRGlyKTsNCgkJfQ0KCQkNCgkJT2Jq
ZWN0IGZpbGVTaXplT2JqID0gcHJvcC5nZXQoImZpbGVfc2l6ZSIpOw0KCQlpZihmaWxlU2l6ZU9i
aiAhPSBudWxsKXsNCgkJCVdyaXRlTXVsaXRwbGVMaXR0bGVGaWxlLnNldEZJTEVfU0laRShMb25n
LnZhbHVlT2YoZmlsZVNpemVPYmoudG9TdHJpbmcoKSkpOw0KCQl9DQoJCQ0KCQlPYmplY3QgdGhy
ZWFkQ291bnQgPSBwcm9wLmdldCgidGhyZWFkX2NvdW50Iik7DQoJCWlmKHRocmVhZENvdW50ICE9
IG51bGwpew0KCQkJV3JpdGVNdWxpdHBsZUxpdHRsZUZpbGUuc2V0VEhSRUFEX0NPVU5UKEludGVn
ZXIudmFsdWVPZih0aHJlYWRDb3VudC50b1N0cmluZygpKSk7DQoJCX0NCgkJDQoJCU9iamVjdCB0
ZXN0RXhlY1RpbWUgPSBwcm9wLmdldCgidGVzdF9leGVjX3RpbWUiKTsNCgkJaWYodGVzdEV4ZWNU
aW1lICE9IG51bGwpew0KCQkJV3JpdGVNdWxpdHBsZUxpdHRsZUZpbGUuc2V0VEVTVF9FWEVDX1RJ
TUUoSW50ZWdlci52YWx1ZU9mKHRlc3RFeGVjVGltZS50b1N0cmluZygpKSk7DQoJCX0NCgl9DQoJ
DQoJcHJpdmF0ZSBzdGF0aWMgdm9pZCBta2RpcnMoKSB0aHJvd3MgRXhjZXB0aW9uIHsNCgkJRmls
ZSBkaXJGaWxlID0gbmV3IEZpbGUoRklMRV9ESVJfT0xEKTsNCgkJaWYgKCEoZGlyRmlsZS5leGlz
dHMoKSkgJiYgIShkaXJGaWxlLmlzRGlyZWN0b3J5KCkpKSB7DQoJCQlib29sZWFuIGNyZWF0ZWQg
PSBkaXJGaWxlLm1rZGlycygpOw0KCQkJaWYgKGNyZWF0ZWQpIHsJCQkNCgkJCQlTdHJpbmcgbG9n
ID0gIn5+fn4gY3JlYXRlIGRpciAiICsgRklMRV9ESVJfT0xEICsgIiBzdWNjZXNzLiI7DQoJCQkJ
U3lzdGVtLm91dC5wcmludGxuKGxvZyk7DQoJCQkJLy93cml0ZUZpbGUoTE9HX0ZJTEUsIGxvZyk7
DQoJCQkJDQoJCQl9IGVsc2Ugew0KCQkJCVN0cmluZyBsb2cgPSAiKioqKiBjcmVhdGUgZGlyIGZh
aWwuLiI7DQoJCQkJU3lzdGVtLm91dC5wcmludGxuKGxvZyk7DQoJCQkJLy93cml0ZUZpbGUoTE9H
X0ZJTEUsIGxvZyk7DQoJCQl9DQoJCX1lbHNlew0KCQkJU3RyaW5nIGxvZyA9ICIqKioqIGRpciAi
KyBGSUxFX0RJUl9PTEQgKyIgZXhpc3QuIjsNCgkJCVN5c3RlbS5vdXQucHJpbnRsbihsb2cpOw0K
CQkJLy93cml0ZUZpbGUoTE9HX0ZJTEUsIGxvZyk7DQoJCX0NCgl9DQoJDQoJcHJpdmF0ZSBzdGF0
aWMgdm9pZCBjcmVhdGVGaWxlcygpIHRocm93cyBFeGNlcHRpb24gew0KCQlTdHJpbmdCdWZmZXIg
ZmlsZU5hbWVQcmVmaXggPSBuZXcgU3RyaW5nQnVmZmVyKCJmaWxlXyIpOw0KCQkNCgkJZm9yIChp
bnQgaSA9IDA7IGkgPCBGSUxFX0NPVU5UOyBpKyspIHsNCgkJCUZpbGUgZmlsZSA9IG5ldyBGaWxl
KEZJTEVfRElSX09MRCArIEZpbGUuc2VwYXJhdG9yICsgZmlsZU5hbWVQcmVmaXggKyBpICsgIi50
eHQiKTsNCgkJCQ0KCQkJaWYgKCFmaWxlLmV4aXN0cygpKSB7DQoJCQkJaWYgKGZpbGUuY3JlYXRl
TmV3RmlsZSgpKSB7DQoJCQkJCWZpbGVOYW1lcy5hZGQoZmlsZS5nZXRBYnNvbHV0ZVBhdGgoKSk7
DQoJCQkJfSBlbHNlIHsNCgkJCQkJdGhyb3cgbmV3IEV4Y2VwdGlvbigiZmlsZSBkb2VzIG5vdCBl
eGlzdCEiKTsNCgkJCQl9DQoJCQl9IGVsc2Ugew0KCQkJCWZpbGVOYW1lcy5hZGQoZmlsZS5nZXRB
YnNvbHV0ZVBhdGgoKSk7DQoJCQl9DQoJCX0NCgkJU3RyaW5nIGxvZyA9ICJ+fn5+IGVuZCBjcmVh
dGUgIiArIEZJTEVfQ09VTlQgKyAiIGZpbGVzISI7DQoJCVN5c3RlbS5vdXQucHJpbnRsbihsb2cp
Ow0KCQkvL3dyaXRlRmlsZShMT0dfRklMRSwgbG9nKTsNCgl9DQoJDQoJDQoJcHVibGljIHN0YXRp
YyB2b2lkIGFwcGVuZFRvRmlsZSgpIHsNCgkJd2hpbGUoIVRocmVhZC5pbnRlcnJ1cHRlZCgpKXsN
CgkJCXdoaWxlKHRydWUpew0KCQkJCXRyeSB7DQoJCQkJCVJhbmRvbSByYW5kb20gPSBuZXcgUmFu
ZG9tKCk7DQoJCQkJCWludCBudW1iZXIgPSBNYXRoLmFicyhyYW5kb20ubmV4dEludCgpKSAlIEZJ
TEVfQ09VTlQ7DQoJCQkJCVN0cmluZyBmaWxlTmFtZSA9IChTdHJpbmcpZmlsZU5hbWVzLmdldChu
dW1iZXIpOwkJCQkNCgkJCQkJDQoJCQkJCXdyaXRlRmlsZShmaWxlTmFtZSwgc3RyKTsNCgkJCQkJ
DQoJCQkJCVN0cmluZyBsb2cgPSAifn5+fiAiKyBUaHJlYWQuY3VycmVudFRocmVhZCgpLmdldE5h
bWUoKSArIiB3cml0ZSBmaWxlICIrIGZpbGVOYW1lOw0KCQkJCQlTeXN0ZW0ub3V0LnByaW50bG4o
bG9nKTsNCgkJCQkJLy93cml0ZUZpbGUoTE9HX0ZJTEUsIGxvZyk7DQoJCQkJfSBjYXRjaCAoRXhj
ZXB0aW9uIGUpIHsNCgkJCQkJZS5wcmludFN0YWNrVHJhY2UoKTsNCgkJCQl9DQoJCQl9DQoJCX0N
Cgl9DQoJDQoJDQoJcHJpdmF0ZSBzdGF0aWMgdm9pZCB3cml0ZUZpbGUoU3RyaW5nIGZpbGUsIFN0
cmluZyBjb25lbnQpIHsJCQ0KCQlCdWZmZXJlZFdyaXRlciBvdXQgPSBudWxsOw0KCQl0cnkgew0K
CQkJb3V0ID0gbmV3IEJ1ZmZlcmVkV3JpdGVyKG5ldyBPdXRwdXRTdHJlYW1Xcml0ZXIoDQoJCQkJ
CW5ldyBGaWxlT3V0cHV0U3RyZWFtKGZpbGUsIHRydWUpKSk7DQoJCQlvdXQud3JpdGUoY29uZW50
KTsNCgkJCW91dC5uZXdMaW5lKCk7DQoJCX0gY2F0Y2ggKEV4Y2VwdGlvbiBlKSB7DQoJCQllLnBy
aW50U3RhY2tUcmFjZSgpOw0KDQoJCX0gZmluYWxseSB7DQoJCQl0cnkgew0KCQkJCW91dC5jbG9z
ZSgpOw0KCQkJfSBjYXRjaCAoSU9FeGNlcHRpb24gZSkgew0KCQkJCWUucHJpbnRTdGFja1RyYWNl
KCk7DQoJCQl9DQoJCX0NCgl9DQoJDQoJcHVibGljIGNsYXNzIFdvcmtlclRlcm1pbmFsVGhyZWFk
IGV4dGVuZHMgVGhyZWFkIHsNCg0KCSAgICAgICAvLyDlt7Lnu4/pgIHlh7rnu4jmraLor7fmsYLk
uLp0cnVl77yM5Yid5aeL5YyW55qE5pe25YCZ5Li6ZmFsc2UNCg0KCSAgICAgICAvL+eUseS6juiv
peWtl+auteWPr+iDveS8muiiq+WkmuS4que6v+eoi+iuv+mXruS/ruaUue+8jOS4uuS6huS/neaK
pOWwseS9v+eUqOi/meS4qg0KDQoJICAgIHByaXZhdGUgdm9sYXRpbGUgYm9vbGVhbiBzaHV0ZG93
blJlcXVlc3RlZCA9IGZhbHNlOw0KDQoJICAgIC8vIOe7iOatouivt+axgg0KDQoJICAgIHB1Ymxp
YyB2b2lkIHNodXRkb3duUmVxdWVzdCgpIHsNCg0KCSAgICAgICAgc2h1dGRvd25SZXF1ZXN0ZWQg
PSB0cnVlOw0KDQoJICAgICAgICBpbnRlcnJ1cHQoKTsNCg0KCSAgICB9DQoNCgkgICAgcHVibGlj
IGJvb2xlYW4gaXNTaHV0ZG93blJlcXVlc3QoKSB7DQoNCgkgICAgICAgIHJldHVybiBzaHV0ZG93
blJlcXVlc3RlZDsNCg0KCSAgICB9DQoNCgkgICAgLy8g5YW35L2T5Yqo5L2cDQoNCgkgICAgcHVi
bGljIGZpbmFsIHZvaWQgcnVuKCkgew0KDQoJICAgICAgICB0cnkgew0KDQoJICAgICAgICAgICAg
d2hpbGUgKCFzaHV0ZG93blJlcXVlc3RlZCkNCg0KCSAgICAgICAgICAgICAgICBkb1dvcmsoKTsN
Cg0KCSAgICAgICAgfSBjYXRjaCAoSW50ZXJydXB0ZWRFeGNlcHRpb24gZSkgew0KDQoJICAgICAg
ICB9DQoNCgkgICAgICAgIC8vIOe7iOatouWkhOeQhuS4reeahOW3peS9nO+8jOS4jeS8mui/m+ih
jOW5s+W4uOaTjeS9nO+8jOS9huaYr+S8mui/m+ihjOe7iOatouWkhOeQhg0KCSAgICAgICAgLypm
aW5hbGx5IHsNCgkgICAgICAgICAgICBkb1NodXRkb3duKCk7DQoJICAgICAgICB9Ki8NCg0KCSAg
ICB9DQoNCgkgICAgLy8g5YW35L2T5bel5L2c5pON5L2cDQoNCgkgICAgcHJpdmF0ZSB2b2lkIGRv
V29yaygpIHRocm93cyBJbnRlcnJ1cHRlZEV4Y2VwdGlvbiB7DQoJICAgIAlhcHBlbmRUb0ZpbGUo
KTsNCgkgICAgCVRocmVhZC5jdXJyZW50VGhyZWFkKCkuc2xlZXAoMTAwMCk7DQoJICAgIH0NCg0K
CSAgICAvLyDnu4jmraLlkI7ov5vooYzlloTlkI7lpITnkIYNCgkgICAgcHJpdmF0ZSB2b2lkIGRv
U2h1dGRvd24oKSB7DQoJICAgIAlTdHJpbmcgbG9nID0gIn5+fn4gc2h1dGRvd24gIisgVGhyZWFk
LmN1cnJlbnRUaHJlYWQoKS5nZXROYW1lKCk7DQoJCQlTeXN0ZW0ub3V0LnByaW50bG4obG9nKTsN
CgkgICAgfQ0KCX0NCgkNCglwcml2YXRlIHN0YXRpYyB2b2lkIG1vbml0b3JGaWxlU2l6ZSgpew0K
CQlsb25nIGZpbGVTaXplID0gMDsNCgkJDQoJCXdoaWxlKHRydWUpew0KCQkJc3luY2hyb25pemVk
IChmaWxlTmFtZXMpIHsNCgkJCQlpZihmaWxlTmFtZXMgIT0gbnVsbCAmJiAhZmlsZU5hbWVzLmlz
RW1wdHkoKSl7DQoJCQkJCWZvcihTdHJpbmcgZmlsZU5hbWUgOiBmaWxlTmFtZXMpIHsNCgkJCQkJ
CWlmKGZpbGVOYW1lICE9IG51bGwpew0KCQkJCQkJCUZpbGUgZmlsZSA9IG5ldyBGaWxlKGZpbGVO
YW1lKTsNCgkJCQkJCQkNCgkJCQkJCQl0cnl7DQoJCQkJCQkJCWZpbGVTaXplID0gZ2V0RmlsZVNp
emUoZmlsZSkgLyAxMDI0IC8gMTAyNDsNCg0KCQkJCQkJCQlTdHJpbmcgbG9nID0gIn5+fn4gZmls
ZVNpemUgPSAiKyBmaWxlU2l6ZSArIiBNLCBmeiA6ICIrIEZJTEVfU0laRTsNCgkJCQkJCQkJU3lz
dGVtLm91dC5wcmludGxuKGxvZyk7DQoJCQkJCQkJCS8vd3JpdGVGaWxlKExPR19GSUxFLCBsb2cp
Ow0KCQkJCQkJCQkNCgkJCQkJCQkJaWYoZmlsZVNpemUgPj0gRklMRV9TSVpFKXsNCgkJCQkJCQkJ
CWZpbGUuZGVsZXRlKCk7DQoJCQkJCQkJCQkNCgkJCQkJCQkJCUZpbGUgZmlsZV9uZXcgPSBuZXcg
RmlsZShmaWxlTmFtZSk7DQoJCQkJCQkJCQlpZiAoZmlsZV9uZXcuY3JlYXRlTmV3RmlsZSgpKSB7
DQoJCQkJCQkJCQkJU3lzdGVtLm91dC5wcmludGxuKCJ+fn5+IGNyZWF0ZSBmaWxlTmFtZSBbIisg
ZmlsZU5hbWUgKyJdIGFnYWluIik7DQoJCQkJCQkJCQl9DQoJCQkJCQkJCX0NCgkJCQkJCQkJVGhy
ZWFkLnNsZWVwKDEwICogMTAwMCk7DQoJCQkJCQkJCQ0KCQkJCQkJCX1jYXRjaChFeGNlcHRpb24g
ZSkgew0KCQkJCQkJCQllLnByaW50U3RhY2tUcmFjZSgpOw0KCQkJCQkJCX0NCgkJCQkJCX0NCgkJ
CQkJfQ0KCQkJCX0NCgkJCX0JCQkNCgkJfQ0KCX0NCgkNCglwcml2YXRlIHN0YXRpYyBsb25nIGdl
dEZpbGVTaXplKEZpbGUgZmlsZU5hbWUpIHRocm93cyBFeGNlcHRpb257DQogICAgICAgIGxvbmcg
c2l6ZSA9IDA7DQogICAgICAgIGlmIChmaWxlTmFtZS5leGlzdHMoKSkgew0KICAgICAgICAJc2l6
ZSA9IGZpbGVOYW1lLmxlbmd0aCgpOw0KICAgICAgICAgICAgDQogICAgICAgIH0gZWxzZSB7DQog
ICAgICAgICAgICBmaWxlTmFtZS5jcmVhdGVOZXdGaWxlKCk7DQogICAgICAgICAgICBTeXN0ZW0u
b3V0LnByaW50bG4oIuaWh+S7tuS4jeWtmOWcqCIpOw0KICAgICAgICB9DQogICAgICAgIA0KICAg
ICAgICBTdHJpbmcgbG9nID0gIn5+fn4gIisgZmlsZU5hbWUgKyIsIHNpemUgOiAiKyBzaXplICsi
IGJ5dGUiOw0KCQlTeXN0ZW0ub3V0LnByaW50bG4obG9nKTsNCgkJLy93cml0ZUZpbGUoTE9HX0ZJ
TEUsIGxvZyk7DQogICAgICAgIHJldHVybiBzaXplOw0KICAgIH0NCgkNCglwdWJsaWMgdm9pZCBp
bml0Q29uZmlnKFN0cmluZyBmaWxlTmFtZSkgewkJCQ0KCQlwcm9wZXJ0aWVzID0gbmV3IFByb3Bl
cnRpZXMoKTsNCgkJdHJ5IHsNCgkJCUZpbGVJbnB1dFN0cmVhbSBpbiA9IG5ldyBGaWxlSW5wdXRT
dHJlYW0oZmlsZU5hbWUpOw0KCQkJcHJvcGVydGllcy5sb2FkKGluKTsNCgkJCQ0KCQl9IGNhdGNo
IChGaWxlTm90Rm91bmRFeGNlcHRpb24gZSkgew0KCQkJZS5wcmludFN0YWNrVHJhY2UoKTsNCgkJ
CQ0KCQl9IGNhdGNoIChJT0V4Y2VwdGlvbiBleCkgew0KCQkJZXgucHJpbnRTdGFja1RyYWNlKCk7
DQoJCX0NCgl9DQoJCQkNCglwdWJsaWMgUHJvcGVydGllcyBnZXRQcm9wZXJ0aWVzKCkgew0KCQly
ZXR1cm4gcHJvcGVydGllczsNCgl9DQoJcHVibGljIFN0cmluZyBnZXRQcm9wZXJ0eShTdHJpbmcg
a2V5KSB7DQoJCXJldHVybiBwcm9wZXJ0aWVzLmdldFByb3BlcnR5KGtleSk7DQoJfQ0KCXB1Ymxp
YyBPYmplY3Qgc2V0UHJvcGVydHkoU3RyaW5nIGtleSwgU3RyaW5nIHZhbHVlKSB7DQoJCXJldHVy
biBwcm9wZXJ0aWVzLnNldFByb3BlcnR5KGtleSwgdmFsdWUpOw0KCX0NCgkNCgkNCg0KCXB1Ymxp
YyBzdGF0aWMgU3RyaW5nIGdldEZJTEVfRElSKCkgew0KCQlyZXR1cm4gRklMRV9ESVJfT0xEOw0K
CX0NCg0KCXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRGSUxFX0RJUihTdHJpbmcgZklMRURJUikgew0K
CQlGSUxFX0RJUl9PTEQgPSBmSUxFRElSOw0KCX0NCg0KCXB1YmxpYyBzdGF0aWMgbG9uZyBnZXRG
SUxFX1NJWkUoKSB7DQoJCXJldHVybiBGSUxFX1NJWkU7DQoJfQ0KDQoJcHVibGljIHN0YXRpYyB2
b2lkIHNldEZJTEVfU0laRShsb25nIGZJTEVTSVpFKSB7DQoJCUZJTEVfU0laRSA9IGZJTEVTSVpF
Ow0KCX0NCg0KCQ0KCXB1YmxpYyBzdGF0aWMgaW50IGdldEZJTEVfQ09VTlQoKSB7DQoJCXJldHVy
biBGSUxFX0NPVU5UOw0KCX0NCg0KCXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRGSUxFX0NPVU5UKGlu
dCBmSUxFQ09VTlQpIHsNCgkJRklMRV9DT1VOVCA9IGZJTEVDT1VOVDsNCgl9CQ0KCQ0KCXB1Ymxp
YyBzdGF0aWMgaW50IGdldFRIUkVBRF9DT1VOVCgpIHsNCgkJcmV0dXJuIFRIUkVBRF9DT1VOVDsN
Cgl9DQoNCglwdWJsaWMgc3RhdGljIHZvaWQgc2V0VEhSRUFEX0NPVU5UKGludCB0SFJFQURDT1VO
VCkgew0KCQlUSFJFQURfQ09VTlQgPSB0SFJFQURDT1VOVDsNCgl9DQoJDQoJcHVibGljIHN0YXRp
YyBpbnQgZ2V0VEVTVF9FWEVDX1RJTUUoKSB7DQoJCXJldHVybiBURVNUX0VYRUNfVElNRTsNCgl9
DQoJcHVibGljIHN0YXRpYyB2b2lkIHNldFRFU1RfRVhFQ19USU1FKGludCB0RVNURVhFQ1RJTUUp
IHsNCgkJVEVTVF9FWEVDX1RJTUUgPSB0RVNURVhFQ1RJTUU7DQoJfQ0KCQ0KCQ0KDQoJLyoqDQoJ
ICogQHBhcmFtIGFyZ3MNCgkgKi8NCglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBh
cmdzKSB7DQoJCVdyaXRlTXVsaXRwbGVMaXR0bGVGaWxlLndyaXRlKCk7DQoJCS8vbG9uZyBzaXpl
ID0gbmV3IEZpbGUoIkY6L2xpdHRsZV9maWxlL2ZpbGVfMC50eHQiKS5sZW5ndGgoKTsNCgkJLy9T
eXN0ZW0ub3V0LnByaW50bG4oIn5+fn4gc2l6ZSA6ICIrIHNpemUpOw0KCX0NCg0KfQ0K
--__1384687171232281254abhmp0020.oracle.com
Content-Type: application/octet-stream; name="test_IO.properties"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="test_IO.properties"

IyBncmluZGVyIHByb3BlcnRpZXMgZm9yIGNvbXByZXNzaW9uIHRlc3QKIwojIFRoZSBjb21wcmVz
c2lvbiB0ZXN0IGNhbiBiZSB1c2VkIHRvIGdlbmVyYXRlIENQVSBsb2FkCiMgSXQgcmVhZHMgYSBm
aWxlIGludG8gYSBieXRlIGFycmF5IGluIG1lbW9yeSBhbmQgdGhlbgojIHVzZXMgc3RhbmRhcmQg
amF2YSBsaWJyYXJ5IGZ1bmN0aW9uYWxpdHkgdG8gY29tcHJlc3MKIyB0aGUgZGF0YSB0byBhbm90
aGVyIGluLW1lbW9yeSBieXRlIGFycmF5LgoKZ3JpbmRlci5zY3JpcHQgPSB0ZXN0X0lPLnB5Cmdy
aW5kZXIubG9nRGlyZWN0b3J5ID0gbG9nX3Rlc3RJTwoKIyBUaGVzZSBncmluZGVyIHByb3BlcnRp
ZXMgZG8gbm90IHR5cGljYWxseSBnZXQgY2hhbmdlZC4KIyBJbnN0ZWFkIG9mIG11bHRpcGxlIGdy
aW5kZXIgcnVucywgdGhlIHRlc3Qgc2NyaXB0IGNhbiBiZSBtYWRlIHRvCiMgbG9vcCB1bnRpbCBh
IGRlc2lyZWQgYW1vdW50IG9mIHRpbWUgaGFzIGVsYXBzZWQgdXNpbmcgdGhlCiMgamF2YXRlc3Qu
ZHVyYXRpb24gcHJvcGVydGllcy4KIwojIFRoZSBjbGFzc3BhdGggc2hvdWxkIGluY2x1ZGUgdGhl
IGxvY2F0aW9uIG9mIHRoZSBqYXZhdGVzdAojIHBhY2thZ2UuICBUaGUgamF2YXRlc3QgcGFja2Fn
ZSBjb250YWlucyB0aGUgSmF2YVRlc3QuY2xhc3MKIyBjbGFzcyB3aGljaCBoYXMgdGhlIG1ldGhv
ZHMgaW52b2tlZCBieSB0aGUgZ3JpbmRlciB0ZXN0IHNjcmlwdC4KIwojIFRoZSBsaWIgZGlyZWN0
b3J5IGNvbnRhaW5zIGFuIHhtbCBmaWxlIHRvCiMgb3ZlcnJpZGUgdGhlIGRlZmF1bHQgZ3JpbmRl
ciBzZXR0aW5ncyBvZiBob3cgbWFueSBsb2cgZmlsZXMgdG8KIyBrZWVwIGZyb20gcHJldmlvdXMg
cnVucy4KCmdyaW5kZXIucnVucyA9IDEKZ3JpbmRlci5qdm0uY2xhc3NwYXRoID0gIC91MDEvc29m
dHdhcmUvSmF2YU9zVGVzdGluZzovdTAxL3NvZnR3YXJlL0phdmFPc1Rlc3RpbmcvbGliCmdyaW5k
ZXIudXNlQ29uc29sZSA9IGZhbHNlCgojIFRlc3RzIGNhbiBiZSBydW4tb25jZSBvciBjb250aW51
b3VzLgojIEEgcnVuLW9uY2UgdGVzdCBpcyB0eXBpY2FsbHkgdXNlZCBmb3IgZ2V0dGluZyB0aW1p
bmcgaW5mb3JtYXRpb24uCiMgQSBjb250aW51b3VzIHRlc3QgaXMgdHlwaWNhbGx5IHVzZWQgdG8g
Z2VuZXJhdGUgbG9hZAoKIyBqYXZhdGVzdC5ydW5Nb2RlID0gcnVuT25jZQpqYXZhdGVzdC5ydW5N
b2RlID0gY29udGludW91cwoKIyBUaGVzZSB0ZXN0IHByb3BlcnRpZXMgY29udHJvbCB0aGUgZHVy
YXRpb24gZm9yIHRoZSB0ZXN0CiMgdG8gcnVuIGluIHRoZSBjb250aW51b3VzIGNhc2UuICBUaGV5
IGNhbiBiZSB1c2VkIGluIGNvbWJpbmF0aW9uCiMgdG8gYWNoaWV2ZSBkZXNpcmVkIGR1cmF0aW9u
LCBmb3IgZXhhbXBsZSAyIGhvdXJzIGFuZCAzMCBtaW51dGVzLgojIERlZmF1bHQgb2YgMCBpcyBh
c3N1bWVkIGlmIG5vIHZhbHVlIGlzIHNwZWNpZmllZCBmb3IgYW55IG9mIHRoZXNlLgoKamF2YXRl
c3QuZHVyYXRpb25NaW51dGVzID0gMTAKIyBqYXZhdGVzdC5kdXJhdGlvbkhvdXJzID0gMAojIGph
dmF0ZXN0LmR1cmF0aW9uRGF5cyA9IDAKCiMgUGFyYW1ldGVycyBzcGVjaWZpYyB0byB0aGUgY29t
cHJlc3Npb24gdGVzdC4KIyBUaGUgY29tcHJlc3Npb24gdGVzdCBpcyB0eXBpY2FsbHkgdXNlZCB0
byBnZW5lcmF0ZSBDUFUgbG9hZAojIFRoZSBnaXZlbiBmaWxlIHdpbGwgYmUgbG9hZGVkIGludG8g
YSBieXRlIGFycmF5IGluIG1lbW9yeQojIGR1cmluZyBpbml0aWFsaXphdGlvbiwgdGhlbiB0aGUg
dGVzdCBjYXNlIHdpbGwgaW52b2tlIGEKIyBtZXRob2Qgd2hpY2ggY29tcHJlc3NlcyB0aGUgYnl0
ZSBhcnJheSBpbiBnemlwIGZvcm1hdAojIGFuZCByZXR1cm5zIHRoZSBjb21wcmVzc2VkIGRhdGEg
dG8gdGhlIGNhbGxlci4KCmphdmF0ZXN0LmRlc2NyaXB0aW9uID0gQ29tcHJlc3MgZmlsZSBqYXZh
c3JjLnRhcgojIGphdmF0ZXN0LmZpbGVUb0NvbXByZXNzID0gamF2YXNyYy50YXIKCiMgVGhlIG51
bWJlciBvZiBwcm9jZXNzZXMsIHRocmVhZHMsIGFuZCBoZWFwIHNpemUgbmVlZAojIHRvIGJlIHNl
dCBiYXNlZCBvbiB0aGUgc2l6ZSBvZiB0aGUgZGF0YSB0byBiZSBsb2FkZWQKIyBpbnRvIG1lbW9y
eSBhbmQgY29tcHJlc3NlZC4KIwojIElmIHRvbyBtYW55IHdvcmtlcnMgYXJlIHJ1biBjb25jdXJy
ZW50bHksIHRoZXkgY2Fubm90IGFsbAojIGJlIGhlbGQgaW4gbWVtb3J5IGFuZCB0aGUgc3lzdGVt
IHdpbGwgc3RhcnQgdG8gcGFnZSwgd2hpY2gKIyByZWR1Y2VzIHRoZSBDUFUgbG9hZCB3aGlsZSBk
YXRhIGlzIHBhZ2VkIHRvIGFuZCBmcm9tIHN3YXAuCiMKIyBPL1MgcHJvY2VzcyBjb250ZXh0IHN3
aXRjaGluZyBpcyBleGVyY2lzZWQgYnkgaW5jcmVhc2luZwojIHRoZSBudW1iZXIgb2YgcHJvY2Vz
c2VzLiAgTy9TIHN1cHBvcnQgZm9yIHRocmVhZHMgaXMKIyBpcyBleGVyY2lzZWQgYnkgaW5jcmVh
c2luZyB0aGUgbnVtYmVyIG9mIHRocmVhZHMuCiMKIyBJZiBtdWx0aXBsZSB0aHJlYWRzIGFyZSB1
c2VkLCB0aGVyZSBpcyBubyBzeW5jaHJvbml6YXRpb24KIyBiZXR3ZWVuIHRocmVhZHMuICBFYWNo
IHRocmVhZCB3aWxsIGFsbG9jYXRlIGl0cyBvd24gYnl0ZQojIGFycmF5IHRvIGhvbGQgdGhlIGNv
bXByZXNzZWQgZGF0YS4KCmdyaW5kZXIucHJvY2Vzc2VzID0gMQpncmluZGVyLnRocmVhZHMgPSAx
CmdyaW5kZXIuanZtLmFyZ3VtZW50cyA9IC1YbXMxMDI0bSAtWG14MTAyNG0K
--__1384687171232281254abhmp0020.oracle.com
Content-Type: application/octet-stream; name="test_IO.py"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="test_IO.py"

IyBUaGUgc29ydGluZyB0ZXN0IHN1cHBvcnRzIGEgY29uZmlndXJhYmxlIGFycmF5IGxlbmd0aC4K
IyBJdCBydW5zIHRoZSBKYXZhVGVzdC5zb3J0IG1ldGhvZCBvZiB0aGUgSmF2YVRlc3QgY2xhc3Mu
Cgpmcm9tIG5ldC5ncmluZGVyLnNjcmlwdC5HcmluZGVyIGltcG9ydCBncmluZGVyCmZyb20gbmV0
LmdyaW5kZXIuc2NyaXB0IGltcG9ydCBUZXN0CmZyb20gZGF0ZXRpbWUgaW1wb3J0IGRhdGV0aW1l
CmZyb20gZGF0ZXRpbWUgaW1wb3J0IHRpbWVkZWx0YQojIGZyb20gamF2YXRlc3QgaW1wb3J0IEph
dmFUZXN0CmZyb20gamF2YXRlc3QgaW1wb3J0IFdyaXRlTXVsaXRwbGVMaXR0bGVGaWxlCgojIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMKIyBtYWluIGJvZHkgb2YgdGVz
dCBzY3JpcHQgc3RhcnRzIGhlcmUKIwojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjCgojIEdldCB0aGUgcHJvcGV0aWVzIHRvIGFjY2VzcyB0ZXN0IGNvbmZpZ3VyYXRpb24g
aW5mb3JtYXRpb24KcHJvcGVydGllcyA9IGdyaW5kZXIuZ2V0UHJvcGVydGllcygpCgojIFRoZSBk
ZXNjcmlwdGlvbiBpcyBhIHByb3BlcnR5IChpbnN0ZWFkIG9mIGEgaGFyZGNvZGVkIHN0cmluZyBp
biB0aGlzIHNjcmlwdCkKdGVzdCA9IFRlc3QoMSwgcHJvcGVydGllcy5nZXQoImphdmF0ZXN0LmRl
c2NyaXB0aW9uIikpCgojIHNlbGVjdCB0aGUgbWV0aG9kIGZvciB3aGljaCB0byBjb2xsZWN0IGlu
Zm9ybWF0aW9uCnRlc3QucmVjb3JkKFdyaXRlTXVsaXRwbGVMaXR0bGVGaWxlLndyaXRlKQoKIyBp
bml0aWFsaXplIGRhdGEgZm9yIGNvbXByZXNzaW5nCiNmaWxlTmFtZSA9IHByb3BlcnRpZXMuZ2V0
KCJqYXZhdGVzdC5maWxlVG9Db21wcmVzcyIpCiNncmluZGVyLmxvZ2dlci5pbmZvKCJkYXRhIGZp
bGUgdG8gY29tcHJlc3MgaXMgIiArIGZpbGVOYW1lKQojSmF2YVRlc3QuaW5pdGlhbGl6ZUNvbXBy
ZXNzaW9uKGZpbGVOYW1lKQoKIyBJZiB0aGUgcnVuIG1vZGUgaXMgcnVuT25jZSwgdGhlIFRlc3RS
dW5uZXIgY2xhc3Mgd2lsbAojIHJ1biBvbmNlLiAgT3RoZXJ3aXNlLCBpZiB0aGUgcnVuIG1vZGUg
aXMgY29udGludW91cywKIyB0aGUgVGVzdFJ1bm5lciBjbGFzcyB3aWxsIHJ1biB0aGUgdGVzdCBm
b3IgYXQgbGVhc3QKIyB0aGUgc3BlY2lmaWVkIGR1cmF0aW9uIChidXQgcG9zc2libHkgbG9uZ2Vy
KQpydW5Nb2RlID0gcHJvcGVydGllcy5nZXQoImphdmF0ZXN0LnJ1bk1vZGUiKQojV3JpdGVNdWxp
dHBsZUxpdHRsZUZpbGUuc2V0UGFyYW1ldGVycyhkaXIsIGZpbGVTaXplLi4uKQppZiBydW5Nb2Rl
ID09ICJjb250aW51b3VzIjoKICAjIGZpZ3VyZSBvdXQgaG93IGxvbmcgdG8gcnVuIHRoZSB0ZXN0
CiAgbSA9IGludChwcm9wZXJ0aWVzLmdldFByb3BlcnR5KCJqYXZhdGVzdC5kdXJhdGlvbk1pbnV0
ZXMiLCAiMCIpKQogIGggPSBpbnQocHJvcGVydGllcy5nZXRQcm9wZXJ0eSgiamF2YXRlc3QuZHVy
YXRpb25Ib3VycyIsICIwIikpCiAgZCA9IGludChwcm9wZXJ0aWVzLmdldFByb3BlcnR5KCJqYXZh
dGVzdC5kdXJhdGlvbkRheXMiLCAiMCIpKQogIGR1cmF0aW9uID0gdGltZWRlbHRhKG1pbnV0ZXM9
bSxob3Vycz1oLGRheXM9ZCkKICBncmluZGVyLmxvZ2dlci5pbmZvKCJydW4gbW9kZSBpcyBjb250
aW51b3VzLCBkdXJhdGlvbiBpcyAiICsgc3RyKGR1cmF0aW9uKSkKZWxpZiBydW5Nb2RlID09ICJy
dW5PbmNlIjoKICBncmluZGVyLmxvZ2dlci5pbmZvKCJydW4gbW9kZSBpcyBydW4gb25jZSIpCiAg
ZHVyYXRpb24gPSB0aW1lZGVsdGEobWludXRlcz0wKQplbHNlOgogIGdyaW5kZXIubG9nZ2VyLmlu
Zm8oInJ1biBtb2RlIG5vdCBzZXQgb3Igbm90IHJlY29uZ2l6ZWQsIGRlZmF1bHQgdG8gcnVuIG9u
Y2UiKQogIGR1cmF0aW9uID0gdGltZWRlbHRhKG1pbnV0ZXM9MCkKCiMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIwojIFRoZSBUZXN0UnVubmVyIGNsYXNzIGlzIHVzZWQg
YnkgVGhlIEdyaW5kZXIgdG8gcGVyZm9ybSB0aGUgdGVzdAojCiMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMKCmNsYXNzIFRlc3RSdW5uZXI6CiAgZGVmIF9fY2FsbF9fKHNl
bGYpOgogICAgZW5kVGltZSA9IGRhdGV0aW1lLm5vdygpICsgZHVyYXRpb24KICAgIG5vdERvbmUg
PSBUcnVlCiAgICB3aGlsZSBub3REb25lOgogICAgICBXcml0ZU11bGl0cGxlTGl0dGxlRmlsZS53
cml0ZSgpCiAgICAgIG5vdERvbmUgPSBkYXRldGltZS5ub3coKSA8IGVuZFRpbWUK
--__1384687171232281254abhmp0020.oracle.com
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

------------------------------------------------------------------------------
DreamFactory - Open Source REST & JSON Services for HTML5 & Native Apps
OAuth, Users, Roles, SQL, NoSQL, BLOB Storage and External API Access
Free app hosting. Or install the open source package on any LAMP server.
Sign up and see examples for AngularJS, jQuery, Sencha Touch and Native!
http://pubads.g.doubleclick.net/gampad/clk?id=63469471&iu=/4140/ostg.clktrk
--__1384687171232281254abhmp0020.oracle.com
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

--__1384687171232281254abhmp0020.oracle.com--