<html>
    <head>
      <base href="https://llvm.org/bugs/" />
    </head>
    <body><span class="vcard"><a class="email" href="mailto:todd.fiala@gmail.com" title="Todd Fiala <todd.fiala@gmail.com>"> <span class="fn">Todd Fiala</span></a>
</span> changed
              <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - dotest.py parallel mode does not gracefully quit with ^C"
   href="https://llvm.org/bugs/show_bug.cgi?id=24709">bug 24709</a>
        <br>
             <table border="1" cellspacing="0" cellpadding="8">
          <tr>
            <th>What</th>
            <th>Removed</th>
            <th>Added</th>
          </tr>

         <tr>
           <td style="text-align:right;">Status</td>
           <td>ASSIGNED
           </td>
           <td>RESOLVED
           </td>
         </tr>

         <tr>
           <td style="text-align:right;">Resolution</td>
           <td>---
           </td>
           <td>FIXED
           </td>
         </tr></table>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - dotest.py parallel mode does not gracefully quit with ^C"
   href="https://llvm.org/bugs/show_bug.cgi?id=24709#c6">Comment # 6</a>
              on <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - dotest.py parallel mode does not gracefully quit with ^C"
   href="https://llvm.org/bugs/show_bug.cgi?id=24709">bug 24709</a>
              from <span class="vcard"><a class="email" href="mailto:todd.fiala@gmail.com" title="Todd Fiala <todd.fiala@gmail.com>"> <span class="fn">Todd Fiala</span></a>
</span></b>
        <pre>Addressed with this commit:

Sending        test/dosep.py
Sending        test/dotest.py
Sending        test/dotest_args.py
Transmitting file data ...
Committed revision 247084.

dotest.py's parallel test runner now has selectable test runner strategies. 
The strategy can be overridden with the --test-runner-name argument.  The
defaults are 'multiprocessing' for all platforms except Windows, and
'multiprocessing-pool' for Windows.  The default changes if a --threads 1 is
specified, in which case it uses a serial strategy that only executes one test
at a time in isolation.  So 'dotest.py --threads 1' performs the same function
as 'dosep.py' (or dosep.ty for those who remember) prior to late 2013.

Both the 'multiprocessing' and 'threading' strategies support Ctrl-C breaking
out of a parallel run (as should the 'serial' non-parallel runner).  None of
the other parallel test runner strategies support Ctrl-C, as they are based on
pre-baked Pool implementations that look like they prevent proper handling of
Ctrl-C (and this also appears to break Windows).

The first Ctrl-C drains the follow-up work queue, but allows the existing
workers finish their work in progress.  The second Ctrl-C kills all inferior
dotest.py processes, effectively stopping immediately.  In both cases, the work
already reported is preserved and passed on to the user.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>