[
https://issues.apache.org/jira/browse/HADOOP-10181?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14292662#comment-14292662
]
Chris Nauroth commented on HADOOP-10181:
----------------------------------------
Hi, [~ajsquared]. Thank you for providing this patch. This mostly looks good
to me. Here are a few minor comments:
# It appears the existing strategy for validation of configuration input in
this class is to use a default if the property is unspecified, but let it throw
{{NumberFormatException}} if there is a value specified, and it is non-numeric.
(For example, see {{getDmax}}.) While perhaps not ideal, it's probably best
to keep the validation handling consistent for the new property.
# It's odd that the existing exception handling code used {{printStackTrace}}
even though a logger is available. Even though it's not directly related to
your patch, let's take this opportunity to change it to use the {{LOG}}.
# Thank you for updating package.html too.
The test failure reported by Jenkins is unrelated. I confirmed that the test
passes locally for me.
I also reviewed {{GangliaContext31}} (unchanged in this patch) and it appears
the subclass will work just fine with your changes in the base class.
I'll be +1 after points 1 and 2 above are addressed. However, this is my first
time looking at this part of the codebase. I'd prefer if we could get one more
review by someone who has experience with this code before I commit it.
[~tucu00] and [~tlipcon], I noticed your names in the change log. Are you
interested in reviewing?
> GangliaContext does not work with multicast ganglia setup
> ---------------------------------------------------------
>
> Key: HADOOP-10181
> URL: https://issues.apache.org/jira/browse/HADOOP-10181
> Project: Hadoop Common
> Issue Type: Bug
> Reporter: Andrew Otto
> Assignee: Andrew Johnson
> Priority: Minor
> Labels: ganglia, hadoop, metrics, multicast
> Attachments: HADOOP-10181.001.patch, HADOOP-10181.002.patch
>
>
> The GangliaContext class which is used to send Hadoop metrics to Ganglia uses
> a DatagramSocket to send these metrics. This works fine for Ganglia
> multicast setups that are all on the same VLAN. However, when working with
> multiple VLANs, a packet sent via DatagramSocket to a multicast address will
> end up with a TTL of 1. Multicast TTL indicates the number of network hops
> for which a particular multicast packet is valid. The packets sent by
> GangliaContext do not make it to ganglia aggregrators on the same multicast
> group, but in different VLANs.
> To fix, we'd need a configuration property that specifies that multicast is
> to be used, and another that allows setting of the multicast packet TTL.
> With these set, we could then use MulticastSocket setTimeToLive() instead of
> just plain ol' DatagramSocket.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)