|
|
@ -129,8 +129,13 @@ llarp_nodedb::InsertAsync(llarp::RouterContact rc,
|
|
|
|
std::shared_ptr< llarp::Logic > logic,
|
|
|
|
std::shared_ptr< llarp::Logic > logic,
|
|
|
|
std::function< void(void) > completionHandler)
|
|
|
|
std::function< void(void) > completionHandler)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
disk->addJob(
|
|
|
|
const auto job = std::bind(&handle_async_insert_rc, this, rc, logic, completionHandler);
|
|
|
|
std::bind(&handle_async_insert_rc, this, rc, logic, completionHandler));
|
|
|
|
size_t tries = 10;
|
|
|
|
|
|
|
|
while((!disk->addJob(job)) && tries-- > 0)
|
|
|
|
|
|
|
|
std::this_thread::sleep_for(std::chrono::milliseconds(1));
|
|
|
|
|
|
|
|
// on fail do synchronous write
|
|
|
|
|
|
|
|
if(tries == 0)
|
|
|
|
|
|
|
|
Insert(rc);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
bool
|
|
|
|
bool
|
|
|
|