2010-01-23 15:14:26 |
Ihor Kaharlichenko |
bug |
|
|
added bug |
2010-01-23 15:14:26 |
Ihor Kaharlichenko |
attachment added |
|
Change python version from 2.5 to 2.6 http://launchpadlibrarian.net/38303290/python_version_fix.patch |
|
2010-01-24 08:31:46 |
Ihor Kaharlichenko |
bug task added |
|
distcc (Ubuntu) |
|
2010-01-24 08:32:47 |
Ihor Kaharlichenko |
nominated for series |
|
Ubuntu Karmic |
|
2010-03-23 00:30:15 |
Brian Murray |
tags |
|
patch |
|
2010-05-05 05:48:21 |
Michael Casadevall |
tags |
patch |
patch-needswork |
|
2010-05-05 05:48:26 |
Michael Casadevall |
bug task added |
|
distcc (Ubuntu Karmic) |
|
2010-05-05 05:48:47 |
Michael Casadevall |
nominated for series |
|
Ubuntu Lucid |
|
2010-05-05 05:48:47 |
Michael Casadevall |
bug task added |
|
distcc (Ubuntu Lucid) |
|
2010-05-05 05:48:47 |
Michael Casadevall |
nominated for series |
|
Ubuntu Maverick |
|
2010-05-05 05:48:47 |
Michael Casadevall |
bug task added |
|
distcc (Ubuntu Maverick) |
|
2010-05-05 05:53:13 |
Michael Casadevall |
distcc (Ubuntu Lucid): status |
New |
Confirmed |
|
2010-05-05 05:53:21 |
Michael Casadevall |
distcc (Ubuntu Karmic): importance |
Undecided |
Medium |
|
2010-05-05 05:53:25 |
Michael Casadevall |
distcc (Ubuntu Maverick): importance |
Undecided |
Medium |
|
2010-05-05 05:53:29 |
Michael Casadevall |
distcc (Ubuntu Lucid): importance |
Undecided |
Medium |
|
2010-05-05 05:53:35 |
Michael Casadevall |
distcc (Ubuntu Maverick): status |
New |
Confirmed |
|
2010-05-05 05:55:26 |
Michael Casadevall |
distcc (Ubuntu Karmic): status |
New |
Triaged |
|
2010-05-05 05:55:31 |
Michael Casadevall |
distcc (Ubuntu Lucid): status |
Confirmed |
Triaged |
|
2010-05-05 05:55:35 |
Michael Casadevall |
distcc (Ubuntu Maverick): status |
Confirmed |
Triaged |
|
2010-05-05 05:56:10 |
Emmet Hikory |
removed subscriber Ubuntu Review Team |
|
|
|
2010-06-13 23:13:48 |
Joel Ebel |
tags |
patch-needswork |
glucid patch-needswork |
|
2010-08-26 18:49:41 |
papukaija |
tags |
glucid patch-needswork |
glucid karmic lucid maverick patch-needswork |
|
2011-01-21 22:22:25 |
Tv |
bug |
|
|
added subscriber Tv |
2011-03-14 10:02:57 |
marcobra (Marco Braida) |
bug |
|
|
added subscriber marcobra (Marco Braida) |
2011-03-14 10:03:40 |
marcobra (Marco Braida) |
tags |
glucid karmic lucid maverick patch-needswork |
glucid karmic lucid maverick natty patch-needswork |
|
2011-04-19 14:25:34 |
Dustin Kirkland |
nominated for series |
|
Ubuntu Natty |
|
2011-04-19 14:25:34 |
Dustin Kirkland |
bug task added |
|
distcc (Ubuntu Natty) |
|
2011-04-19 14:25:44 |
Dustin Kirkland |
distcc (Ubuntu Natty): status |
Triaged |
In Progress |
|
2011-04-19 14:25:46 |
Dustin Kirkland |
distcc (Ubuntu Natty): assignee |
|
Dustin Kirkland (kirkland) |
|
2011-04-19 14:26:08 |
Dustin Kirkland |
bug |
|
|
added subscriber Zaid Al Hamami |
2011-04-19 14:30:11 |
Dustin Kirkland |
attachment added |
|
511585.debdiff https://bugs.launchpad.net/ubuntu/+source/distcc/+bug/511585/+attachment/2067783/+files/511585.debdiff |
|
2011-04-19 14:30:31 |
Dustin Kirkland |
distcc (Ubuntu Natty): status |
In Progress |
Fix Committed |
|
2011-04-19 14:31:22 |
Dustin Kirkland |
distcc (Ubuntu Karmic): status |
Triaged |
Won't Fix |
|
2011-04-19 14:45:26 |
Launchpad Janitor |
distcc (Ubuntu Natty): status |
Fix Committed |
Fix Released |
|
2011-04-20 20:59:14 |
Launchpad Janitor |
branch linked |
|
lp:ubuntu/distcc |
|
2012-05-03 10:12:15 |
JC Hulce |
distcc (Ubuntu Maverick): status |
Triaged |
Invalid |
|
2012-06-14 03:40:14 |
Daniel Hartwig |
distcc: status |
New |
Invalid |
|
2012-11-10 13:18:30 |
Daniel Hartwig |
description |
I tried to start distcc-pump inclusion server and got the following:
$ pump --startup
__________Using distcc-pump from /usr/bin
__________Using 3 distcc servers, of which only 2 support(s) pump mode
/usr/bin/python: can't open file '/usr/lib/pymodules/python2.5/include_server/include_server.py': [Errno 2] No such file or directory
__________Expected a socket at '/tmp/distcc-pump.I3DsMc/socket'
__________Could not start distcc-pump include server
The reason is simple: since Karmic python2.6 is used as default version and thus all the packages are built for python2.6 but not python2.5. |
[Impact]
Users can not use distcc-pump due to problems with python version hardcoding. Subsequent “fixes” to bump the version only fail later.
Instead of constantly hardcoding newer python versions, distcc/3.1-4.2 includes a fix where the default version is detected in debian/rules and passed along to the build configure as “/usr/bin/pythonN.M”. This is intimately tied to the fix for bug #767066, which is also required for distcc-pump mode to continue working.
[Test Case]
* Install distcc and distcc-pump packages:
$ sudo apt-get install -y distcc distcc-pump
…
* Start a local distcc server and setup environment:
$ distccd --daemon --allow 127.0.1.1
$ export DISTCC_HOSTS=localhost/4,cpp
* Attempt to start distcc-pump, observe the the include_server module is not found:
# on precise, the command is “distcc-pump --startup”
$ pump --startup
__________Using distcc-pump from /usr/bin
__________Using 3 distcc servers, of which only 2 support(s) pump mode
/usr/bin/python: can't open file '/usr/lib/pymodules/python2.5/include_server/include_server.py': [Errno 2] No such file or directory
__________Expected a socket at '/tmp/distcc-pump.I3DsMc/socket'
__________Could not start distcc-pump include server
[Regression Potential]
Although this will still require a rebuild when the default version changes, it will not require any further modifications to the distcc packaging.
The changes to fix this and bug #767066 are small, although the fix for the later requires to change the installed path of the python modules to a private path. These modules were previously installed in a public path but have never been usable to create and run custom include_servers. It is extremely unlikely that any user was making use of them, if someone was they will have to update their code to locate these modules in the private path. |
|
2012-11-10 13:41:42 |
Daniel Hartwig |
description |
[Impact]
Users can not use distcc-pump due to problems with python version hardcoding. Subsequent “fixes” to bump the version only fail later.
Instead of constantly hardcoding newer python versions, distcc/3.1-4.2 includes a fix where the default version is detected in debian/rules and passed along to the build configure as “/usr/bin/pythonN.M”. This is intimately tied to the fix for bug #767066, which is also required for distcc-pump mode to continue working.
[Test Case]
* Install distcc and distcc-pump packages:
$ sudo apt-get install -y distcc distcc-pump
…
* Start a local distcc server and setup environment:
$ distccd --daemon --allow 127.0.1.1
$ export DISTCC_HOSTS=localhost/4,cpp
* Attempt to start distcc-pump, observe the the include_server module is not found:
# on precise, the command is “distcc-pump --startup”
$ pump --startup
__________Using distcc-pump from /usr/bin
__________Using 3 distcc servers, of which only 2 support(s) pump mode
/usr/bin/python: can't open file '/usr/lib/pymodules/python2.5/include_server/include_server.py': [Errno 2] No such file or directory
__________Expected a socket at '/tmp/distcc-pump.I3DsMc/socket'
__________Could not start distcc-pump include server
[Regression Potential]
Although this will still require a rebuild when the default version changes, it will not require any further modifications to the distcc packaging.
The changes to fix this and bug #767066 are small, although the fix for the later requires to change the installed path of the python modules to a private path. These modules were previously installed in a public path but have never been usable to create and run custom include_servers. It is extremely unlikely that any user was making use of them, if someone was they will have to update their code to locate these modules in the private path. |
[Impact]
Using distcc-pump is a significant speed gain with a large compile farm.
Ubuntu users can not use distcc-pump due to problems with python version and module path hardcoding. The upstream build system and Ubuntu packaging attempt various hacks to detect the python version and installed location of include_server modules. These have proved quite unreliable.
Subsequent “fixes” to bump the version only fail later, or sometimes don't work at all (see comments on bug #767066).
Instead of constantly hardcoding newer python versions, distcc/3.1-4.2 includes a fix where the default version is detected in debian/rules and passed along to the build configure as “/usr/bin/pythonN.M”. Further, it also installs the modules to a fixed, private path and bypasses the problems with detecting the installed path during the package build process.
[Test Case]
* Install distcc and distcc-pump packages:
$ sudo apt-get install -y distcc distcc-pump
…
* Start a local distcc server and setup environment:
$ distccd --daemon --allow 127.0.1.1
$ export DISTCC_HOSTS=localhost/4,cpp
* Attempt to start distcc-pump, observe the the include_server module is not found:
# on lucid:
$ pump --startup
__________Using distcc-pump from /usr/bin
__________Using 3 distcc servers, of which only 2 support(s) pump mode
/usr/bin/python: can't open file '/usr/lib/pymodules/python2.5/include_server/include_server.py': [Errno 2] No such file or directory
__________Expected a socket at '/tmp/distcc-pump.I3DsMc/socket'
__________Could not start distcc-pump include server
# on precise (the command and error message are different):
$ distcc-pump --startup
__________Using 2 distcc servers, of which only 1 support(s) pump mode
/usr/bin/distcc-pump: 538: /usr/bin/find_c_extension.sh: not found
/usr/bin/python: can't open file '/usr/bin/include_server/include_server.py': [Errno 2] No such file or directory
__________Expected a socket at '/tmp/distcc-pump.Hlfnoz/socket'
__________Could not start distcc-pump include server
[Regression Potential]
Although this will still require a rebuild when the default version changes, it will not require any further modifications to the distcc packaging.
Small patch.
The python modules for the include_server were previously installed to a public path. They are now moved to a private path. This is not expected to impact any users, because these modules have never been usable by anything other than the official distcc-pump script. In the extra rare situation that a user has developed some custom program using them, they will have to add the new path (which is fixed and well-defined) to their python load path.
The proposed fix has been in sid since March 2012, and quantal since August. No regressions have been reported. |
|
2012-11-10 14:01:47 |
Daniel Hartwig |
attachment added |
|
python-fix.diff https://bugs.launchpad.net/ubuntu/+source/distcc/+bug/511585/+attachment/3429478/+files/python-fix.diff |
|
2012-12-11 00:13:18 |
Rudd-O |
tags |
glucid karmic lucid maverick natty patch-needswork |
glucid karmic lucid maverick natty patch-needswork precise |
|
2015-06-17 11:11:08 |
Rolf Leggewie |
distcc (Ubuntu Lucid): status |
Triaged |
Won't Fix |
|