[Bioc-devel] curious bug: maybe the R httpd help server interferes with XMLRPC?
Henrik Bengtsson
hb at stat.berkeley.edu
Wed Oct 27 21:52:42 CEST 2010
On Wed, Oct 27, 2010 at 12:06 PM, Dan Tenenbaum <dtenenba at fhcrc.org> wrote:
> On Wed, Oct 27, 2010 at 11:57 AM, Paul Shannon
> <pshannon at systemsbiology.org>wrote:
>
>> A very odd bug was reported to me this morning. Maybe somebody on this
>> list will have some insight?
>>
>> My hypothesis is far-fetched, but it seems to fit the evidence: in some
>> rare circumstances, messages to or from the R httpd help server get mingled
>> in with the XMLRPC transmissions upon which RCytoscape depends. The XMLRPC
>> package, or the XML package upon which it depends, understandably balks when
>> sent <font> <br> and <p>
>>
>>
>
> Paul,
>
> If you set:
> options("help_type"="html")
> and then search for help for a function, like so:
> ?ls
> It will launch a page in a browser window and you can see what port the help
> server is on.
> When I do this, I get:
> http://127.0.0.1:19535/library/base/html/ls.html
>
> Then I quit R and do it again, and get:
> http://127.0.0.1:23172/library/base/html/ls.html
>
> So it appears that R chooses a new (random?) port each time.
Correct. This is in order to make it possible for multiple R sessions
to have their own help system running independently of the others.
There is an R options called 'help.ports' which allows you to specify
the set of ports you want it to randomize from. If you specify a
single port number, you'll get a deterministic port, e.g.
options(help.ports=2120);
I use this, or more precisely, I set the port number to reflect the R
version running but adding the following to my ~\.Rprofile startup
script:
local({
port <- sum(c(1e3,10)*as.double(R.Version()[c("major", "minor")]));
options(help.ports=port);
});
(local({...}) is used in order not to clutter up/overwrite the global
environment with temporary variable 'port').
The option 'help.ports' is not document under help("options") but
under help("startDynamicHelp", package="tools"). I drop a note to
R-devel.
/Henrik
>
> It is possible that R could be trying to use the ports that RCytoscape wants
> to use.
>
> Can you ask the user to quit R and try again and see if the conflict recurs?
> Dan
>
> [[alternative HTML version deleted]]
>
> _______________________________________________
> Bioc-devel at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/bioc-devel
>
More information about the Bioc-devel
mailing list