Ticket #2149 (new defect)

Opened 10 months ago

Last modified 10 months ago

retry send 'setup connection' in b10-ddns

Reported by: jelte Owned by:
Priority: medium Milestone:
Component: DDNS Keywords:
Cc: CVSS Scoring:
Sensitive: no Defect Severity: N/A
Sub-Project: DNS Feature Depending on Ticket:
Estimated Difficulty: 6 Add Hours to Ticket: 0
Total Hours: 0 Internal?: no

Description

ticket 1986 added a command that is sent from b10-ddns to b10-auth, which sets up the internal connection to forward packets.

It also contains a message from auth to ddns should auth be restarted. However, on startup, if ddns is just slightly faster than auth in getting started, auth never gets the message, and b10-ddns hangs for 4 seconds waiting for an answer (the connection does get set up eventually, but it will cause errors if it is attempted to be used initially, b10-ddns is dead in the water for the full 4 second, not answering to commands and updates).

Fundamentally, the problem is the lack of real async io in b10-ddns, however, a quick workaround would be to set the internal timeout lower than the default, and retry a few times before erroring.

We also need an option for the 'nonblocking' version of check_command to check for multiple commands I think.

(I have some code, which i'll put in the branch, but it may need some unit tests, and now my lettuce tests fail on an entirely different cmdctl error)

Change History

comment:1 Changed 10 months ago by shane

  • Component changed from Unclassified to DDNS
  • Milestone New Tasks deleted
Note: See TracTickets for help on using tickets.