Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 642202 - dev-python/elasticsearch-py-6.0.0: FileExistsError: [Errno 17] File exists: '/var/tmp/portage/dev-python/elasticsearch-py-6.0.0/work/elasticsearch-py-6.0.0/docs/_build/doctrees'
Summary: dev-python/elasticsearch-py-6.0.0: FileExistsError: [Errno 17] File exists: '...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Tomáš Mózes
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-12-25 12:55 UTC by Andrey Grozin
Modified: 2018-05-02 09:48 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andrey Grozin gentoo-dev 2017-12-25 12:55:54 UTC
With USE=doc

make -j8 man html 
sphinx-build -b man -d _build/doctrees   . _build/man
sphinx-build -b html -d _build/doctrees   . _build/html
Running Sphinx v1.6.3
Running Sphinx v1.6.3
making output directory...
making output directory...
loading pickled environment... not yet created
building [mo]: targets for 0 po files that are out of date
building [man]: all manpages
updating environment: 7 added, 0 changed, 0 removed
reading sources... [ 14%] Changelog

Exception occurred:
  File "/usr/lib64/python3.6/os.py", line 220, in makedirs
    mkdir(name, mode)
FileExistsError: [Errno 17] File exists: '/var/tmp/portage/dev-python/elasticsearch-py-6.0.0/work/elasticsearch-py-6.0.0/docs/_build/doctrees'
The full traceback has been saved in /var/tmp/portage/dev-python/elasticsearch-py-6.0.0/temp/sphinx-err-3kzgesh9.log, if you want to report the issue to the developers.
Please also report this if it was a user error, so that a better error message can be provided next time.
A bug report can be filed in the tracker at <https://github.com/sphinx-doc/sphinx/issues>. Thanks!
make: *** [Makefile:53: html] Error 1
make: *** Waiting for unfinished jobs....
Comment 1 Larry the Git Cow gentoo-dev 2018-01-03 19:02:28 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ba1ad5e2d4d69f9737a56d51658b33524f1e6706

commit ba1ad5e2d4d69f9737a56d51658b33524f1e6706
Author:     Tomas Mozes <hydrapolic@gmail.com>
AuthorDate: 2018-01-03 16:16:52 +0000
Commit:     Michał Górny <mgorny@gentoo.org>
CommitDate: 2018-01-03 19:01:48 +0000

    dev-python/elasticsearch-py: build docs in single thread
    
    Closes: https://bugs.gentoo.org/642202
    Closes: https://github.com/gentoo/gentoo/pull/6733
    Package-Manager: Portage-2.3.18, Repoman-2.3.6

 dev-python/elasticsearch-py/elasticsearch-py-6.0.0.ebuild | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)
Comment 2 Tomáš Mózes 2018-01-04 05:36:38 UTC
Thank you Andrey for reporting and Michał for merging the PR.
Comment 3 Tomáš Mózes 2018-01-04 07:20:50 UTC
Reported upstream:
https://github.com/elastic/elasticsearch-py/issues/698

However I'm not sure whether it's not a sphinx problem.
Comment 4 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2018-01-04 08:19:29 UTC
Sphinx is full of race conditions. I've recently fixed some of them that involved creating parent directories for output. Sadly, fixing parallel use of the same doctrees directory is much harder.

The upstream issue is:

https://github.com/sphinx-doc/sphinx/issues/2946

Long story short, the current fix is to either force -j1 for sphinx calls, or make them use independent doctrees. The former means less CPU use (since the following sphinx calls reuse doctrees created by earlier), the latter is usually faster on multicore CPUs. If the app uses different sources for the calls though, you really want separate doctrees.
Comment 5 Tomáš Mózes 2018-01-04 09:33:29 UTC
(In reply to Michał Górny from comment #4)
> Sphinx is full of race conditions. I've recently fixed some of them that
> involved creating parent directories for output. Sadly, fixing parallel use
> of the same doctrees directory is much harder.
> 
> The upstream issue is:
> 
> https://github.com/sphinx-doc/sphinx/issues/2946
> 
> Long story short, the current fix is to either force -j1 for sphinx calls,
> or make them use independent doctrees. The former means less CPU use (since
> the following sphinx calls reuse doctrees created by earlier), the latter is
> usually faster on multicore CPUs. If the app uses different sources for the
> calls though, you really want separate doctrees.

Thanks for clarification, I'll leave it to -j1 as I don't think it's a huge problem at the moment. I suppose not even everybody builds those docs.