These are chat archives for CZ-NIC/knot-resolver

10th
May 2016
Maxime Hadjinlian
@maximeh
May 10 2016 09:56 UTC
Hi there
I have started using kresd-resolver (the package from Debian) to play around a little bit
I have a "strange" issues, there's a few dns query that are stuck.
I have a knot-resolver daemon running on my machine, I have a scripts that does a bunch of requests, some requests get stuck, if I shutdown kresd, they keep going
I don't know how I could debug that, so any help is really appreciated :)
I did not have that problem with the earlier version
Maxime Hadjinlian
@maximeh
May 10 2016 10:13 UTC
Here's the log from the failing request: http://pastebin.com/jeF7n3eT
The program at the other ends get stuck on the requests to feeds.feedburner.com, if I quit kresd, it goes on.
Ondřej Surý
@oerdnj
May 10 2016 11:51 UTC

@maximeh Thanks for the report, we'll look into that. I filled issue in our tracker: https://gitlab.labs.nic.cz/knot/resolver/issues/66
We have seen a couple of "stuck" issues, but they should have been resolved in tcp-ooo branch (the code you are using from Debian package).

How fast are you feeding the DNS queries?

And what's the pattern?
Maxime Hadjinlian
@maximeh
May 10 2016 11:52 UTC
Well the application is ttrss, the updater
@oerdnj So it's pretty slow but it's very disparate as it's RSS feeds.
Ondřej Surý
@oerdnj
May 10 2016 11:52 UTC
@maximeh can you share the config? (possibly in private email?)
Maxime Hadjinlian
@maximeh
May 10 2016 11:53 UTC
@oerdnj: I'm using the cli php, it's php7
@oerdnj : the kresd config I assume ?
Ondřej Surý
@oerdnj
May 10 2016 11:53 UTC
@maximeh nope, the tt-rss (if it has any)
e.g. what feeds are you following
Maxime Hadjinlian
@maximeh
May 10 2016 11:54 UTC
@oerdnj: It always block on this URL: http://feeds.feedburner.com/holman
@oerdnj Other than the database settings, my ttrss instance is vanilla, I can share an OPML with my lists of feeds, that's no trouble
Ondřej Surý
@oerdnj
May 10 2016 11:55 UTC
@maximeh lemme try to reproduce the issue locally just with that one feed
Maxime Hadjinlian
@maximeh
May 10 2016 12:00 UTC
@oerdnj Where you the one that gave the talk at fosdem ?
Ondřej Surý
@oerdnj
May 10 2016 12:00 UTC
@maximeh yep
Maxime Hadjinlian
@maximeh
May 10 2016 12:01 UTC
@oerdnj really cool talk, that's where I re discovered knot and its resolver and made me want to toy with it at home (also because I backed the turris omnia so I was already interested in what you guys do)
Ondřej Surý
@oerdnj
May 10 2016 12:01 UTC
@maximeh thanks
Ondřej Surý
@oerdnj
May 10 2016 12:07 UTC
@maximeh So I have it configured and can't reproduce the issue with "php updater.php --feeds"
Maxime Hadjinlian
@maximeh
May 10 2016 12:08 UTC
@oerdnj let me send you my OPML, maybe it has to do with the ordering of the requests ?
I'am not sure that make sense, each requests should be treated without regards of the others (maybe the prefetch engine ?)
@oerdnj I'll start kresd and do an update, and send you the output of both process along with the OPML, could you share your email ?
Ondřej Surý
@oerdnj
May 10 2016 12:12 UTC
@maximeh Could you try emptying the cache and running the script again? Then emptying the cache, asking for A and AAAA feeds.feedburner.com manually and then running updater; then clearing the cache, running the script until it's stuck, then restarting kresd, and rerunning it again.
And one more:
Clear the cache, prime the cache with dig IN AAAA feeds.feedburner.com + dig IN A feeds.feedburner.com and then snooping for TTL, waiting the TTL and then running the updater after the records should have expired? (it's has 300 second TTL)
And gather full kresd logs for each try?
Maxime Hadjinlian
@maximeh
May 10 2016 12:12 UTC
@oerdnj I have already a data.mdb in /var/lib, should I delete that ? I don't want to change anything by fear I could not reproduce.
Ondřej Surý
@oerdnj
May 10 2016 12:12 UTC
@maximeh Send it to knot-dns@labs.nic.cz
This goes to Knot DNS team
Well, if you can share *.mdb that causes the breakage from kresd, that would be also great.
Unless you have anything private that might be in the cache
Maxime Hadjinlian
@maximeh
May 10 2016 12:14 UTC
the mdb is 2G so... :)
Ondřej Surý
@oerdnj
May 10 2016 12:14 UTC
We definitely don't want to intrude your privacy, but you might share something accidentally...
@maximeh Hmph, it might be something with cache purging... @vavrusa ?
Then just save it somewhere before purging it...
Maxime Hadjinlian
@maximeh
May 10 2016 12:15 UTC
Well, I am using kresd as my home DNS caching so it's a bit touchy to send it away :/
Ondřej Surý
@oerdnj
May 10 2016 12:15 UTC
@maximeh I understand, in that case I don't want to see it anyway!
Maxime Hadjinlian
@maximeh
May 10 2016 12:16 UTC
To clear the cache, I can use the kresd cli ?
Maxime Hadjinlian
@maximeh
May 10 2016 12:17 UTC
Do you want me to clear the whole cache or only for feedburner.com ?
Ondřej Surý
@oerdnj
May 10 2016 12:18 UTC
@maximeh Try just the feedburner.com first and then clear the full cache
Maxime Hadjinlian
@maximeh
May 10 2016 12:18 UTC
ok
@oerdnj clearing the cache for only *.feedburner.com doesn't change a thing., let me clear the whole cache now
and as soon I exit kresd, the process continue.
Ondřej Surý
@oerdnj
May 10 2016 12:29 UTC
There has been a race condition that could mangle dstport in the DNS response recently, but that should have been fixed in tcp-ooo branch that's packaged. If you happen to trigger the bug again, using wireshark to dump the DNS packets for feeds.feedburner.com might also help.
Maxime Hadjinlian
@maximeh
May 10 2016 12:31 UTC
after a whole clear of the cache and a prime of the cache by hand, it seems to solve that. Need to confirm.
Ondřej Surý
@oerdnj
May 10 2016 12:32 UTC
I suspect that it will trigger again if you fill the cache again
Maxime Hadjinlian
@maximeh
May 10 2016 12:33 UTC
I need to kill a few process, otherwise the logs are getting messy pretty quickly