Subject: C-ares timeout issue

C-ares timeout issue

From: Brian Yoder <brian.from.fl_at_gmail.com>
Date: Tue, 9 Nov 2010 10:43:57 -0500

I'm using C-ares against one server with UDP enabled. All goes well--very
very well. Millions and millions of times in a row. But it fails when the
first timeout is detected. From then on, all subsequent queries result in
timeout failures until the application linked to C-ares is stopped and
restarted.

Inspection of the code doesn't seem to show any obvious problems. When a
struct query is created, its tries and timeouts values are cleared properly.

One thing I did notice was that when a timeout is detected, the UDP socket
should not be closed. UDP is connection-less and oblivious to whatever
issues the server has. But if the UDP socket is closed and then re-opened
(which it shouldn't be), I wouldn't expect any subsequent error to stick at
ARES_ETIMEOUT.
Received on 2010-11-09