<p dir="auto">This failure/permissions error is showing up in the wheels repo for a subset of Windows matrix entries, including backports for 1.7.2 and for <code class="notranslate">master</code>.</p>
<p dir="auto">I'll put the traceback below, and links to sample PRs:<br>
<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1035763905" data-permission-text="Title is private" data-url="https://github.com/MacPython/scipy-wheels/issues/135" data-hovercard-type="pull_request" data-hovercard-url="/MacPython/scipy-wheels/pull/135/hovercard" href="https://github.com/MacPython/scipy-wheels/pull/135">MacPython/scipy-wheels#135</a><br>
<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1045403120" data-permission-text="Title is private" data-url="https://github.com/MacPython/scipy-wheels/issues/138" data-hovercard-type="pull_request" data-hovercard-url="/MacPython/scipy-wheels/pull/138/hovercard" href="https://github.com/MacPython/scipy-wheels/pull/138">MacPython/scipy-wheels#138</a></p>
<p dir="auto">Can we put a skip marker on this test for Windows temporarily, at least on the maintenance branch, or is this looking real?</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="================================== FAILURES ===================================
_____________________________ test_quad_vec_pool ______________________________
[gw0] win32 -- Python 3.7.5 C:\Python37-x64\python.exe
C:\Python37-x64\lib\site-packages\scipy\integrate\tests\test__quad_vec.py:98: in test_quad_vec_pool
    res, err = quad_vec(f, -np.inf, np.inf, norm='max', epsabs=1e-4, workers=4)
        Pool       = &lt;function Pool at 0x000002479C210A68&gt;
        f          = &lt;function _lorenzian at 0x0000024787C0FDC8&gt;
C:\Python37-x64\lib\site-packages\scipy\integrate\_quad_vec.py:252: in quad_vec
    res = quad_vec(f2, -1, 1, **kwargs)
        a          = -inf
        b          = inf
        cache_size = 100000000.0
        epsabs     = 0.0001
        epsrel     = 1e-08
        f          = &lt;function _lorenzian at 0x0000024787C0FDC8&gt;
        f2         = &lt;scipy.integrate._quad_vec.DoubleInfiniteFunc object at 0x0000024799FFCA48&gt;
        full_output = False
        kwargs     = {'cache_size': 100000000.0, 'epsabs': 0.0001, 'epsrel': 1e-08, 'full_output': False, ...}
        limit      = 10000
        norm       = 'max'
        points     = None
        quadrature = None
        sgn        = 1
        workers    = 4
C:\Python37-x64\lib\site-packages\scipy\integrate\_quad_vec.py:391: in quad_vec
    break
        CONVERGED  = 0
        NOT_A_NUMBER = 3
        NOT_CONVERGED = 1
        ROUNDING_ERROR = 2
        _quadrature = &lt;function _quadrature_gk15 at 0x0000024787BDB678&gt;
        a          = -1.0
        b          = 0.0
        cache_count = 4166666.0
        cache_size = 100000000.0
        derr       = -0.0001958558976507645
        dint       = -5.188183216375819e-11
        dneval     = 30
        dround_err = 1.7439342490043163e-14
        epsabs     = 0.0001
        epsrel     = 1e-08
        err        = 1.2888960825934786e-10
        err_sum    = 0.00039171231086582484
        f          = &lt;scipy.integrate._quad_vec.DoubleInfiniteFunc object at 0x0000024799FFCA48&gt;
        full_output = False
        global_error = 5.155584007941142e-10
        global_integral = 3.141592653589793
        ier        = 0
        ig         = 0.7853981633974483
        initial_intervals = [(-1.0, 0.0), (0.0, 1.0)]
        interval   = (-0.000195856155429981, -1.0, 0.0)
        interval_cache = LRUDict([((0.0, 0.5), 0.7853981633974485), ((0.5, 1.0), 0.7853981633974483), ((-1.0, -0.5), 0.7853981633974484), ((-0.5, 0.0), 0.7853981633974483)])
        intervals  = [(-1.2888960825934792e-10, -1.0, -0.5), (-1.2888960825934786e-10, -0.5, 0.0), (-1.2888960825934792e-10, 0.5, 1.0), (-1.2888957602994802e-10, 0.0, 0.5)]
        j          = 2
        kwargs     = {'cache_size': 100000000.0, 'epsabs': 0.0001, 'epsrel': 1e-08, 'full_output': False, ...}
        limit      = 10000
        mapwrapper = &lt;scipy._lib._util.MapWrapper object at 0x000002479C20C9C8&gt;
        min_intervals = 2
        neg_old_err = -0.000195856155429981
        neval      = 90
        norm       = 'max'
        norm_func  = &lt;built-in function abs&gt;
        norm_funcs = {None: &lt;function _max_norm at 0x0000024787B5C0D8&gt;, 'max': &lt;function _max_norm at 0x0000024787B5C0D8&gt;, '2': &lt;function norm at 0x00000247FE803E58&gt;}
        old_int    = 1.5707963268467784
        p          = 0.0
        parallel_count = 128
        points     = (0,)
        prev       = 0.0
        quadrature = 'gk15'
        rnd        = 1.743934249061916e-14
        rounding_error = 6.975736996132465e-14
        status_msg = {0: 'Target precision reached.', 1: 'Target precision not reached.', 2: 'Target precision could not be reached due to rounding error.', 3: 'Non-finite values encountered.'}
        subint     = ((-1.0, -0.5, 0.7853981633974484, 1.2888960825934792e-10), (-0.5, 0.0, 0.7853981633974483, 1.2888960825934786e-10))
        to_process = [((0.00019585615543584383, 0.0, 1.0, 1.5707963268467782), &lt;scipy.integrate._quad_vec.DoubleInfiniteFunc object at 0x00...nfiniteFunc object at 0x0000024799FFCA48&gt;, &lt;built-in function abs&gt;, &lt;function _quadrature_gk15 at 0x0000024787BDB678&gt;)]
        tol        = 0.0001
        workers    = 4
        x          = (-0.5, 0.0, 0.7853981633974483, 1.2888960825934786e-10)
        x1         = -0.5
        x2         = 0.0
C:\Python37-x64\lib\site-packages\scipy\_lib\_util.py:466: in __exit__
    self.pool.terminate()
        exc_type   = None
        exc_value  = None
        self       = &lt;scipy._lib._util.MapWrapper object at 0x000002479C20C9C8&gt;
        traceback  = None
C:\Python37-x64\lib\multiprocessing\pool.py:548: in terminate
    self._terminate()
        self       = &lt;multiprocessing.pool.Pool object at 0x000002479C20CBC8&gt;
C:\Python37-x64\lib\multiprocessing\util.py:201: in __call__
    res = self._callback(*self._args, **self._kwargs)
        _finalizer_registry = {(None, 9): &lt;Finalize object, callback=CloseHandle, args=(2044,)&gt;, (None, 10): &lt;Finalize object, callback=CloseHandle,...Finalize object, callback=CloseHandle, args=(2020,)&gt;, (None, 12): &lt;Finalize object, callback=CloseHandle, args=(508,)&gt;}
        getpid     = &lt;built-in function getpid&gt;
        self       = &lt;Finalize object, callback=_terminate_pool, args=(&lt;_queue.SimpleQueue object at 0x000002479C1FB638&gt;, &lt;multiprocessing....emon 2636)&gt;, &lt;Thread(Thread-108, stopped daemon 3004)&gt;, &lt;Thread(Thread-109, stopped daemon 3664)&gt;, {}), exitprority=15&gt;
        sub_debug  = &lt;function sub_debug at 0x00000247FF7A5DC8&gt;
        wr         = None
C:\Python37-x64\lib\multiprocessing\pool.py:601: in _terminate_pool
    p.terminate()
        cache      = {}
        cls        = &lt;class 'multiprocessing.pool.Pool'&gt;
        inqueue    = &lt;multiprocessing.queues.SimpleQueue object at 0x000002479C20CB08&gt;
        outqueue   = &lt;multiprocessing.queues.SimpleQueue object at 0x000002479C2053C8&gt;
        p          = &lt;SpawnProcess(SpawnPoolWorker-8, stopped daemon)&gt;
        pool       = [&lt;SpawnProcess(SpawnPoolWorker-7, stopped[SIGTERM] daemon)&gt;, &lt;SpawnProcess(SpawnPoolWorker-8, stopped daemon)&gt;, &lt;SpawnProcess(SpawnPoolWorker-9, stopped daemon)&gt;, &lt;SpawnProcess(SpawnPoolWorker-10, stopped daemon)&gt;]
        result_handler = &lt;Thread(Thread-109, stopped daemon 3664)&gt;
        task_handler = &lt;Thread(Thread-108, stopped daemon 3004)&gt;
        taskqueue  = &lt;_queue.SimpleQueue object at 0x000002479C1FB638&gt;
        worker_handler = &lt;Thread(Thread-107, stopped daemon 2636)&gt;
C:\Python37-x64\lib\multiprocessing\process.py:124: in terminate
    self._popen.terminate()
        self       = &lt;SpawnProcess(SpawnPoolWorker-8, stopped daemon)&gt;
C:\Python37-x64\lib\multiprocessing\popen_spawn_win32.py:119: in terminate
    _winapi.TerminateProcess(int(self._handle), TERMINATE)
E   PermissionError: [WinError 5] Access is denied
        self       = &lt;multiprocessing.popen_spawn_win32.Popen object at 0x000002479C205748&gt;"><pre class="notranslate"><code class="notranslate">================================== FAILURES ===================================
_____________________________ test_quad_vec_pool ______________________________
[gw0] win32 -- Python 3.7.5 C:\Python37-x64\python.exe
C:\Python37-x64\lib\site-packages\scipy\integrate\tests\test__quad_vec.py:98: in test_quad_vec_pool
    res, err = quad_vec(f, -np.inf, np.inf, norm='max', epsabs=1e-4, workers=4)
        Pool       = &lt;function Pool at 0x000002479C210A68&gt;
        f          = &lt;function _lorenzian at 0x0000024787C0FDC8&gt;
C:\Python37-x64\lib\site-packages\scipy\integrate\_quad_vec.py:252: in quad_vec
    res = quad_vec(f2, -1, 1, **kwargs)
        a          = -inf
        b          = inf
        cache_size = 100000000.0
        epsabs     = 0.0001
        epsrel     = 1e-08
        f          = &lt;function _lorenzian at 0x0000024787C0FDC8&gt;
        f2         = &lt;scipy.integrate._quad_vec.DoubleInfiniteFunc object at 0x0000024799FFCA48&gt;
        full_output = False
        kwargs     = {'cache_size': 100000000.0, 'epsabs': 0.0001, 'epsrel': 1e-08, 'full_output': False, ...}
        limit      = 10000
        norm       = 'max'
        points     = None
        quadrature = None
        sgn        = 1
        workers    = 4
C:\Python37-x64\lib\site-packages\scipy\integrate\_quad_vec.py:391: in quad_vec
    break
        CONVERGED  = 0
        NOT_A_NUMBER = 3
        NOT_CONVERGED = 1
        ROUNDING_ERROR = 2
        _quadrature = &lt;function _quadrature_gk15 at 0x0000024787BDB678&gt;
        a          = -1.0
        b          = 0.0
        cache_count = 4166666.0
        cache_size = 100000000.0
        derr       = -0.0001958558976507645
        dint       = -5.188183216375819e-11
        dneval     = 30
        dround_err = 1.7439342490043163e-14
        epsabs     = 0.0001
        epsrel     = 1e-08
        err        = 1.2888960825934786e-10
        err_sum    = 0.00039171231086582484
        f          = &lt;scipy.integrate._quad_vec.DoubleInfiniteFunc object at 0x0000024799FFCA48&gt;
        full_output = False
        global_error = 5.155584007941142e-10
        global_integral = 3.141592653589793
        ier        = 0
        ig         = 0.7853981633974483
        initial_intervals = [(-1.0, 0.0), (0.0, 1.0)]
        interval   = (-0.000195856155429981, -1.0, 0.0)
        interval_cache = LRUDict([((0.0, 0.5), 0.7853981633974485), ((0.5, 1.0), 0.7853981633974483), ((-1.0, -0.5), 0.7853981633974484), ((-0.5, 0.0), 0.7853981633974483)])
        intervals  = [(-1.2888960825934792e-10, -1.0, -0.5), (-1.2888960825934786e-10, -0.5, 0.0), (-1.2888960825934792e-10, 0.5, 1.0), (-1.2888957602994802e-10, 0.0, 0.5)]
        j          = 2
        kwargs     = {'cache_size': 100000000.0, 'epsabs': 0.0001, 'epsrel': 1e-08, 'full_output': False, ...}
        limit      = 10000
        mapwrapper = &lt;scipy._lib._util.MapWrapper object at 0x000002479C20C9C8&gt;
        min_intervals = 2
        neg_old_err = -0.000195856155429981
        neval      = 90
        norm       = 'max'
        norm_func  = &lt;built-in function abs&gt;
        norm_funcs = {None: &lt;function _max_norm at 0x0000024787B5C0D8&gt;, 'max': &lt;function _max_norm at 0x0000024787B5C0D8&gt;, '2': &lt;function norm at 0x00000247FE803E58&gt;}
        old_int    = 1.5707963268467784
        p          = 0.0
        parallel_count = 128
        points     = (0,)
        prev       = 0.0
        quadrature = 'gk15'
        rnd        = 1.743934249061916e-14
        rounding_error = 6.975736996132465e-14
        status_msg = {0: 'Target precision reached.', 1: 'Target precision not reached.', 2: 'Target precision could not be reached due to rounding error.', 3: 'Non-finite values encountered.'}
        subint     = ((-1.0, -0.5, 0.7853981633974484, 1.2888960825934792e-10), (-0.5, 0.0, 0.7853981633974483, 1.2888960825934786e-10))
        to_process = [((0.00019585615543584383, 0.0, 1.0, 1.5707963268467782), &lt;scipy.integrate._quad_vec.DoubleInfiniteFunc object at 0x00...nfiniteFunc object at 0x0000024799FFCA48&gt;, &lt;built-in function abs&gt;, &lt;function _quadrature_gk15 at 0x0000024787BDB678&gt;)]
        tol        = 0.0001
        workers    = 4
        x          = (-0.5, 0.0, 0.7853981633974483, 1.2888960825934786e-10)
        x1         = -0.5
        x2         = 0.0
C:\Python37-x64\lib\site-packages\scipy\_lib\_util.py:466: in __exit__
    self.pool.terminate()
        exc_type   = None
        exc_value  = None
        self       = &lt;scipy._lib._util.MapWrapper object at 0x000002479C20C9C8&gt;
        traceback  = None
C:\Python37-x64\lib\multiprocessing\pool.py:548: in terminate
    self._terminate()
        self       = &lt;multiprocessing.pool.Pool object at 0x000002479C20CBC8&gt;
C:\Python37-x64\lib\multiprocessing\util.py:201: in __call__
    res = self._callback(*self._args, **self._kwargs)
        _finalizer_registry = {(None, 9): &lt;Finalize object, callback=CloseHandle, args=(2044,)&gt;, (None, 10): &lt;Finalize object, callback=CloseHandle,...Finalize object, callback=CloseHandle, args=(2020,)&gt;, (None, 12): &lt;Finalize object, callback=CloseHandle, args=(508,)&gt;}
        getpid     = &lt;built-in function getpid&gt;
        self       = &lt;Finalize object, callback=_terminate_pool, args=(&lt;_queue.SimpleQueue object at 0x000002479C1FB638&gt;, &lt;multiprocessing....emon 2636)&gt;, &lt;Thread(Thread-108, stopped daemon 3004)&gt;, &lt;Thread(Thread-109, stopped daemon 3664)&gt;, {}), exitprority=15&gt;
        sub_debug  = &lt;function sub_debug at 0x00000247FF7A5DC8&gt;
        wr         = None
C:\Python37-x64\lib\multiprocessing\pool.py:601: in _terminate_pool
    p.terminate()
        cache      = {}
        cls        = &lt;class 'multiprocessing.pool.Pool'&gt;
        inqueue    = &lt;multiprocessing.queues.SimpleQueue object at 0x000002479C20CB08&gt;
        outqueue   = &lt;multiprocessing.queues.SimpleQueue object at 0x000002479C2053C8&gt;
        p          = &lt;SpawnProcess(SpawnPoolWorker-8, stopped daemon)&gt;
        pool       = [&lt;SpawnProcess(SpawnPoolWorker-7, stopped[SIGTERM] daemon)&gt;, &lt;SpawnProcess(SpawnPoolWorker-8, stopped daemon)&gt;, &lt;SpawnProcess(SpawnPoolWorker-9, stopped daemon)&gt;, &lt;SpawnProcess(SpawnPoolWorker-10, stopped daemon)&gt;]
        result_handler = &lt;Thread(Thread-109, stopped daemon 3664)&gt;
        task_handler = &lt;Thread(Thread-108, stopped daemon 3004)&gt;
        taskqueue  = &lt;_queue.SimpleQueue object at 0x000002479C1FB638&gt;
        worker_handler = &lt;Thread(Thread-107, stopped daemon 2636)&gt;
C:\Python37-x64\lib\multiprocessing\process.py:124: in terminate
    self._popen.terminate()
        self       = &lt;SpawnProcess(SpawnPoolWorker-8, stopped daemon)&gt;
C:\Python37-x64\lib\multiprocessing\popen_spawn_win32.py:119: in terminate
    _winapi.TerminateProcess(int(self._handle), TERMINATE)
E   PermissionError: [WinError 5] Access is denied
        self       = &lt;multiprocessing.popen_spawn_win32.Popen object at 0x000002479C205748&gt;
</code></pre></div>
<p dir="auto"><a href="https://ci.appveyor.com/project/scipy/scipy-wheels/builds/40998533/job/eqlrdamm2bp6kkxp" rel="nofollow">Here</a> This is on Python 3.9, 3.8 passed.</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="C:\Python39\lib\site-packages\scipy\integrate\tests\test__quad_vec.py:108: in test_quad_vec_pool

...

C:\Python39\lib\multiprocessing\popen_spawn_win32.py:123: in terminate
    _winapi.TerminateProcess(int(self._handle), TERMINATE)
E   PermissionError: [WinError 5] Access is denied
        self       = &lt;multiprocessing.popen_spawn_win32.Popen object at 0x137C0748&gt;"><pre class="notranslate"><code class="notranslate">C:\Python39\lib\site-packages\scipy\integrate\tests\test__quad_vec.py:108: in test_quad_vec_pool

...

C:\Python39\lib\multiprocessing\popen_spawn_win32.py:123: in terminate
    _winapi.TerminateProcess(int(self._handle), TERMINATE)
E   PermissionError: [WinError 5] Access is denied
        self       = &lt;multiprocessing.popen_spawn_win32.Popen object at 0x137C0748&gt;
</code></pre></div>
<p dir="auto">It isn't clear if this is an upstream problem or misuse on scipy's part.</p>