class IterativeLookupJob extends JobImpl
Handles the followup lookups for RouterInfo entries returned in DSRM messages during iterative Kademlia searches. For each peer hash in the reply, determines whether to fetch new RouterInfo data or refresh existing entries based on age and floodfill status.
Optimizes network integration by preferentially querying routers directly for their own RouterInfo when existing data is stale or the router is not confirmed as floodfill. This helps establish reliable floodfill peers and accelerates network discovery.
Extracted from IterativeLookupSelector to prevent deadlocks with the OutboundMessageRegistry during concurrent search operations.
| Constructor and Description |
|---|
IterativeLookupJob(RouterContext ctx,
DatabaseSearchReplyMessage dsrm,
IterativeSearchJob search) |
| Modifier and Type | Method and Description |
|---|---|
String |
getName()
Descriptive name of the task
|
void |
runJob()
Actually perform the task.
|
dropped, getContext, getJobId, getMadeReadyOn, getTiming, madeReady, requeue, toStringpublic IterativeLookupJob(RouterContext ctx, DatabaseSearchReplyMessage dsrm, IterativeSearchJob search)