I'm not really sure. This is the first I've heard of this issue. The
call actually comes from paramiko, a Python module we use for the SSH
support. Might be worth seeing if other people outside Review Board
have hit that issue.

Christian

On Wednesday, October 13, 2010, Rob <rrom...@gmail.com> wrote:
> Starting in ReviewBoard 1.5 (Python 2.5.1 linux64 compiled
> mod_python.so)  the changes to use Paramiko result in this exception
> when posting a review changelist (from Perforce) via the commandline
> post-review tool.
>
> HTTP POSTing to http://sw-web3.altera.com/review/api/json/accounts/login/:
> {'username': 'rromano', 'password': '**************'}
>
> Traceback (most recent call last):
>
>   File "/tools/python/2.5.1/linux64/lib/python2.5/site-packages/
> mod_python/importer.py", line 1537, in HandlerDispatch
>     default=default_handler, arg=req, silent=hlist.silent)
>
>   File "/tools/python/2.5.1/linux64/lib/python2.5/site-packages/
> mod_python/importer.py", line 1229, in _process_target
>     result = _execute_target(config, req, object, arg)
>
>   File "/tools/python/2.5.1/linux64/lib/python2.5/site-packages/
> mod_python/importer.py", line 1128, in _execute_target
>     result = object(arg)
>
>   File "/tools/django/trunk/1.2.3/django/core/handlers/modpython.py",
> line 228, in handler
>     return ModPythonHandler()(req)
>
>   File "/tools/django/trunk/1.2.3/django/core/handlers/modpython.py",
> line 191, in __call__
>     self.load_middleware()
>
>   File "/tools/django/trunk/1.2.3/django/core/handlers/base.py", line
> 40, in load_middleware
>     mod = import_module(mw_module)
>
>   File "/tools/django/trunk/1.2.3/django/utils/importlib.py", line 35,
> in import_module
>     __import__(name)
>
>   File "/usr/local/altera/django/reviewboard/admin/middleware.py",
> line 13, in &lt;module&gt;
>     from reviewboard.webapi.json import service_not_configured
>
>   File "/usr/local/altera/django/reviewboard/webapi/json.py", line 29,
> in &lt;module&gt;
>     from reviewboard.diffviewer.forms import EmptyDiffError
>
>   File "/usr/local/altera/django/reviewboard/diffviewer/forms.py",
> line 7, in &lt;module&gt;
>     from reviewboard.diffviewer.diffutils import
> DEFAULT_DIFF_COMPAT_VERSION
>
>   File "/usr/local/altera/django/reviewboard/diffviewer/diffutils.py",
> line 29, in &lt;module&gt;
>     from reviewboard.scmtools.core import PRE_CREATION, HEAD
>
>   File "/usr/local/altera/django/reviewboard/scmtools/core.py", line
> 5, in &lt;module&gt;
>     from reviewboard.scmtools import sshutils
>
>   File "/usr/local/altera/django/reviewboard/scmtools/sshutils.py",
> line 5, in &lt;module&gt;
>     import paramiko
>
>   File "/usr/local/altera/django/reviewboard/paramiko/__init__.py",
> line 69, in &lt;module&gt;
>     from transport import randpool, SecurityOptions, Transport
>
>   File "/usr/local/altera/django/reviewboard/paramiko/transport.py",
> line 32, in &lt;module&gt;
>     from paramiko import util
>
>   File "/usr/local/altera/django/reviewboard/paramiko/util.py", line
> 32, in &lt;module&gt;
>     from paramiko.common import *
>
>   File "/usr/local/altera/django/reviewboard/paramiko/common.py", line
> 98, in &lt;module&gt;
>     from rng import StrongLockingRandomPool
>
>   File "/usr/local/altera/django/reviewboard/paramiko/rng.py", line
> 44, in &lt;module&gt;
>     if ((platform is not None and platform.system().lower() ==
> 'windows') or
>
>   File "/tools/python/2.5.1/linux64/lib/python2.5/platform.py", line
> 1042, in system
>     return uname()[0]
>
>   File "/tools/python/2.5.1/linux64/lib/python2.5/platform.py", line
> 1014, in uname
>     processor = _syscmd_uname('-p','')
>
>   File "/tools/python/2.5.1/linux64/lib/python2.5/platform.py", line
> 801, in _syscmd_uname
>     rc = f.close()
>
> IOError: [Errno 10] No child processes
>
>
> This looks very fundamental. Python's platform.uname() fn does a
> subprocess call to `uname` and it's not liked.
>
> Incidentally, under ReviewBoard 1.0.x, I had similar issues in
> ReviewBoard's own code using subprocess.POpen to extract diffs from
> `p4`. I simply changed the code to use os.system() and it worked fine
> thereafter.
>
> Are there known issues with the subprocess.POpen module when running
> under Apache?
>
> --
> Want to help the Review Board project? Donate today at 
> http://www.reviewboard.org/donate/
> Happy user? Let us know at http://www.reviewboard.org/users/
> -~----------~----~----~----~------~----~------~--~---
> To unsubscribe from this group, send email to 
> reviewboard+unsubscr...@googlegroups.com
> For more options, visit this group at 
> http://groups.google.com/group/reviewboard?hl=en

-- 
-- 
Christian Hammond - chip...@chipx86.com
Review Board - http://www.reviewboard.org
VMware, Inc. - http://www.vmware.com

-- 
Want to help the Review Board project? Donate today at 
http://www.reviewboard.org/donate/
Happy user? Let us know at http://www.reviewboard.org/users/
-~----------~----~----~----~------~----~------~--~---
To unsubscribe from this group, send email to 
reviewboard+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/reviewboard?hl=en

Reply via email to