[Bioperl-l] Problem with : EUtilities - Proxy

Chris Fields cjfields at uiuc.edu
Wed Dec 20 11:10:48 EST 2006

Just to clarify: does it work it you don't have any proxy env. settings?


From: Anthony Ferrari [mailto:ferraria at gmail.com] 
Sent: Wednesday, December 20, 2006 9:41 AM
To: Chris Fields
Cc: bioperl-l List; Torsten Seemann
Subject: Re: [Bioperl-l] Problem with : EUtilities - Proxy

Defining a "no_proxy" environment variable in my '.bashrc' file solved my
problem. I set it to "localhost".

It indeed corresponds to the line...       [    ...if (@{
$self->{'no_proxy'} }) ...    ]   (I guess!) 

I really don't know why we are compelled to do this, but let's say that's
the way it is.

It works now !

Thanks a lot.


On 20/12/06, Chris Fields <cjfields at uiuc.edu> wrote: 

On Dec 20, 2006, at 5:04 AM, Anthony Ferrari wrote:

> You might check out this bug report, which relates directly to your
> issue:
> http://bugzilla.open-bio.org/show_bug.cgi?id=2109
> After I worked out the proxy issue Torsten got it working.  Let me
> know if this doesn't help or fix the problem.
> chris
> I carefully read this bug but that doesn't help because this has
> already been modified in the now given GenericWebDBI.pm
> So my problem does not come from a deep recursion loop.
> As Torsten did, I tried the command  " BIOPERLDEBUG=1 perl -I. -w t/
> EUtilities.t " to see what's really happening.
> And actually, all tests are skipped because of the same message error 
> -> "Can't use an undefined value as an ARRAY reference at /usr/lib/
> perl5/site_perl/5.8.7/LWP/UserAgent.pm line 779."
> ***
> I tried the same command with the modified LWP::UserAgent package 
> (which means I comment the line 779 and the corresponding '}') and
> all 453 tests passed.
> But not always. I made the tests several times and  it often
> failed. And always on a test called "eXXX->cookie->cookie() query 
> key" (ending with query key). In those cases, I got back a html
> message indicating that the error was thrown by the internal sever
> of NCBI. So I guess that sometimes it is just NCBI server fault 
> (internal problem), and BioPerl is not implied..
> But once more, I comment a line from a basic package so it is a bit
> hazardous.
> ***
> tony - a little bit lost.

I'm cc'ing Torsten as he has a bit more experience with proxies. 

EUtilities is set up to check for an env. proxy and also take a set
proxy with $agent->proxy() (see GenericWebDBI POD).  It would be easy
to say this was a bug in LWP, but I think the problem is that
something is undefined ( i.e. an env. variable), or username/password.

>From the bug report, Torsten set his proxy variables using the

"Note: I am behind an _authenticating_ proxy. 
My $http_proxy and $HTTP_PROXY are both set to

Note the lowercase for $http_proxy, which can make a difference. 
After the recursion fix, I'm assuming he made no changes to the env.
settings, and according to the bug everything was fine (is that
correct Tortsen?).

Also LWP::UserAgent has this:

"Load proxy settings from *_proxy environment variables. You might
specify proxies like this (sh-syntax):

       wais_proxy= http://proxy.my.place/
       export gopher_proxy wais_proxy no_proxy

     csh or tcsh users should use the setenv command to define these 
environment variables.

On systems with case insensitive environment variables there exists a
name clash between the CGI environment variables and the HTTP_PROXY
environment variable normally picked up by env_proxy(). Because of 
this HTTP_PROXY is not honored for CGI scripts. The CGI_HTTP_PROXY
environment variable can be used instead."


More information about the Bioperl-l mailing list