I'm guessing you are hitting resource limits, e.g. compare "ipcs -l" inside 
and outside of the docker container.

Afair my image passed doctests on my machine, though that machine is still 
boxed up in my closet right now...





On Tuesday, March 3, 2015 at 10:06:47 PM UTC+1, Nicolas M. Thiéry wrote:
>
>        Dear Sage developers, 
>
> A colleague of mine (Vincent Neri, in CC) is investigating the usage 
> of docker to run multiple instances of the sage patchbot within 
> sandboxes on a cluster here. This works smoothly, except that the 
> doctesting framework fails mysteriously on three files, and we haven't 
> been able to debug. So this is a blocker for moving further, and help 
> would be much appreciated. 
>
>
> Vincent tried the docker centos-based image built by Volker: 
>
>         https://github.com/sagemath/docker 
>
> He also built his own docker images using several other linux 
> distributions and various recent versions of Sage (including 6.4.1 and 
> 6.5). 
>
> In all cases, all tests pass smoothly, except for three files: 
>
>     sage -t --warn-long 19.5 src/sage/interfaces/qsieve.py  # Bad exit: 1 
>     sage -t --warn-long 19.5 
> local/lib/python2.7/site-packages/sagenb-0.11.4-py2.7.egg/sagenb/notebook/worksheet.py
>  
>
>     # Bad exit: 1 
>     sage -t --warn-long 19.5 
> local/lib/python2.7/site-packages/sagenb-0.11.4-py2.7.egg/sagenb/notebook/cell.py
>  
>
>     # Bad exit: 1 
>
> In all three cases, it's actually the doctesting framework that fails, 
> somewhere during the multiprocessing handling: 
>
>     Traceback (most recent call last): 
>       File 
> "/home/sage/sage-6.4.1/local/lib/python/multiprocessing/process.py", line 
> 258, in _bootstrap 
>         self.run() 
>       File 
> "/home/sage/sage-6.4.1/local/lib/python2.7/site-packages/sage/doctest/forker.py",
>  
> line 1839, in run 
>         task(self.options, self.outtmpfile, msgpipe, self.result_queue) 
>       File 
> "/home/sage/sage-6.4.1/local/lib/python2.7/site-packages/sage/doctest/forker.py",
>  
> line 2159, in __call__ 
>         result_queue.put(result, False) 
>       File 
> "/home/sage/sage-6.4.1/local/lib/python/multiprocessing/queues.py", line 
> 102, in put 
>         raise Full 
>     Full 
>         Bad exit: 1 
>
> The failing line in queues.py is doing something like acquiring a 
> semaphore: 
>
>         if not self._sem.acquire(block, timeout): 
>
> The failure occurs as well when running the tests on a single file 
> (thus without real need for multiprocessing). Steps to reproduce: 
>
>     > docker run -t -i sagemath/sage su - sage 
>     > cd sage-6.4.1/ 
>     > ./sage -t src/sage/interfaces/qsieve.py 
>
> Occasionally another test file fails similarly. There can also be some 
> minor unrelated failures in sagedev.py, but we are not worried about 
> those. 
>
> As a complement, here is a minimal file that triggers a systematic 
> failure: 
>
>     =====8<----------------------- bla.py 
>     r""" 
>         sage: from sage.interfaces.qsieve import qsieve 
>         sage: k = 19; n = next_prime(10^k)*next_prime(10^(k+1)) 
>         sage: v, t = qsieve(n, time=True)   # uses qsieve; optional - time 
>         sage: q = qsieve(next_prime(10^20)*next_prime(10^21), block=False) 
>     """ 
>     =====8<----------------------- 
>
> Any idea of what might go wrong? 
>
> Thanks! 
>
> Cheers, 
>                                 Nicolas 
> -- 
> Nicolas M. Thiéry "Isil" <nth...@users.sf.net <javascript:>> 
> http://Nicolas.Thiery.name/ 
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to