[bind10-dev] BIND 10 trac503, updated. implement ANY query logic
JINMEI Tatuya / 神明達哉
jinmei at isc.org
Wed Jan 26 22:32:12 UTC 2011
At Wed, 26 Jan 2011 21:26:01 +0100,
Michal 'vorner' Vaner <michal.vaner at nic.cz> wrote:
> > RRsetList is not actually a "list". It's actually a "set of RRsets",
> > and its "add" method internally performs "insert it if it's not
> > already in the set", which is expensive.
>
> Then may I point out the name is probably misleading? I didn't look
> the class up in the documentation, but I expected by the name that
> it is just a vector wrapped in something.
Yes, that's a valid argument. We were aware that it was named badly,
but we couldn't come up with a better name for the concept of "a set
of RRsets": RRsetset would look awkward; RRsets would be confusing
(with RRset). So we left the name unchanged. Such a background story
should have been documented, but at that time we didn't have time for
that either...
> > I also have a concern with the new find() interface. It looks awkward
> > that it (can) return a requested type of RRset as a return value while
> > also providing all types of RRsets via the "target".
>
> Not really. Currently it returns only when there's no exact match on
> rtype (eg. if it would lead to NXRRSET). But if it would be used
> for anything else, that might still change.
I know that. My concern is more about the interface itself
> So, while not completely disagreeing with you, may I propose
> something? Leave it as it is right now, because the thing
> works. Later we will be merging interfaces of in-memory datasource
> and the SQLite datasource and will need to come up with something
> common. It will cause earthquake in the interfaces, so why don't we
> solve it after then?
Works for me. I'll update the documentation for Zone::find() with
noting this point (btw the current documentation seems insufficient.
It only briefly mentions the new "target" parameter in the parameter
list).
---
JINMEI, Tatuya
Internet Systems Consortium, Inc.
More information about the bind10-dev
mailing list