>
> 1. implementation of IPvXaddress abstraction
>   - my preference, and the implementation Evelina has under review, is a
> single class that abstracts away the family

  - others have suggested an abstract 'Address' with inheritance to manage
> the different families
>   - in general we have used composition in the existing code-base
>   - given how non-extensible the family is, it makes sense to me to
> continue with composition
>

I like the idea of a single 'IP' class that abstracts IP. What we saw in
the past from Evelina's reviews was both an IP and an IPAddress, at which
point we proposed she make IPAddress be IP::Address. But only having a
single IP class would be much much much better.


> 2. rename of Node
>   - this has come up before, and always been determined to be unnecessary
> churn
>   - renaming to Address adds confusion as it is actually an address and a
> port
>   - 'Endpoint' could be an alternative
>

I had called this Node originally because I didn't do my homework. This was
my bad. C libraries always called this sockaddr. Now they've introduced a
new structure called addrinfo to better handle IPv6 addresses. This is not
meant to be churn, this is better capturing the naming from the the
underlying libraries. I didn't want to call this SocketAddress even though
a bunch of libraries that abstract sockaddr call it that because ultimately
we want to "wrap" addrinfo.  Moreover, I didn't want to call it AddressInfo
because the 'Info' seems unnecessary and conflicts with our protobuf naming
scheme (where things end with the suffix 'Info', like FrameworkInfo,
SlaveInfo, etc). Finally, man pages around these structures simply just
call the object "address", hence Address.


On Thu, Jan 22, 2015 at 1:05 PM, Evelina Dumitrescu <
> evelina_dumitre...@yahoo.com.invalid> wrote:
>
> > Hey,
> >
> > A few weeks ago I proposed an abstraction for the IP address.
> > There has been a long discussion on how to implement this (eg: what kind
> > of pattern to use, composition/inheritance).
> >
> > Ben Hindman proposed a replacement of the Node class with Address and
> > moving several network functions to the network namespace, which affects
> my
> > implementation[1].
> >
> > Here are my code reviews[2] and the Jira discussion on this issue[3].
> > To speed up the review process, we decided to move this discussion of the
> > dev mailing list so anyone can chime in.
> >
> > Thanks,
> > Evelina
> >
> >
> > [1]
> > https://reviews.apache.org/r/29538/
> > https://reviews.apache.org/r/29540/
> > https://reviews.apache.org/r/29541/
> >
> > [2]
> > https://reviews.apache.org/r/29288/
> > https://reviews.apache.org/r/29289/
> > https://reviews.apache.org/r/29290/
> >
> > [3]
> > https://issues.apache.org/jira/browse/MESOS-1919
> >
> >
>
>
> --
> Dominic Hamon | @mrdo | Twitter
> *There are no bad ideas; only good ideas that go horribly wrong.*
>

Reply via email to