<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>140821</bug_id>
          
          <creation_ts>2015-01-23 04:46:11 -0800</creation_ts>
          <short_desc>[buildbot] Simplify jscore-test buildstep</short_desc>
          <delta_ts>2015-02-02 11:15:13 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>140884</dependson>
          <blocked>141165</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Csaba Osztrogonác">ossy</reporter>
          <assigned_to name="Csaba Osztrogonác">ossy</assigned_to>
          <cc>ap</cc>
    
    <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>fpizlo</cc>
    
    <cc>ggaren</cc>
    
    <cc>lforschler</cc>
    
    <cc>ossy</cc>
    
    <cc>rniwa</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1063654</commentid>
    <comment_count>0</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-01-23 04:46:11 -0800</bug_when>
    <thetext>RunJavaScriptCoreTests can be TestWithFailureCount as other tester steps.
We would need only one countFailures instead of evaluateCommand, getText and getText2.

actual.html log can be removed too, it is used by only the old style Mozilla JSC tests
(run-javascriptcore-tests --no-jsc-stress). Now only Windows bots run this test, but
this log isn&apos;t useful for anything, and Windows bots should switch to the modern JSC
stress test to get better test coverage. And the empty logs on other bots are confusing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1063656</commentid>
    <comment_count>1</comment_count>
      <attachid>245222</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-01-23 04:53:11 -0800</bug_when>
    <thetext>Created attachment 245222
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1063657</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-01-23 04:54:17 -0800</bug_when>
    <thetext>Attachment 245222 did not pass style-queue:


ERROR: Tools/BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:125:  [RunJavaScriptCoreTestsTest.test_mozilla_failure_old_output] Undefined variable &apos;FAILURE&apos;  [pylint/E0602] [5]
ERROR: Tools/BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:130:  [RunJavaScriptCoreTestsTest.test_mozilla_failures_old_output] Undefined variable &apos;FAILURE&apos;  [pylint/E0602] [5]
ERROR: Tools/BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:135:  [RunJavaScriptCoreTestsTest.test_jsc_stress_failure_new_output] Undefined variable &apos;FAILURE&apos;  [pylint/E0602] [5]
ERROR: Tools/BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:139:  [RunJavaScriptCoreTestsTest.test_jsc_stress_failures_new_output] Undefined variable &apos;FAILURE&apos;  [pylint/E0602] [5]
Total errors found: 4 in 3 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1063660</commentid>
    <comment_count>3</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-01-23 05:23:23 -0800</bug_when>
    <thetext>Just a note: I proposed to enable JSC stress tests on Windows by default
in bug128307. Once that patch landed actual.html won&apos;t exist on any bot.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1063707</commentid>
    <comment_count>4</comment_count>
      <attachid>245222</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-01-23 10:00:17 -0800</bug_when>
    <thetext>Comment on attachment 245222
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=245222&amp;action=review

&gt; Tools/ChangeLog:3
&gt; +        [buildbot] Simplify jscore-test buildstep

Longer term, we need to output a JSON file with results that build.webkit.org/dashboard could parse and display in a pop-up. Probably also split the failure output into separate files per test, as searching for the failures in a gigantic single log is a waste of time.

This seems orthogonal to this patch though.

Another orthogonal comment: we should probably consider not running JSC stress tests on regular bots all the time, they are super slow, and probably take away more value by delaying results than they add by running the tests.

&gt; Tools/ChangeLog:9
&gt; +        (RunJavaScriptCoreTests): Inherited from TestWithFailureCount and removed useless actual.html logfile.

I tried to find any failing &quot;Mozilla&quot; tests in recent test runs, and couldn&apos;t. But isn&apos;t this file what is generated when Mozilla tests fail?

&gt; Tools/BuildSlaveSupport/build.webkit.org-config/master.cfg:303
&gt; +        if match:
&gt; +            return int(match.group(1))

This looks surprising. We don&apos;t add the failure counts if both Mozilla and JSC tests failed?

Or does this get invoked twice for each test type?

&gt; Tools/BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:125
&gt; +        self.assertResults(FAILURE, [&quot;1 JSC tests failed&quot;], 1, &quot;&quot;&quot;Results for Mozilla tests:

&quot;1 tests&quot; is not good grammar. Given that one failing test is the most common failure case, I think that the error text should be nice.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1063725</commentid>
    <comment_count>5</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-01-23 11:00:57 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; Longer term, we need to output a JSON file with results that
&gt; build.webkit.org/dashboard could parse and display in a pop-up. Probably
&gt; also split the failure output into separate files per test, as searching for
&gt; the failures in a gigantic single log is a waste of time.

JSC tests are almost always pass, regression happens very rarely and 
in this case the core JSC hackers fixes the issue immediately or roll
out the patch and then fix offline. JSON results and exact output isn&apos;t
really necessarry.
 
&gt; Another orthogonal comment: we should probably consider not running JSC
&gt; stress tests on regular bots all the time, they are super slow, and probably
&gt; take away more value by delaying results than they add by running the tests.

On the release bots it takes only 3.5 minutes, 
but on the debug bots it takes near 30 minutes. 
 
&gt; &gt; Tools/ChangeLog:9
&gt; &gt; +        (RunJavaScriptCoreTests): Inherited from TestWithFailureCount and removed useless actual.html logfile.
&gt; 
&gt; I tried to find any failing &quot;Mozilla&quot; tests in recent test runs, and
&gt; couldn&apos;t. But isn&apos;t this file what is generated when Mozilla tests fail?

It is, but only the Windows bot runs the Mozilla tests,
other runs JSC stress test, which don&apos;t generate actual.html.

 &gt; &gt; Tools/BuildSlaveSupport/build.webkit.org-config/master.cfg:303
&gt; &gt; +        if match:
&gt; &gt; +            return int(match.group(1))
&gt; 
&gt; This looks surprising. We don&apos;t add the failure counts if both Mozilla and
&gt; JSC tests failed?

No, we can&apos;t run both of them in the same time, see
http://trac.webkit.org/browser/trunk/Tools/Scripts/run-javascriptcore-tests?rev=175142#L204
 
&gt; &gt; Tools/BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:125
&gt; &gt; +        self.assertResults(FAILURE, [&quot;1 JSC tests failed&quot;], 1, &quot;&quot;&quot;Results for Mozilla tests:
&gt; 
&gt; &quot;1 tests&quot; is not good grammar. Given that one failing test is the most
&gt; common failure case, I think that the error text should be nice.

I agree, it would be better to use the proper grammar here. The existing
code do this, but the generic TestWithFailureCount can&apos;t handle it. To
make it work, we should mark the position of the plural suffix in
failedTestsFormatString somehow. It would fix the grammar of webkitpy,
webkitperl, unit tests, ... too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1063733</commentid>
    <comment_count>6</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-01-23 11:22:38 -0800</bug_when>
    <thetext>&gt; JSC tests are almost always pass, regression happens very rarely

They were a lot more flaky for several months this fall, and figuring out which ones failed most frequently was an important part of fixing the problem. Even now, we have random crashes on stress/poly-call-exit.js.ftl-eager.

Looking at &lt;https://build.webkit.org/builders/Apple%20Yosemite%20Release%20WK2%20%28Tests%29?numbuilds=200&gt;, jsc failures are a very common occurrence, although this disproves my claim that single failure is the most common case. It used to be quite common recently though.

&gt; It is, but only the Windows bot runs the Mozilla tests, other runs JSC stress test

I see!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1064136</commentid>
    <comment_count>7</comment_count>
      <attachid>245341</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-01-26 04:36:40 -0800</bug_when>
    <thetext>Created attachment 245341
Patch

It depends on bug140884, which fixes the grammar issue of TestWithFailureCount.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1064137</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-01-26 04:38:00 -0800</bug_when>
    <thetext>Attachment 245341 did not pass style-queue:


ERROR: Tools/BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:125:  [RunJavaScriptCoreTestsTest.test_mozilla_failure_old_output] Undefined variable &apos;FAILURE&apos;  [pylint/E0602] [5]
ERROR: Tools/BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:130:  [RunJavaScriptCoreTestsTest.test_mozilla_failures_old_output] Undefined variable &apos;FAILURE&apos;  [pylint/E0602] [5]
ERROR: Tools/BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:135:  [RunJavaScriptCoreTestsTest.test_jsc_stress_failure_new_output] Undefined variable &apos;FAILURE&apos;  [pylint/E0602] [5]
ERROR: Tools/BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:139:  [RunJavaScriptCoreTestsTest.test_jsc_stress_failures_new_output] Undefined variable &apos;FAILURE&apos;  [pylint/E0602] [5]
Total errors found: 4 in 3 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1064479</commentid>
    <comment_count>9</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-01-27 03:52:44 -0800</bug_when>
    <thetext>grammar fixed by http://trac.webkit.org/changeset/179116 and Windows bots 
already run stress tests since http://trac.webkit.org/changeset/179165 ,
so I think it&apos;s ready for landing now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1064542</commentid>
    <comment_count>10</comment_count>
      <attachid>245341</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-01-27 09:49:03 -0800</bug_when>
    <thetext>Comment on attachment 245341
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=245341&amp;action=review

&gt; Tools/ChangeLog:4
&gt; +        [buildbot] Simplify jscore-test buildstep
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=140821

How does this change Buildbot&apos;s JSON results, will that break the dashboard? I&apos;m not sure if I can tell from the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1064546</commentid>
    <comment_count>11</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-01-27 10:07:13 -0800</bug_when>
    <thetext>(In reply to comment #10)
&gt; Comment on attachment 245341 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=245341&amp;action=review
&gt; 
&gt; &gt; Tools/ChangeLog:4
&gt; &gt; +        [buildbot] Simplify jscore-test buildstep
&gt; &gt; +        https://bugs.webkit.org/show_bug.cgi?id=140821
&gt; 
&gt; How does this change Buildbot&apos;s JSON results, will that break the dashboard?
&gt; I&apos;m not sure if I can tell from the patch.

The JSON result would be changed a little bit, but it shouldn&apos;t affect
the dashboard. eg. missing links for the empty actual.html and actual.html
(source) log files, a little bit different result summary.

I checked the dashboard code, it finds steps by name, which isn&apos;t changed,
it is still &quot;jscore-test&quot;. And it counts failures with &quot;fail&quot; word, which 
is still present in the output. I&apos;m 99% sure it won&apos;t break the dashboard.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1064951</commentid>
    <comment_count>12</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-01-28 10:26:44 -0800</bug_when>
    <thetext>ping?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1064956</commentid>
    <comment_count>13</comment_count>
      <attachid>245341</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-01-28 11:01:10 -0800</bug_when>
    <thetext>Comment on attachment 245341
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=245341&amp;action=review

&gt; Tools/BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:125
&gt; -        self.assertResults(FAILURE, [&quot;jscore-test&quot;, &apos;1 failing Mozilla test &apos;], 1, &quot;&quot;&quot;Results for Mozilla tests:
&gt; +        self.assertResults(FAILURE, [&quot;1 JSC test failed&quot;], 1, &quot;&quot;&quot;Results for Mozilla tests:

The dashboard looks at testStep.results[1], and this patch moves output to results[0] AFAICT. It seems to become different from all other steps.

One complication here is that the dashboard needs to work with both internal and open source buildbots, so changes to format need to be made synchronously.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1064964</commentid>
    <comment_count>14</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-01-28 11:20:27 -0800</bug_when>
    <thetext>(In reply to comment #13)
&gt; Comment on attachment 245341 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=245341&amp;action=review
&gt; 
&gt; &gt; Tools/BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:125
&gt; &gt; -        self.assertResults(FAILURE, [&quot;jscore-test&quot;, &apos;1 failing Mozilla test &apos;], 1, &quot;&quot;&quot;Results for Mozilla tests:
&gt; &gt; +        self.assertResults(FAILURE, [&quot;1 JSC test failed&quot;], 1, &quot;&quot;&quot;Results for Mozilla tests:
&gt; 
&gt; The dashboard looks at testStep.results[1], and this patch moves output to
&gt; results[0] AFAICT. It seems to become different from all other steps.
&gt; 
&gt; One complication here is that the dashboard needs to work with both internal
&gt; and open source buildbots, so changes to format need to be made
&gt; synchronously.

Strange, only jsc tests was different, layout/perl/python tests dumps
everything to the first line. Let me check it in the details.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1064965</commentid>
    <comment_count>15</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-01-28 11:28:41 -0800</bug_when>
    <thetext>(In reply to comment #13)
&gt; Comment on attachment 245341 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=245341&amp;action=review
&gt; 
&gt; &gt; Tools/BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:125
&gt; &gt; -        self.assertResults(FAILURE, [&quot;jscore-test&quot;, &apos;1 failing Mozilla test &apos;], 1, &quot;&quot;&quot;Results for Mozilla tests:
&gt; &gt; +        self.assertResults(FAILURE, [&quot;1 JSC test failed&quot;], 1, &quot;&quot;&quot;Results for Mozilla tests:
&gt; 
&gt; The dashboard looks at testStep.results[1], and this patch moves output to
&gt; results[0] AFAICT. It seems to become different from all other steps.
 
&gt; One complication here is that the dashboard needs to work with both internal
&gt; and open source buildbots, so changes to format need to be made
&gt; synchronously.

I checked it, results[0] is the status of the buildstep, SUCCESS, FAIL, ...
and result[1] contains the text results line by line, so it won&apos;t break
the dashbord anywhere.

Here is a good example:
https://build.webkit.org/json/builders/Apple%20Win%207%20Debug%20%28Tests%29/builds/64427?as_text=1

&quot;name&quot;: &quot;jscore-test&quot;, 
      &quot;results&quot;: [
        2, 
        [
          &quot;jscore-test&quot;, 
          &quot;6 failing JSC stress tests &quot;
        ]
      ], 

...

&quot;name&quot;: &quot;layout-test&quot;, 
      &quot;results&quot;: [
        2, 
        [
          &quot;63 failures&quot;, 
          &quot;45 new passes&quot;, 
          &quot;3 flakes&quot;, 
          &quot;3 missing results&quot;
        ]
      ], 

...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1064967</commentid>
    <comment_count>16</comment_count>
      <attachid>245341</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-01-28 11:37:51 -0800</bug_when>
    <thetext>Comment on attachment 245341
Patch

I see.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1065211</commentid>
    <comment_count>17</comment_count>
      <attachid>245341</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-01-29 05:32:25 -0800</bug_when>
    <thetext>Comment on attachment 245341
Patch

Clearing flags on attachment: 245341

Committed r179342: &lt;http://trac.webkit.org/changeset/179342&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1065212</commentid>
    <comment_count>18</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-01-29 05:32:30 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1065215</commentid>
    <comment_count>19</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-01-29 05:58:45 -0800</bug_when>
    <thetext>Buildbot is died after is landed:

https://build.webkit.org/waterfall

Service Temporarily Unavailable
The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.
Apache/2.2 Server at build.webkit.org Port 443

Lucas, could you check what happened with the master? I thought changes
are pushed to it manually by you. Otherwise this change is good, I
checked it locally, so I have no idea what happened with the master.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1065218</commentid>
    <comment_count>20</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-01-29 06:32:41 -0800</bug_when>
    <thetext>It works again.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>245222</attachid>
            <date>2015-01-23 04:53:11 -0800</date>
            <delta_ts>2015-01-26 04:36:32 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-140821-20150123135512.patch</filename>
            <type>text/plain</type>
            <size>6262</size>
            <attacher name="Csaba Osztrogonác">ossy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc4OTg5CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNWM5MjZiMzJhOTRlYTliYTRiNGU5NmIyNjFmZjNiMWVh
MDYxZmQ4Zi4uNDVhMzYwMzUwMTEzNzAxYTIyZTVmYmUwOTU4N2RlZTJlMjc1NzY5MSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIz
IEBACisyMDE1LTAxLTIzICBDc2FiYSBPc3p0cm9nb27DoWMgIDxvc3N5QHdlYmtpdC5vcmc+CisK
KyAgICAgICAgW2J1aWxkYm90XSBTaW1wbGlmeSBqc2NvcmUtdGVzdCBidWlsZHN0ZXAKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0MDgyMQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQnVpbGRTbGF2ZVN1
cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvbWFzdGVyLmNmZzoKKyAgICAgICAgKFJ1bkph
dmFTY3JpcHRDb3JlVGVzdHMpOiBJbmhlcml0ZWQgZnJvbSBUZXN0V2l0aEZhaWx1cmVDb3VudCBh
bmQgcmVtb3ZlZCB1c2VsZXNzIGFjdHVhbC5odG1sIGxvZ2ZpbGUuCisgICAgICAgIChSdW5KYXZh
U2NyaXB0Q29yZVRlc3RzLmNvdW50RmFpbHVyZXMpOiBBZGRlZC4KKyAgICAgICAgKFJ1bkphdmFT
Y3JpcHRDb3JlVGVzdHMuY29tbWFuZENvbXBsZXRlKTogRGVsZXRlZC4KKyAgICAgICAgKFJ1bkph
dmFTY3JpcHRDb3JlVGVzdHMuZXZhbHVhdGVDb21tYW5kKTogRGVsZXRlZC4KKyAgICAgICAgKFJ1
bkphdmFTY3JpcHRDb3JlVGVzdHMuZ2V0VGV4dCk6IERlbGV0ZWQuCisgICAgICAgIChSdW5KYXZh
U2NyaXB0Q29yZVRlc3RzLmdldFRleHQyKTogRGVsZXRlZC4KKyAgICAgICAgKiBCdWlsZFNsYXZl
U3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9tYXN0ZXJjZmdfdW5pdHRlc3QucHk6IFVw
ZGF0ZWQuCisgICAgICAgIChSdW5KYXZhU2NyaXB0Q29yZVRlc3RzVGVzdC50ZXN0X21vemlsbGFf
ZmFpbHVyZV9vbGRfb3V0cHV0KToKKyAgICAgICAgKFJ1bkphdmFTY3JpcHRDb3JlVGVzdHNUZXN0
LnRlc3RfbW96aWxsYV9mYWlsdXJlc19vbGRfb3V0cHV0KToKKyAgICAgICAgKFJ1bkphdmFTY3Jp
cHRDb3JlVGVzdHNUZXN0LnRlc3RfanNjX3N0cmVzc19mYWlsdXJlX25ld19vdXRwdXQpOgorICAg
ICAgICAoUnVuSmF2YVNjcmlwdENvcmVUZXN0c1Rlc3QudGVzdF9qc2Nfc3RyZXNzX2ZhaWx1cmVz
X25ld19vdXRwdXQpOgorCiAyMDE1LTAxLTIyICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBs
ZS5jb20+CiAKICAgICAgICAgY29uZmlndXJlLXhjb2RlLWZvci1pb3MtZGV2ZWxvcG1lbnQgbmVl
ZHMgdG8gaW1wb3J0IHdlYmtpdGRpcnMucG0KZGlmZiAtLWdpdCBhL1Rvb2xzL0J1aWxkU2xhdmVT
dXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL21hc3Rlci5jZmcgYi9Ub29scy9CdWlsZFNs
YXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9tYXN0ZXIuY2ZnCmluZGV4IDgyNmZi
NDJiYjJjMjEwNTEwMjRhNzA5Zjc2ZDgyZjEyNzc4OTkwOTcuLjNjZmQ5NmEyMjQ5YTY2YjU0MTRk
YTliYTQ2YWVlOWVjODliNTk0NDIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0J1aWxkU2xhdmVTdXBwb3J0
L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL21hc3Rlci5jZmcKKysrIGIvVG9vbHMvQnVpbGRTbGF2
ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvbWFzdGVyLmNmZwpAQCAtMjc3LDEyICsy
NzcsMTIgQEAgY2xhc3MgRG93bmxvYWRCdWlsdFByb2R1Y3Qoc2hlbGwuU2hlbGxDb21tYW5kKToK
ICAgICBmbHVua09uRmFpbHVyZSA9IFRydWUKIAogCi1jbGFzcyBSdW5KYXZhU2NyaXB0Q29yZVRl
c3RzKHNoZWxsLlRlc3QpOgorY2xhc3MgUnVuSmF2YVNjcmlwdENvcmVUZXN0cyhUZXN0V2l0aEZh
aWx1cmVDb3VudCk6CiAgICAgbmFtZSA9ICJqc2NvcmUtdGVzdCIKICAgICBkZXNjcmlwdGlvbiA9
IFsianNjb3JlLXRlc3RzIHJ1bm5pbmciXQogICAgIGRlc2NyaXB0aW9uRG9uZSA9IFsianNjb3Jl
LXRlc3RzIl0KICAgICBjb21tYW5kID0gWyJwZXJsIiwgIi4vVG9vbHMvU2NyaXB0cy9ydW4tamF2
YXNjcmlwdGNvcmUtdGVzdHMiLCBXaXRoUHJvcGVydGllcygiLS0lKGNvbmZpZ3VyYXRpb24pcyIp
XQotICAgIGxvZ2ZpbGVzID0geydhY3R1YWwuaHRtbCAoc291cmNlKSc6ICdTb3VyY2UvSmF2YVNj
cmlwdENvcmUvdGVzdHMvbW96aWxsYS9hY3R1YWwuaHRtbCd9CisgICAgZmFpbGVkVGVzdHNGb3Jt
YXRTdHJpbmcgPSAiJWQgSlNDIHRlc3RzIGZhaWxlZCIKIAogICAgIGRlZiBfX2luaXRfXyhzZWxm
LCBidWlsZEpTQ1Rvb2w9VHJ1ZSwgKmFyZ3MsICoqa3dhcmdzKToKICAgICAgICAgc2VsZi5idWls
ZEpTQ1Rvb2wgPSBidWlsZEpTQ1Rvb2wKQEAgLTI5NSw1MSArMjk1LDE4IEBAIGNsYXNzIFJ1bkph
dmFTY3JpcHRDb3JlVGVzdHMoc2hlbGwuVGVzdCk6CiAgICAgICAgICAgICBzZWxmLnNldENvbW1h
bmQoc2VsZi5jb21tYW5kICsgWyctLW5vLWJ1aWxkJ10pCiAgICAgICAgIHJldHVybiBzaGVsbC5U
ZXN0LnN0YXJ0KHNlbGYpCiAKLSAgICBkZWYgY29tbWFuZENvbXBsZXRlKHNlbGYsIGNtZCk6Ci0g
ICAgICAgIHNoZWxsLlRlc3QuY29tbWFuZENvbXBsZXRlKHNlbGYsIGNtZCkKKyAgICBkZWYgY291
bnRGYWlsdXJlcyhzZWxmLCBjbWQpOgogICAgICAgICBsb2dUZXh0ID0gY21kLmxvZ3NbJ3N0ZGlv
J10uZ2V0VGV4dCgpCiAKLSAgICAgICAgZXhwcmVzc2lvbnMgPSBbCi0gICAgICAgICAgICAoJ2Zh
aWxpbmcgTW96aWxsYSB0ZXN0JywgcmUuY29tcGlsZShyJ15SZXN1bHRzIGZvciBNb3ppbGxhIHRl
c3RzOlxyP1xuXHMrKFxkKykgcmVncmVzc2lvbicsIHJlLk1VTFRJTElORSkpLAotICAgICAgICAg
ICAgKCdmYWlsaW5nIEpTQyBzdHJlc3MgdGVzdCcsIHJlLmNvbXBpbGUocideUmVzdWx0cyBmb3Ig
SlNDIHN0cmVzcyB0ZXN0czpccj9cblxzKyhcZCspIGZhaWx1cmUnLCByZS5NVUxUSUxJTkUpKSwK
LSAgICAgICAgXQotICAgICAgICByZXN1bHRMaW5lcyA9IHt9Ci0KLSAgICAgICAgZm9yIG5hbWUs
IGV4cHJlc3Npb24gaW4gZXhwcmVzc2lvbnM6Ci0gICAgICAgICAgICBtYXRjaCA9IGV4cHJlc3Np
b24uc2VhcmNoKGxvZ1RleHQpCi0gICAgICAgICAgICByZXN1bHRMaW5lc1tuYW1lXSA9IGludCht
YXRjaC5ncm91cCgxKSkgaWYgbWF0Y2ggZWxzZSAwCi0KLSAgICAgICAgc2VsZi5yZWdyZXNzaW9u
TGluZSA9IFtdCi0gICAgICAgIGZvciBuYW1lIGluIHJlc3VsdExpbmVzOgotICAgICAgICAgICAg
ZmFpbHVyZXMgPSByZXN1bHRMaW5lc1tuYW1lXQotICAgICAgICAgICAgaWYgbm90IGZhaWx1cmVz
OgotICAgICAgICAgICAgICAgIGNvbnRpbnVlCi0KLSAgICAgICAgICAgIGlmIGZhaWx1cmVzID09
IDE6Ci0gICAgICAgICAgICAgICAgcGx1cmFsU3VmZml4ID0gJycKLSAgICAgICAgICAgIGVsc2U6
Ci0gICAgICAgICAgICAgICAgcGx1cmFsU3VmZml4ID0gJ3MnCi0gICAgICAgICAgICBzZWxmLnJl
Z3Jlc3Npb25MaW5lLmFwcGVuZCgiJWQgJXMlcyAiICUgKGZhaWx1cmVzLCBuYW1lLCBwbHVyYWxT
dWZmaXgpKQotCi0gICAgICAgIGlmICdhY3R1YWwuaHRtbCAoc291cmNlKScgaW4gY21kLmxvZ3M6
Ci0gICAgICAgICAgICBzZWxmLmFkZEhUTUxMb2coJ2FjdHVhbC5odG1sJywgY21kLmxvZ3NbJ2Fj
dHVhbC5odG1sIChzb3VyY2UpJ10uZ2V0VGV4dCgpKQotCi0gICAgZGVmIGV2YWx1YXRlQ29tbWFu
ZChzZWxmLCBjbWQpOgotICAgICAgICBpZiBzZWxmLnJlZ3Jlc3Npb25MaW5lOgotICAgICAgICAg
ICAgcmV0dXJuIEZBSUxVUkUKLQotICAgICAgICBpZiBjbWQucmMgIT0gMDoKLSAgICAgICAgICAg
IHJldHVybiBGQUlMVVJFCi0KLSAgICAgICAgcmV0dXJuIFNVQ0NFU1MKKyAgICAgICAgbWF0Y2gg
PSByZS5zZWFyY2gocideUmVzdWx0cyBmb3IgSlNDIHN0cmVzcyB0ZXN0czpccj9cblxzKyhcZCsp
IGZhaWx1cmUnLCBsb2dUZXh0LCByZS5NVUxUSUxJTkUpCisgICAgICAgIGlmIG1hdGNoOgorICAg
ICAgICAgICAgcmV0dXJuIGludChtYXRjaC5ncm91cCgxKSkKIAotICAgIGRlZiBnZXRUZXh0KHNl
bGYsIGNtZCwgcmVzdWx0cyk6Ci0gICAgICAgIHJldHVybiBzZWxmLmdldFRleHQyKGNtZCwgcmVz
dWx0cykKKyAgICAgICAgbWF0Y2ggPSByZS5zZWFyY2gocideUmVzdWx0cyBmb3IgTW96aWxsYSB0
ZXN0czpccj9cblxzKyhcZCspIHJlZ3Jlc3Npb24nLCBsb2dUZXh0LCByZS5NVUxUSUxJTkUpCisg
ICAgICAgIGlmIG1hdGNoOgorICAgICAgICAgICAgcmV0dXJuIGludChtYXRjaC5ncm91cCgxKSkK
IAotICAgIGRlZiBnZXRUZXh0MihzZWxmLCBjbWQsIHJlc3VsdHMpOgotICAgICAgICByZXN1bHQg
PSBbc2VsZi5uYW1lXQotICAgICAgICByZXN1bHQuZXh0ZW5kKHNlbGYucmVncmVzc2lvbkxpbmUp
Ci0gICAgICAgIHJldHVybiByZXN1bHQKKyAgICAgICAgcmV0dXJuIDAKIAogY2xhc3MgUnVuV2Vi
S2l0VGVzdHMoc2hlbGwuVGVzdCk6CiAgICAgbmFtZSA9ICJsYXlvdXQtdGVzdCIKZGlmZiAtLWdp
dCBhL1Rvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL21hc3Rl
cmNmZ191bml0dGVzdC5weSBiL1Rvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5v
cmctY29uZmlnL21hc3RlcmNmZ191bml0dGVzdC5weQppbmRleCAwNDFhMDZhNjAzZjM2ZjE3MTI2
YjA2NjBkNjA3N2IxZWVjNmQyNmU0Li45YzYyNWJhOGE4MmEwNjg0YWEzMmRmZmE0ZTgzNTM1NGQ0
MTFhODE5IDEwMDc1NQotLS0gYS9Ub29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQu
b3JnLWNvbmZpZy9tYXN0ZXJjZmdfdW5pdHRlc3QucHkKKysrIGIvVG9vbHMvQnVpbGRTbGF2ZVN1
cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvbWFzdGVyY2ZnX3VuaXR0ZXN0LnB5CkBAIC0x
MjIsMjEgKzEyMiwyMSBAQCBjbGFzcyBSdW5KYXZhU2NyaXB0Q29yZVRlc3RzVGVzdCh1bml0dGVz
dC5UZXN0Q2FzZSk6CiAgICAgT0suIiIiKQogCiAgICAgZGVmIHRlc3RfbW96aWxsYV9mYWlsdXJl
X29sZF9vdXRwdXQoc2VsZik6Ci0gICAgICAgIHNlbGYuYXNzZXJ0UmVzdWx0cyhGQUlMVVJFLCBb
ImpzY29yZS10ZXN0IiwgJzEgZmFpbGluZyBNb3ppbGxhIHRlc3QgJ10sIDEsICIiIlJlc3VsdHMg
Zm9yIE1vemlsbGEgdGVzdHM6CisgICAgICAgIHNlbGYuYXNzZXJ0UmVzdWx0cyhGQUlMVVJFLCBb
IjEgSlNDIHRlc3RzIGZhaWxlZCJdLCAxLCAiIiJSZXN1bHRzIGZvciBNb3ppbGxhIHRlc3RzOgog
ICAgIDEgcmVncmVzc2lvbiBmb3VuZC4KICAgICAwIHRlc3RzIGZpeGVkLiIiIikKIAogICAgIGRl
ZiB0ZXN0X21vemlsbGFfZmFpbHVyZXNfb2xkX291dHB1dChzZWxmKToKLSAgICAgICAgc2VsZi5h
c3NlcnRSZXN1bHRzKEZBSUxVUkUsIFsianNjb3JlLXRlc3QiLCAnMiBmYWlsaW5nIE1vemlsbGEg
dGVzdHMgJ10sIDEsICIiIlJlc3VsdHMgZm9yIE1vemlsbGEgdGVzdHM6CisgICAgICAgIHNlbGYu
YXNzZXJ0UmVzdWx0cyhGQUlMVVJFLCBbIjIgSlNDIHRlc3RzIGZhaWxlZCJdLCAxLCAiIiJSZXN1
bHRzIGZvciBNb3ppbGxhIHRlc3RzOgogICAgIDIgcmVncmVzc2lvbnMgZm91bmQuCiAgICAgMCB0
ZXN0cyBmaXhlZC4iIiIpCiAKICAgICBkZWYgdGVzdF9qc2Nfc3RyZXNzX2ZhaWx1cmVfbmV3X291
dHB1dChzZWxmKToKLSAgICAgICAgc2VsZi5hc3NlcnRSZXN1bHRzKEZBSUxVUkUsIFsianNjb3Jl
LXRlc3QiLCAnMSBmYWlsaW5nIEpTQyBzdHJlc3MgdGVzdCAnXSwgMSwgICIiIlJlc3VsdHMgZm9y
IEpTQyBzdHJlc3MgdGVzdHM6CisgICAgICAgIHNlbGYuYXNzZXJ0UmVzdWx0cyhGQUlMVVJFLCBb
IjEgSlNDIHRlc3RzIGZhaWxlZCJdLCAxLCAgIiIiUmVzdWx0cyBmb3IgSlNDIHN0cmVzcyB0ZXN0
czoKICAgICAxIGZhaWx1cmUgZm91bmQuIiIiKQogCiAgICAgZGVmIHRlc3RfanNjX3N0cmVzc19m
YWlsdXJlc19uZXdfb3V0cHV0KHNlbGYpOgotICAgICAgICBzZWxmLmFzc2VydFJlc3VsdHMoRkFJ
TFVSRSwgWyJqc2NvcmUtdGVzdCIsICc1IGZhaWxpbmcgSlNDIHN0cmVzcyB0ZXN0cyAnXSwgMSwg
ICIiIlJlc3VsdHMgZm9yIEpTQyBzdHJlc3MgdGVzdHM6CisgICAgICAgIHNlbGYuYXNzZXJ0UmVz
dWx0cyhGQUlMVVJFLCBbIjUgSlNDIHRlc3RzIGZhaWxlZCJdLCAxLCAgIiIiUmVzdWx0cyBmb3Ig
SlNDIHN0cmVzcyB0ZXN0czoKICAgICA1IGZhaWx1cmVzIGZvdW5kLiIiIikKIAogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>245341</attachid>
            <date>2015-01-26 04:36:40 -0800</date>
            <delta_ts>2015-01-29 05:32:25 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-140821-20150126133837.patch</filename>
            <type>text/plain</type>
            <size>6290</size>
            <attacher name="Csaba Osztrogonác">ossy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc5MTExCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYzlhYzY1N2JmMjY2YzkxMTNiYTkzOGU2Nzk0M2MwNDI0
Njg2NTVjYS4uNWM4ZThkY2VjOGMwZDliZjk5NzUyNGY4NjQyZmNkZTk0YWZhY2UzYyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIz
IEBACisyMDE1LTAxLTI2ICBDc2FiYSBPc3p0cm9nb27DoWMgIDxvc3N5QHdlYmtpdC5vcmc+CisK
KyAgICAgICAgW2J1aWxkYm90XSBTaW1wbGlmeSBqc2NvcmUtdGVzdCBidWlsZHN0ZXAKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0MDgyMQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQnVpbGRTbGF2ZVN1
cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvbWFzdGVyLmNmZzoKKyAgICAgICAgKFJ1bkph
dmFTY3JpcHRDb3JlVGVzdHMpOiBJbmhlcml0ZWQgZnJvbSBUZXN0V2l0aEZhaWx1cmVDb3VudCBh
bmQgcmVtb3ZlZCB1c2VsZXNzIGFjdHVhbC5odG1sIGxvZ2ZpbGUuCisgICAgICAgIChSdW5KYXZh
U2NyaXB0Q29yZVRlc3RzLmNvdW50RmFpbHVyZXMpOiBBZGRlZC4KKyAgICAgICAgKFJ1bkphdmFT
Y3JpcHRDb3JlVGVzdHMuY29tbWFuZENvbXBsZXRlKTogRGVsZXRlZC4KKyAgICAgICAgKFJ1bkph
dmFTY3JpcHRDb3JlVGVzdHMuZXZhbHVhdGVDb21tYW5kKTogRGVsZXRlZC4KKyAgICAgICAgKFJ1
bkphdmFTY3JpcHRDb3JlVGVzdHMuZ2V0VGV4dCk6IERlbGV0ZWQuCisgICAgICAgIChSdW5KYXZh
U2NyaXB0Q29yZVRlc3RzLmdldFRleHQyKTogRGVsZXRlZC4KKyAgICAgICAgKiBCdWlsZFNsYXZl
U3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9tYXN0ZXJjZmdfdW5pdHRlc3QucHk6IFVw
ZGF0ZWQuCisgICAgICAgIChSdW5KYXZhU2NyaXB0Q29yZVRlc3RzVGVzdC50ZXN0X21vemlsbGFf
ZmFpbHVyZV9vbGRfb3V0cHV0KToKKyAgICAgICAgKFJ1bkphdmFTY3JpcHRDb3JlVGVzdHNUZXN0
LnRlc3RfbW96aWxsYV9mYWlsdXJlc19vbGRfb3V0cHV0KToKKyAgICAgICAgKFJ1bkphdmFTY3Jp
cHRDb3JlVGVzdHNUZXN0LnRlc3RfanNjX3N0cmVzc19mYWlsdXJlX25ld19vdXRwdXQpOgorICAg
ICAgICAoUnVuSmF2YVNjcmlwdENvcmVUZXN0c1Rlc3QudGVzdF9qc2Nfc3RyZXNzX2ZhaWx1cmVz
X25ld19vdXRwdXQpOgorCiAyMDE1LTAxLTI2ICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRhbnph
cm9AaWdhbGlhLmNvbT4gYW5kIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEu
Y29tPgogCiAgICAgICAgIFtHVEtdIGd0a2RvYyBkb2VzIG5vdCBhcHBlYXIgaW4gRGV2SGVscApk
aWZmIC0tZ2l0IGEvVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25m
aWcvbWFzdGVyLmNmZyBiL1Rvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmct
Y29uZmlnL21hc3Rlci5jZmcKaW5kZXggM2NmZWQ4NTM2YzI5NzQ3OTJjZmYzZmQyNjM5MDYzNzkz
NmJiZDc1Ny4uNmJkNmM2NjZlYTk3ZWQ2MDVkMmVlN2Q1Mzc2YTYzNDkzMjQwZGNhZCAxMDA2NDQK
LS0tIGEvVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvbWFz
dGVyLmNmZworKysgYi9Ub29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNv
bmZpZy9tYXN0ZXIuY2ZnCkBAIC0yNzcsMTIgKzI3NywxMiBAQCBjbGFzcyBEb3dubG9hZEJ1aWx0
UHJvZHVjdChzaGVsbC5TaGVsbENvbW1hbmQpOgogICAgIGZsdW5rT25GYWlsdXJlID0gVHJ1ZQog
CiAKLWNsYXNzIFJ1bkphdmFTY3JpcHRDb3JlVGVzdHMoc2hlbGwuVGVzdCk6CitjbGFzcyBSdW5K
YXZhU2NyaXB0Q29yZVRlc3RzKFRlc3RXaXRoRmFpbHVyZUNvdW50KToKICAgICBuYW1lID0gImpz
Y29yZS10ZXN0IgogICAgIGRlc2NyaXB0aW9uID0gWyJqc2NvcmUtdGVzdHMgcnVubmluZyJdCiAg
ICAgZGVzY3JpcHRpb25Eb25lID0gWyJqc2NvcmUtdGVzdHMiXQogICAgIGNvbW1hbmQgPSBbInBl
cmwiLCAiLi9Ub29scy9TY3JpcHRzL3J1bi1qYXZhc2NyaXB0Y29yZS10ZXN0cyIsIFdpdGhQcm9w
ZXJ0aWVzKCItLSUoY29uZmlndXJhdGlvbilzIildCi0gICAgbG9nZmlsZXMgPSB7J2FjdHVhbC5o
dG1sIChzb3VyY2UpJzogJ1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2FjdHVh
bC5odG1sJ30KKyAgICBmYWlsZWRUZXN0c0Zvcm1hdFN0cmluZyA9ICIlZCBKU0MgdGVzdCVzIGZh
aWxlZCIKIAogICAgIGRlZiBfX2luaXRfXyhzZWxmLCBidWlsZEpTQ1Rvb2w9VHJ1ZSwgKmFyZ3Ms
ICoqa3dhcmdzKToKICAgICAgICAgc2VsZi5idWlsZEpTQ1Rvb2wgPSBidWlsZEpTQ1Rvb2wKQEAg
LTI5NSw1MSArMjk1LDE4IEBAIGNsYXNzIFJ1bkphdmFTY3JpcHRDb3JlVGVzdHMoc2hlbGwuVGVz
dCk6CiAgICAgICAgICAgICBzZWxmLnNldENvbW1hbmQoc2VsZi5jb21tYW5kICsgWyctLW5vLWJ1
aWxkJ10pCiAgICAgICAgIHJldHVybiBzaGVsbC5UZXN0LnN0YXJ0KHNlbGYpCiAKLSAgICBkZWYg
Y29tbWFuZENvbXBsZXRlKHNlbGYsIGNtZCk6Ci0gICAgICAgIHNoZWxsLlRlc3QuY29tbWFuZENv
bXBsZXRlKHNlbGYsIGNtZCkKKyAgICBkZWYgY291bnRGYWlsdXJlcyhzZWxmLCBjbWQpOgogICAg
ICAgICBsb2dUZXh0ID0gY21kLmxvZ3NbJ3N0ZGlvJ10uZ2V0VGV4dCgpCiAKLSAgICAgICAgZXhw
cmVzc2lvbnMgPSBbCi0gICAgICAgICAgICAoJ2ZhaWxpbmcgTW96aWxsYSB0ZXN0JywgcmUuY29t
cGlsZShyJ15SZXN1bHRzIGZvciBNb3ppbGxhIHRlc3RzOlxyP1xuXHMrKFxkKykgcmVncmVzc2lv
bicsIHJlLk1VTFRJTElORSkpLAotICAgICAgICAgICAgKCdmYWlsaW5nIEpTQyBzdHJlc3MgdGVz
dCcsIHJlLmNvbXBpbGUocideUmVzdWx0cyBmb3IgSlNDIHN0cmVzcyB0ZXN0czpccj9cblxzKyhc
ZCspIGZhaWx1cmUnLCByZS5NVUxUSUxJTkUpKSwKLSAgICAgICAgXQotICAgICAgICByZXN1bHRM
aW5lcyA9IHt9Ci0KLSAgICAgICAgZm9yIG5hbWUsIGV4cHJlc3Npb24gaW4gZXhwcmVzc2lvbnM6
Ci0gICAgICAgICAgICBtYXRjaCA9IGV4cHJlc3Npb24uc2VhcmNoKGxvZ1RleHQpCi0gICAgICAg
ICAgICByZXN1bHRMaW5lc1tuYW1lXSA9IGludChtYXRjaC5ncm91cCgxKSkgaWYgbWF0Y2ggZWxz
ZSAwCi0KLSAgICAgICAgc2VsZi5yZWdyZXNzaW9uTGluZSA9IFtdCi0gICAgICAgIGZvciBuYW1l
IGluIHJlc3VsdExpbmVzOgotICAgICAgICAgICAgZmFpbHVyZXMgPSByZXN1bHRMaW5lc1tuYW1l
XQotICAgICAgICAgICAgaWYgbm90IGZhaWx1cmVzOgotICAgICAgICAgICAgICAgIGNvbnRpbnVl
Ci0KLSAgICAgICAgICAgIGlmIGZhaWx1cmVzID09IDE6Ci0gICAgICAgICAgICAgICAgcGx1cmFs
U3VmZml4ID0gJycKLSAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgcGx1cmFsU3Vm
Zml4ID0gJ3MnCi0gICAgICAgICAgICBzZWxmLnJlZ3Jlc3Npb25MaW5lLmFwcGVuZCgiJWQgJXMl
cyAiICUgKGZhaWx1cmVzLCBuYW1lLCBwbHVyYWxTdWZmaXgpKQotCi0gICAgICAgIGlmICdhY3R1
YWwuaHRtbCAoc291cmNlKScgaW4gY21kLmxvZ3M6Ci0gICAgICAgICAgICBzZWxmLmFkZEhUTUxM
b2coJ2FjdHVhbC5odG1sJywgY21kLmxvZ3NbJ2FjdHVhbC5odG1sIChzb3VyY2UpJ10uZ2V0VGV4
dCgpKQotCi0gICAgZGVmIGV2YWx1YXRlQ29tbWFuZChzZWxmLCBjbWQpOgotICAgICAgICBpZiBz
ZWxmLnJlZ3Jlc3Npb25MaW5lOgotICAgICAgICAgICAgcmV0dXJuIEZBSUxVUkUKLQotICAgICAg
ICBpZiBjbWQucmMgIT0gMDoKLSAgICAgICAgICAgIHJldHVybiBGQUlMVVJFCi0KLSAgICAgICAg
cmV0dXJuIFNVQ0NFU1MKKyAgICAgICAgbWF0Y2ggPSByZS5zZWFyY2gocideUmVzdWx0cyBmb3Ig
SlNDIHN0cmVzcyB0ZXN0czpccj9cblxzKyhcZCspIGZhaWx1cmUnLCBsb2dUZXh0LCByZS5NVUxU
SUxJTkUpCisgICAgICAgIGlmIG1hdGNoOgorICAgICAgICAgICAgcmV0dXJuIGludChtYXRjaC5n
cm91cCgxKSkKIAotICAgIGRlZiBnZXRUZXh0KHNlbGYsIGNtZCwgcmVzdWx0cyk6Ci0gICAgICAg
IHJldHVybiBzZWxmLmdldFRleHQyKGNtZCwgcmVzdWx0cykKKyAgICAgICAgbWF0Y2ggPSByZS5z
ZWFyY2gocideUmVzdWx0cyBmb3IgTW96aWxsYSB0ZXN0czpccj9cblxzKyhcZCspIHJlZ3Jlc3Np
b24nLCBsb2dUZXh0LCByZS5NVUxUSUxJTkUpCisgICAgICAgIGlmIG1hdGNoOgorICAgICAgICAg
ICAgcmV0dXJuIGludChtYXRjaC5ncm91cCgxKSkKIAotICAgIGRlZiBnZXRUZXh0MihzZWxmLCBj
bWQsIHJlc3VsdHMpOgotICAgICAgICByZXN1bHQgPSBbc2VsZi5uYW1lXQotICAgICAgICByZXN1
bHQuZXh0ZW5kKHNlbGYucmVncmVzc2lvbkxpbmUpCi0gICAgICAgIHJldHVybiByZXN1bHQKKyAg
ICAgICAgcmV0dXJuIDAKIAogY2xhc3MgUnVuV2ViS2l0VGVzdHMoc2hlbGwuVGVzdCk6CiAgICAg
bmFtZSA9ICJsYXlvdXQtdGVzdCIKZGlmZiAtLWdpdCBhL1Rvb2xzL0J1aWxkU2xhdmVTdXBwb3J0
L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL21hc3RlcmNmZ191bml0dGVzdC5weSBiL1Rvb2xzL0J1
aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL21hc3RlcmNmZ191bml0dGVz
dC5weQppbmRleCAwNDFhMDZhNjAzZjM2ZjE3MTI2YjA2NjBkNjA3N2IxZWVjNmQyNmU0Li5lNTFk
NTI4Yzk0ODVjNzEwZDM3YzU4M2Y4NTg3NzM5Y2E2N2I3ZTEwIDEwMDc1NQotLS0gYS9Ub29scy9C
dWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9tYXN0ZXJjZmdfdW5pdHRl
c3QucHkKKysrIGIvVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25m
aWcvbWFzdGVyY2ZnX3VuaXR0ZXN0LnB5CkBAIC0xMjIsMjEgKzEyMiwyMSBAQCBjbGFzcyBSdW5K
YXZhU2NyaXB0Q29yZVRlc3RzVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CiAgICAgT0suIiIiKQog
CiAgICAgZGVmIHRlc3RfbW96aWxsYV9mYWlsdXJlX29sZF9vdXRwdXQoc2VsZik6Ci0gICAgICAg
IHNlbGYuYXNzZXJ0UmVzdWx0cyhGQUlMVVJFLCBbImpzY29yZS10ZXN0IiwgJzEgZmFpbGluZyBN
b3ppbGxhIHRlc3QgJ10sIDEsICIiIlJlc3VsdHMgZm9yIE1vemlsbGEgdGVzdHM6CisgICAgICAg
IHNlbGYuYXNzZXJ0UmVzdWx0cyhGQUlMVVJFLCBbIjEgSlNDIHRlc3QgZmFpbGVkIl0sIDEsICIi
IlJlc3VsdHMgZm9yIE1vemlsbGEgdGVzdHM6CiAgICAgMSByZWdyZXNzaW9uIGZvdW5kLgogICAg
IDAgdGVzdHMgZml4ZWQuIiIiKQogCiAgICAgZGVmIHRlc3RfbW96aWxsYV9mYWlsdXJlc19vbGRf
b3V0cHV0KHNlbGYpOgotICAgICAgICBzZWxmLmFzc2VydFJlc3VsdHMoRkFJTFVSRSwgWyJqc2Nv
cmUtdGVzdCIsICcyIGZhaWxpbmcgTW96aWxsYSB0ZXN0cyAnXSwgMSwgIiIiUmVzdWx0cyBmb3Ig
TW96aWxsYSB0ZXN0czoKKyAgICAgICAgc2VsZi5hc3NlcnRSZXN1bHRzKEZBSUxVUkUsIFsiMiBK
U0MgdGVzdHMgZmFpbGVkIl0sIDEsICIiIlJlc3VsdHMgZm9yIE1vemlsbGEgdGVzdHM6CiAgICAg
MiByZWdyZXNzaW9ucyBmb3VuZC4KICAgICAwIHRlc3RzIGZpeGVkLiIiIikKIAogICAgIGRlZiB0
ZXN0X2pzY19zdHJlc3NfZmFpbHVyZV9uZXdfb3V0cHV0KHNlbGYpOgotICAgICAgICBzZWxmLmFz
c2VydFJlc3VsdHMoRkFJTFVSRSwgWyJqc2NvcmUtdGVzdCIsICcxIGZhaWxpbmcgSlNDIHN0cmVz
cyB0ZXN0ICddLCAxLCAgIiIiUmVzdWx0cyBmb3IgSlNDIHN0cmVzcyB0ZXN0czoKKyAgICAgICAg
c2VsZi5hc3NlcnRSZXN1bHRzKEZBSUxVUkUsIFsiMSBKU0MgdGVzdCBmYWlsZWQiXSwgMSwgICIi
IlJlc3VsdHMgZm9yIEpTQyBzdHJlc3MgdGVzdHM6CiAgICAgMSBmYWlsdXJlIGZvdW5kLiIiIikK
IAogICAgIGRlZiB0ZXN0X2pzY19zdHJlc3NfZmFpbHVyZXNfbmV3X291dHB1dChzZWxmKToKLSAg
ICAgICAgc2VsZi5hc3NlcnRSZXN1bHRzKEZBSUxVUkUsIFsianNjb3JlLXRlc3QiLCAnNSBmYWls
aW5nIEpTQyBzdHJlc3MgdGVzdHMgJ10sIDEsICAiIiJSZXN1bHRzIGZvciBKU0Mgc3RyZXNzIHRl
c3RzOgorICAgICAgICBzZWxmLmFzc2VydFJlc3VsdHMoRkFJTFVSRSwgWyI1IEpTQyB0ZXN0cyBm
YWlsZWQiXSwgMSwgICIiIlJlc3VsdHMgZm9yIEpTQyBzdHJlc3MgdGVzdHM6CiAgICAgNSBmYWls
dXJlcyBmb3VuZC4iIiIpCiAKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>