Drop secondary index #64
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR drops the secondary index in favor of slightly more complicated domain name and string parsing, which are the only two data types (for now) that actually benefited from it. It also slows down RRTYPE conversion too (presumably), but there maybe a way to speed that back up again (the hash requires the length, which made sense because we had it freely available, but maybe another algorithm can be implemented that doesn't require it). Overall performance is around 5% better.
More importantly, it is now forbidden to use quotes around values other than domain names and text. The parser in NSD allows for quotes everywhere, which is why it was implemented like that before, but disallowing that is more sane and in line with BIND's behavior.
Use of
1h2m3s
notation for TTLs, which is an NSD extension, is now only supported ifpretty_ttls
is enabled.There's other changes too. Note that this is still a draft because the code needs to be cleaned up a little. I focused on getting something fast because many mechanics are updated that may be important for the work done on #23.