duplicate advertisements sent on `gdplogd` startup
According to Rick, in some circumstances
gdplogd will advertise all of the logs it knows about and then immediately send them a second time. It doesn't happen every time, and may be timing related. As yet we don't have a reliable way to reproduce it.
#1 Updated by Rick Pratt about 4 years ago
If a gdplogd instance is left running, and the connected gdp-router-click2 is halted, left down for a few minutes (which correlates with the 150s advertisement period), and is subsequently relaunched, then the gdplogd instance will frequently generate a set of advertisements twice in close temporal proximity right after the gdplogd instance reconnects with the gdp-router-click2 instance.
After adding diagnostic output to logd.c, I have determined that the gdplogd renew_advertisements_thread() is called each and every time the extra advertisements also appear. Given routers have the same name on reboot, I would speculate that the renewal call is set up within gdplogd by what happens prior to halting the router, and that renewal call occurs very shortly after reconnection of gdplogd with gdp-router-click2 (i.e., almost simultaneous with the expected call to logd_advertise_all() on new connections).
Priority is likely low, given the reproduction conditions, but track in the unlikely event it is seen in production.
#2 Updated by Eric Allman about 4 years ago
- Status changed from New to Feedback