[
https://issues.apache.org/jira/browse/HADOOP-12122?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14951456#comment-14951456
]
Nemanja Matkovic commented on HADOOP-12122:
-------------------------------------------
[~eclark] - These failures look to be due to somewhat bonkers state of test
infrastructure. Have you ever seen these kinds of issues in Jenkins/QAbot?
For start difference between patch HADOOP-12122-HADOOP-11890.4.patch and patch
HADOOP-12122-HADOOP-11890.5.patch is whitespace only, but test runs show for
4.patch build break and for 5.patch no build break in hadoop-hdfs.
Both of these patches are compiling cleanly on my box (I went as far as to
clean up maven repo and sync new client to make sure)
Whats more looking at test failures for hadoop-hdfs in 5.patch run build is
corrupted as one of the failures should have been caught by compiler:
java.lang.NoSuchMethodError:
org.apache.hadoop.net.NetUtils.getSocketAddressString(Ljava/net/InetSocketAddress;)Ljava/lang/String;
This is exactly the signature of method added with base patch (not even current
patch)!
I looked at other failures as well and all point to ridiculous/impossible
issues, so I ran all tests locally using test-patch.sh both testing this patch
and on base build (before any of IPv6 patches were applied) and things are
exactly the same.
Give this and the fact that original patch posted by [~nkedel] passed all tests
in trunk I think we can proceed with committing this patch to HADOOP-11890
branch now.
What is your take on it?
I will start looking into indexOf and split calls in the meantime as separate
patch (if there is any work needed will create task then to track it).
> Fix Hadoop should avoid unsafe split and append on fields that might be IPv6
> literals
> -------------------------------------------------------------------------------------
>
> Key: HADOOP-12122
> URL: https://issues.apache.org/jira/browse/HADOOP-12122
> Project: Hadoop Common
> Issue Type: Sub-task
> Affects Versions: HADOOP-11890
> Reporter: Nate Edel
> Assignee: Nemanja Matkovic
> Attachments: HADOOP-12122-HADOOP-11890.0.patch,
> HADOOP-12122-HADOOP-11890.3.patch, HADOOP-12122-HADOOP-11890.4.patch,
> HADOOP-12122-HADOOP-11890.5.patch, HADOOP-12122-HADOOP-12122.2.patch,
> HADOOP-12122-HADOOP-12122.3.patch, HADOOP-12122.0.patch,
> lets_blow_up_a_lot_of_tests.patch
>
>
> There are a fairly extensive number of locations found via code inspection
> which use unsafe methods of handling addresses in a dual-stack or IPv6-only
> world:
> - splits on the first ":" assuming that delimits a host from a port
> - produces a host port pair by appending :port blindly (Java prefers
> [ipv6]:port which is the standard for IPv6 URIs)
> - depends on the behavior of InetSocketAddress.toString() which produces the
> above.
> This patch fixes those metaphors that I can find above, and replaces calls to
> InetSocketAddress.toString() with a wrapper that properly brackets the IPv6
> address if there is one.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)