harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrew John Hughes <ahug...@redhat.com>
Subject Re: [classlib] linux (and freebsd) socket test failures
Date Mon, 07 Jun 2010 14:30:23 GMT
On 7 June 2010 11:19, Mark Hindess <mark.hindess@googlemail.com> wrote:
> In message <AANLkTinkw2R2rCO4v5Ycnn7Tvr54noY99e01Fr2Cjmh2@mail.gmail.com>,
> Andrew John Hughes writes:
>> On 7 June 2010 10:48, Mark Hindess <mark.hindess@googlemail.com> wrote:
>> >
>> > I recently started seeing quite a lot of socket test failures on
>> > my main Debian Linux machine.  It turns out that an upgrade of the
>> > netbase package included a new file:
>> >
>> >   /etc/sysctl.d/bindv6only.conf
>> >
>> > which sets the system configuration:
>> >
>> >   net.ipv6.bindv6only = 1
>> >
>> > which means that IPv6 bound sockets only accept IPv6 connections and
>> > not IPv4 connections (w/address mapping).  The expectation is that
>> > daemons wanting to accept both IPv6 and IPv4 connections bind twice.
>> >
>> > [snip]
>> >
>> > For the time being I've changed this back on my machine (by editing
>> > the above file and replacing the 1 with 0).  However, I wonder if
>> > we should be handling this in the classlib implementation.  If we
>> > don't then users will experience a change in behaviour unless they
>> > change the system default but changing the system default may have
>> > unintended consequences for other applications.
>> >
>> > I believe it is possible to set the IPV6_V6ONLY socket option to
>> > avoid the change in behaviour but for the moment, it looks like the
>> > RI is not doing this so I guess we shouldn't either?
>> FYI, this problem has also been found with OpenJDK and patched (at
>> least, in the Debian package so far).
>> http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2010-April/008866.html
> Andrew: Thanks.  (Sadly,) I avoid the openjdk community to avoid
> contamination but it is very helpful to know what decision they made.
> Much appreciated.

I can understand that.  Being on the Harmony list is about the most I
can do, being an active contributor to both GNU Classpath and

> I am not surprised.  It does seem like the right thing to do (from a
> principle of least surprise point-of-view).
> Perhaps we should fix it and potentially deviate from the RI behaviour
> (until they fix it assuming they will).  I wouldn't be surprised if the
> RI ended up with another java.net.prefer* option to allow the users the
> choice.

As I mentioned above, the OpenJDK binaries provided by Debian are
already fixed and it will also go into IcedTea as well, so except it
to be fixed in the main Java environment provided on GNU/Linux
distributions in the near future, if not already.

I assume the 'they' you refer to is Oracle.  Unfortunately, there's
little of a community about OpenJDK and it's still very much 'them'
(Oracle) and 'us' (external users of OpenJDK).  As the OpenJDK mail
thread indicates, there has been a bug in the Oracle bug databse for
as for a while and they've basically ignored it.  We'll offer the fix
to the upstream OpenJDK project as well, and it's up to them whether
they want to accept it or not.  As GNU/Linux distributions now ship
IcedTea (patched-up and extended OpenJDK) as their main Java
environment, it doesn't really matter whether they or they don't from
the distro point of view.  There's no reason to use the proprietary
Oracle JDK in preference to the distro-provided build any more.

> Regards,
>  Mark.

Andrew :-)

Free Java Software Engineer
Red Hat, Inc. (http://www.redhat.com)

Support Free Java!
Contribute to GNU Classpath and the OpenJDK

PGP Key: 94EFD9D8 (http://subkeys.pgp.net)
Fingerprint: F8EF F1EA 401E 2E60 15FA  7927 142C 2591 94EF D9D8

View raw message