BIND 10 #1756: revise "ITERATE" query in sqlite3_accessor
BIND 10 Development
do-not-reply at isc.org
Mon Sep 24 07:41:36 UTC 2012
#1756: revise "ITERATE" query in sqlite3_accessor
-------------------------------------+-------------------------------------
Reporter: | Owner: muks
jinmei | Status: reviewing
Type: | Milestone:
defect | Sprint-20120925
Priority: | Resolution:
medium | Sensitive: 0
Component: data | Sub-Project: DNS
source | Estimated Difficulty: 6
Keywords: | Total Hours: 0
Defect Severity: N/A |
Feature Depending on Ticket: |
Add Hours to Ticket: 0 |
Internal?: 0 |
-------------------------------------+-------------------------------------
Comment (by muks):
Hi Michal
Replying to [comment:8 vorner]:
> Hello
>
> First, I'm not completely sure the tradeoff is worth it (larger DB and
slower updates for faster iteration). Should we ask on the ML about it?
I've asked on the mailing list:
https://lists.isc.org/pipermail/bind10-dev/2012-September/003828.html
> Anyway, the change should have a changelog entry I think.
How does this look:
{{{
XXX. [func] muks
Added an SQLite3 index on records(rname, rdtype). This decreases
insert performance by ~28% and adds about ~20% to the file size,
but increases zone iteration performance. As it introduces a new
index, a database upgrade would be required.
(Trac #1756, git ...)
}}}
> Also, I think this is the kind of change in DB to increase the minor
version (it is backwards compatible, but it is different). And the update
utility should be extended to be able to add the indices to already
existing database.
Done.
> I'm not against the change to `sqlite3_datasrc.cc`, but we should drop
this file really soon now. I don't think anything uses it any more.
Nod.
>
> Also, it seems the lettuce tests fail for me. Did you try running them?
I tried 3 times and all three times it failed on the same test:
>
> {{{
> last bindctl output should not contain "error"
# features/terrain/bind10_control.py:152
> Then wait for new master stderr message
XFROUT_RECEIVED_GETSTATS_COMMAND #
features/terrain/steps.py:34
> Traceback (most recent call last):
> File "/home/vorner/.local/lib64/python2.7/site-
packages/lettuce/core.py", line 117, in __call__
> ret = self.function(self.step, *args, **kw)
> File
"/home/vorner/work/bind10/tests/lettuce/features/terrain/steps.py", line
52, in wait_for_stderr_message
> (found, line) =
world.processes.wait_for_stderr_str(process_name, strings, new,
int(times))
> File
"/home/vorner/work/bind10/tests/lettuce/features/terrain/terrain.py", line
344, in wait_for_stderr_str
> matches)
> File
"/home/vorner/work/bind10/tests/lettuce/features/terrain/terrain.py", line
244, in wait_for_stderr_str
> strings, only_new, matches)
> File
"/home/vorner/work/bind10/tests/lettuce/features/terrain/terrain.py", line
228, in _wait_for_output_str
> assert False, "Timeout waiting for process output: " +
str(strings)
> AssertionError: Timeout waiting for process output:
[u'XFROUT_RECEIVED_GETSTATS_COMMAND']
> The counter notifyoutv4 for the zone _SERVER_ should be 0
# features/terrain/bind10_control.py:395
> }}}
>
I think this was an issue with the stats counter updates when the branch
was made, and has since been fixed in master.
--
Ticket URL: <http://bind10.isc.org/ticket/1756#comment:9>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development
More information about the bind10-tickets
mailing list