Summary: | dev-python/urlgrabber-3.9.1 failed | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | David Abbott <dabbott> |
Component: | Current packages | Assignee: | Ioannis Aslanidis (RETIRED) <deathwing00> |
Status: | RESOLVED INVALID | ||
Severity: | normal | CC: | python, sping |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
dev-python/urlgrabber-3.9.1/temp/build.log
grabber.py.diff sslfactory.py |
Description
David Abbott (RETIRED)
2010-04-10 00:06:53 UTC
Created attachment 227189 [details]
dev-python/urlgrabber-3.9.1/temp/build.log
Interestingly the segfault seems to happen at the very end of the compile phase: changing mode of build/scripts-2.6/urlgrabber from 644 to 755 [YOUR SEGFAULT HERE] >>> Source compiled. Though my setup admittedly differs slightly I cannot reproduce this. Could you check for us if it still happens after updating to Python 2.6.5-r2 and after that with Bash updated to 4.1_p7? (I'm not sure from the output it's Bash or python segfaulting for you.) Thank you! creating build/scripts-2.6 copying and adjusting scripts/urlgrabber -> build/scripts-2.6 changing mode of build/scripts-2.6/urlgrabber from 644 to 755 /var/tmp/portage/dev-python/urlgrabber-3.9.1/temp/environment: line 971: 10306 Segmentation fault "$(PYTHON)" setup.py "${DISTUTILS_GLOBAL_OPTIONS[@]}" build "$@" * ERROR: dev-python/urlgrabber-3.9.1 failed: * Building failed * * Call stack: * ebuild.sh, line 48: Called src_compile * environment, line 3267: Called distutils_src_compile * environment, line 980: Called die * The specific snippet of code: * "$(PYTHON)" setup.py "${DISTUTILS_GLOBAL_OPTIONS[@]}" build "$@" || die "Building failed"; * * If you need support, post the output of 'emerge --info =dev-python/urlgrabber-3.9.1', * the complete build log and the output of 'emerge -pqv =dev-python/urlgrabber-3.9.1'. * The complete build log is located at '/var/tmp/portage/dev-python/urlgrabber-3.9.1/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/dev-python/urlgrabber-3.9.1/temp/environment'. * S: '/var/tmp/portage/dev-python/urlgrabber-3.9.1/work/urlgrabber-3.9.1' >>> Failed to emerge dev-python/urlgrabber-3.9.1, Log file: >>> '/var/tmp/portage/dev-python/urlgrabber-3.9.1/temp/build.log' opteron ~ # emerge --info Portage 2.2_rc67 (default/linux/amd64/10.0/desktop/gnome, gcc-4.4.4, glibc-2.11.2-r0, 2.6.33-gentoo-r1 x86_64) ================================================================= System uname: Linux-2.6.33-gentoo-r1-x86_64-Dual-Core_AMD_Opteron-tm-_Processor_1220_SE-with-gentoo-2.0.1 Timestamp of tree: Sat, 26 Jun 2010 00:00:22 +0000 ccache version 2.4 [enabled] app-shells/bash: 4.1_p7 dev-java/java-config: 2.1.11 dev-lang/python: 2.6.5-r2, 3.1.2-r3 3.1.0 installs fine changing mode of build/scripts-2.6/urlgrabber from 644 to 755 >>> Source compiled. >>> Test phase [not enabled]: dev-python/urlgrabber-3.1.0 >>> Install urlgrabber-3.1.0 into /var/tmp/portage/dev-python/urlgrabber-3.1.0/image/ category dev-python python2.6 setup.py install --root=/var/tmp/portage/dev-python/urlgrabber-3.1.0/image/ --no-compile running install If I manually download and run setup.py on 3.1.0 and 3.9.1 opteron src # cd urlgrabber-3.1.0/ opteron urlgrabber-3.1.0 # python setup.py usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...] or: setup.py --help [cmd1 cmd2 ...] or: setup.py --help-commands or: setup.py cmd --help error: no commands supplied opteron urlgrabber-3.1.0 # cd .. opteron src # cd urlgrabber-3.9.1/ opteron urlgrabber-3.9.1 # python setup.py usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...] or: setup.py --help [cmd1 cmd2 ...] or: setup.py --help-commands or: setup.py cmd --help error: no commands supplied Segmentation fault reinstalled dev-python/setuptools-0.6.13 and dev-lang/python-2.6.5-r2 Please check exactly which commit causes this problem. http://yum.baseurl.org/gitweb?p=urlgrabber.git;a=summary Created attachment 236657 [details]
grabber.py.diff
If I add sslfactory.py and replace grabber.py from 3.1.0 then 3.9.1 does not Segmentation fault
Created attachment 236659 [details]
sslfactory.py
(In reply to comment #7) This patch reverts many bug fixes and cannot be applied. > This patch reverts many bug fixes and cannot be applied.
Any ideas how to trace the segfault down further, then?
(In reply to comment #10) > > This patch reverts many bug fixes and cannot be applied. > > Any ideas how to trace the segfault down further, then? Separately check each commit in git repository of urlgrabber. OK, I uses sping's suggestion and used git bisect and found the commit; http://yum.baseurl.org/gitweb?p=urlgrabber.git;a=commit;h=07074e08a000b0de133cdbb4c4dab6244eae0323 Ok I ran it again and here is the output; git bisect bad 79e1c58d08df12d8e31898e56c24ec38bb9ef71c is the first bad commit commit 79e1c58d08df12d8e31898e56c24ec38bb9ef71c Author: Seth Vidal <skvidal@fedoraproject.org> Date: Tue Jul 28 17:12:07 2009 -0400 implement PyCurlFileObject. This makes the default and forklifts all the code to pycurl. This is not finished but is functional for a significant number of the tests. things known to be broken: - proxies - http POST - non-header-based byte-ranges - certain types of read operations when downloading a file to memory instead of to a filename :040000 040000 ce6e8dfc1c5b1c20d993c228cb9e465a0c6c6e91 3d796018569bbe23cbdf9eca2706668e8b0404d5 M test :040000 040000 5f8111a7965938781d17acf4007338e5fdc3b713 e8544716fc5ccc3241b900690ad69ef7dd58e94d M urlgrabber I tested after each run of git bisect and marked either good or bad. Does the following command print anything? python2.6 -c 'import pycurl; _curl_cache = pycurl.Curl()' (In reply to comment #14) > Does the following command print anything? > python2.6 -c 'import pycurl; _curl_cache = pycurl.Curl()' > quit python2.6 -c 'import pycurl; _curl_cache = pycurl.Curl()' Segmentation fault from ipython In [1]: import pycurl; _curl_cache = pycurl.Curl() In [2]: OK, I reinstalled dev-python/pycurl-7.19.0 and it is fixed so I will close as invalid as it was a problem with my install, thanks :) |