Comment 2 for bug 74759

Revision history for this message
David Cournapeau (david-ar) wrote : Re: [Bug 74759] Re: bzr 0.13 does not work without proxy without python-pycurl

vila wrote:
> There is two implementations handling the http protocol: pycurl and
> urllib.
>
> pycurl is an package distinct from bzr while urllib is pure python.
>
> If the DNS error was transient (as the error message implies), it may be
> that using pycurl was not related to the bug, but pycurl do DNS caching
> so that may help.
>
> Can you reproduce it ?
>
> If you can, please use bzr branch http+urllib://bazaar-
> vcs.org/bzr/bzr.0.13 to force the use of the urllib implementation and
> attach $HOME/.bzr.log and an ethereal dump.
>
> ** Changed in: bzr (upstream)
> Assignee: (unassigned) => vila
>
Ok, Here is my .bzr.log for the relevant part:

looking for plugins in /usr/lib/python2.4/site-packages/bzrlib/plugins
Plugin name __init__ already loaded
add plugin name launchpad
Plugin name __init__ already loaded
load plugin (None,
'/usr/lib/python2.4/site-packages/bzrlib/plugins/launchpad', ('', '', 5))
registered plugin command register-branch
loaded succesfully
looking for plugins in /home/david/.bazaar/plugins
add plugin name svn
load plugin (None, '/home/david/.bazaar/plugins/svn', ('', '', 5))
registered plugin command import-svn
loaded succesfully
encoding stdout as sys.stdout encoding 'UTF-8'
GET: [http://bazaar-vcs.org/bzr/bzr.0.13/.bzr/branch-format]
Traceback (most recent call last):
  File "/usr/lib/python2.4/site-packages/bzrlib/commands.py", line 626,
in run_bzr_catch_errors
    return run_bzr(argv)
  File "/usr/lib/python2.4/site-packages/bzrlib/commands.py", line 588,
in run_bzr
    ret = run(*run_argv)
  File "/usr/lib/python2.4/site-packages/bzrlib/commands.py", line 292,
in run_argv_aliases
    return self.run(**all_cmd_args)
  File "/usr/lib/python2.4/site-packages/bzrlib/builtins.py", line 718,
in run
    br_from = Branch.open(from_location)
  File "/usr/lib/python2.4/site-packages/bzrlib/branch.py", line 118, in
open
    control = bzrdir.BzrDir.open(base, _unsupported)
  File "/usr/lib/python2.4/site-packages/bzrlib/bzrdir.py", line 495, in
open
    return BzrDir.open_from_transport(t, _unsupported=_unsupported)
  File "/usr/lib/python2.4/site-packages/bzrlib/bzrdir.py", line 504, in
open_from_transport
    format = BzrDirFormat.find_format(transport)
  File "/usr/lib/python2.4/site-packages/bzrlib/bzrdir.py", line 1054,
in find_format
    return format.probe_transport(transport)
  File "/usr/lib/python2.4/site-packages/bzrlib/bzrdir.py", line 1064,
in probe_transport
    format_string = transport.get(".bzr/branch-format").read()
  File
"/usr/lib/python2.4/site-packages/bzrlib/transport/http/__init__.py",
line 226, in get
    code, response_file = self._get(relpath, None)
  File
"/usr/lib/python2.4/site-packages/bzrlib/transport/http/_urllib.py",
line 130, in _get
    response = self._perform(request)
  File
"/usr/lib/python2.4/site-packages/bzrlib/transport/http/_urllib.py",
line 102, in _perform
    response = self._opener.open(request)
  File "urllib2.py", line 358, in open
    response = self._open(req, data)
  File "urllib2.py", line 376, in _open
    '_open', req)
  File "urllib2.py", line 337, in _call_chain
    result = func(*args)
  File
"/usr/lib/python2.4/site-packages/bzrlib/transport/http/_urllib2_wrappers.py",
line 471, in http_open
    return self.do_open(HTTPConnection, request)
  File
"/usr/lib/python2.4/site-packages/bzrlib/transport/http/_urllib2_wrappers.py",
line 407, in do_open
    first_try)
  File
"/usr/lib/python2.4/site-packages/bzrlib/transport/http/_urllib2_wrappers.py",
line 316, in retry_or_raise
    orig_error=exc_val)
ConnectionError: Connection error: Couldn't resolve host
'bazaar-vcs.org' (-3, 'Temporary failure in name resolution')

What to you want me to do with ethereal exactly ?

I insist on my particular setup, because I don't think it is pretty
common (I have never seen it before on any lab/university I worked at):
any connection is done through a proxy, and there is NO DNS server. For
example, I cannot ping anything outside local network, etc... If a tool
has no proxy option or does take http_proxy into account, I am screwed,
because the name resolution cannot be done "from" my workstation.

cheers,

David