title: TimeoutError: Worker failed to start
body: <p>I work in an environment conda on jupyter notebook.
  When trying to create a client using processes as follows</p>
  
  <pre><code>from dask.distributed import Client, progress
  
  client = Client(processes = True)
  </code></pre>
  
  <p><strong>the following error occurs</strong></p>
  
  <blockquote>
  <pre><code> TimeoutError                              Traceback (most recent call last)
      /home/vlad/anaconda3/lib/python3.6/site-packages/tornado/gen.py in
  </code></pre>
    
    <p>callback(f)
                827                 try:
            --> 828                     result_list.append(f.result())
                829                 except Exception as e:</p>
  
  <pre><code>    /home/vlad/anaconda3/lib/python3.6/site-packages/tornado/concurrent.py
  </code></pre>
    
    <p>in result(self, timeout)
                237             try:
            --> 238                 raise_exc_info(self._exc_info)
                239             finally:</p>
  
  <pre><code>    /home/vlad/anaconda3/lib/python3.6/site-packages/tornado/util.py in
  </code></pre>
    
    <p>raise_exc_info(exc_info)</p>
  
  <pre><code>    /home/vlad/anaconda3/lib/python3.6/site-packages/tornado/gen.py in
  </code></pre>
    
    <p>run(self)
               1068                     else:
            -> 1069                         yielded = self.gen.send(value)
               1070 </p>
  
  <pre><code>    /home/vlad/anaconda3/lib/python3.6/site-packages/distributed/deploy/local.py
  </code></pre>
    
    <p>in _start_worker(self, death_timeout, **kwargs)
                228             self.workers.remove(w)
            --> 229             raise gen.TimeoutError("Worker failed to start")
                230 </p>
  
  <pre><code>    TimeoutError: Worker failed to start
  
      During handling of the above exception, another exception occurred:
  
      TimeoutError                              Traceback (most recent call last)
      &lt;ipython-input-26-9ebe205475b6&gt; in &lt;module&gt;()
            3 
            4 # Use all 8 cores
      ----&gt; 5 cluster = LocalCluster(processes = True, n_workers = 4)
            6 ##client = Client(processes = True)
            7 ##client = Client('localhost:8789')
  
      /home/vlad/anaconda3/lib/python3.6/site-packages/distributed/deploy/local.py
  </code></pre>
    
    <p>in <strong>init</strong>(self, n_workers, threads_per_worker, processes, loop,
    start, ip, scheduler_port, silence_logs, diagnostics_port, services,
    worker_services, service_kwargs, asynchronous, security,
    **worker_kwargs)
                140             self.worker_kwargs['security'] = security
                141 
            --> 142         self.start(ip=ip, n_workers=n_workers)
                143 
                144         clusters_to_close.add(self)</p>
  
  <pre><code>    /home/vlad/anaconda3/lib/python3.6/site-packages/distributed/deploy/local.py
  </code></pre>
    
    <p>in start(self, **kwargs)
                177             self._started = self._start(**kwargs)
                178         else:
            --> 179             self.sync(self._start, **kwargs)
                180 
                181     @gen.coroutine</p>
  
  <pre><code>    /home/vlad/anaconda3/lib/python3.6/site-packages/distributed/deploy/local.py
  </code></pre>
    
    <p>in sync(self, func, *args, **kwargs)
                170             return future
                171         else:
            --> 172             return sync(self.loop, func, *args, **kwargs)
                173 
                174     def start(self, **kwargs):</p>
  
  <pre><code>    /home/vlad/anaconda3/lib/python3.6/site-packages/distributed/utils.py
  </code></pre>
    
    <p>in sync(loop, func, *args, **kwargs)
                275             e.wait(10)
                276     if error[0]:
            --> 277         six.reraise(*error[0])
                278     else:
                279         return result[0]</p>
  
  <pre><code>    /home/vlad/anaconda3/lib/python3.6/site-packages/six.py in reraise(tp, value, tb)
          691             if value.__traceback__ is not tb:
          692                 raise value.with_traceback(tb)
      --&gt; 693             raise value
          694         finally:
          695             value = None
  
      /home/vlad/anaconda3/lib/python3.6/site-packages/distributed/utils.py
  </code></pre>
    
    <p>in f()
                260             if timeout is not None:
                261                 future = gen.with_timeout(timedelta(seconds=timeout), future)
            --> 262             result[0] = yield future
                263         except Exception as exc:
                264             error[0] = sys.exc_info()</p>
  
  <pre><code>    /home/vlad/anaconda3/lib/python3.6/site-packages/tornado/gen.py in
  </code></pre>
    
    <p>run(self)
               1053 
               1054                     try:
            -> 1055                         value = future.result()
               1056                     except Exception:
               1057                         self.had_exception = True</p>
  
  <pre><code>    /home/vlad/anaconda3/lib/python3.6/site-packages/tornado/concurrent.py
  </code></pre>
    
    <p>in result(self, timeout)
                236         if self._exc_info is not None:
                237             try:
            --> 238                 raise_exc_info(self._exc_info)
                239             finally:
                240                 self = None</p>
  
  <pre><code>    /home/vlad/anaconda3/lib/python3.6/site-packages/tornado/util.py in
  </code></pre>
    
    <p>raise_exc_info(exc_info)</p>
  
  <pre><code>    /home/vlad/anaconda3/lib/python3.6/site-packages/tornado/gen.py in
  </code></pre>
    
    <p>run(self)
               1061                     if exc_info is not None:
               1062                         try:
            -> 1063                             yielded = self.gen.throw(*exc_info)
               1064                         finally:
               1065                             # Break up a reference to itself</p>
  
  <pre><code>    /home/vlad/anaconda3/lib/python3.6/site-packages/distributed/deploy/local.py
  </code></pre>
    
    <p>in _start(self, ip, n_workers)
                197         self.scheduler.start(scheduler_address)
                198 
            --> 199         yield [self._start_worker(**self.worker_kwargs) for i in range(n_workers)]
                200 
                201         self.status = 'running'</p>
  
  <pre><code>    /home/vlad/anaconda3/lib/python3.6/site-packages/tornado/gen.py in
  </code></pre>
    
    <p>run(self)
               1053 
               1054                     try:
            -> 1055                         value = future.result()
               1056                     except Exception:
               1057                         self.had_exception = True</p>
  
  <pre><code>    /home/vlad/anaconda3/lib/python3.6/site-packages/tornado/concurrent.py
  </code></pre>
    
    <p>in result(self, timeout)
                236         if self._exc_info is not None:
                237             try:
            --> 238                 raise_exc_info(self._exc_info)
                239             finally:
                240                 self = None</p>
  
  <pre><code>    /home/vlad/anaconda3/lib/python3.6/site-packages/tornado/util.py in
  </code></pre>
    
    <p>raise_exc_info(exc_info)</p>
  
  <pre><code>    /home/vlad/anaconda3/lib/python3.6/site-packages/tornado/gen.py in
  </code></pre>
    
    <p>callback(f)
                826             for f in children:
                827                 try:
            --> 828                     result_list.append(f.result())
                829                 except Exception as e:
                830                     if future.done():</p>
  
  <pre><code>    /home/vlad/anaconda3/lib/python3.6/site-packages/tornado/concurrent.py
  </code></pre>
    
    <p>in result(self, timeout)
                236         if self._exc_info is not None:
                237             try:
            --> 238                 raise_exc_info(self._exc_info)
                239             finally:
                240                 self = None</p>
  
  <pre><code>    /home/vlad/anaconda3/lib/python3.6/site-packages/tornado/util.py in
  </code></pre>
    
    <p>raise_exc_info(exc_info)</p>
  
  <pre><code>    /home/vlad/anaconda3/lib/python3.6/site-packages/tornado/gen.py in
  </code></pre>
    
    <p>run(self)
               1067                             exc_info = None
               1068                     else:
            -> 1069                         yielded = self.gen.send(value)
               1070 
               1071                     if stack_context._state.contexts is not orig_stack_contexts:</p>
  
  <pre><code>    /home/vlad/anaconda3/lib/python3.6/site-packages/distributed/deploy/local.py
  </code></pre>
    
    <p>in _start_worker(self, death_timeout, **kwargs)
                227         if w.status == 'closed' and self.scheduler.status == 'running':
                228             self.workers.remove(w)
            --> 229             raise gen.TimeoutError("Worker failed to start")
                230 
                231         raise gen.Return(w)</p>
  
  <pre><code>    TimeoutError: Worker failed to start
  </code></pre>
  </blockquote>
  
  <p>How can I solve this problem? I have the following setup<br>
  python version:  <strong>3.6.9</strong> <br/>
  dask version <strong>1.1.4</strong> <br/>
  distributed version <strong>1.26.0</strong> <br/>
  tornado version <strong>4.5</strong> <br/>
  conda <strong>4.6.14</strong> <br/></p>