Loading src/blogi.cpp +24 −13 Original line number Diff line number Diff line Loading @@ -110,7 +110,12 @@ blogi::Blogi::Blogi(std::vector<netplus::socket*> serversocket,bool debug) : Htt std::cerr << "Initializing domain '" << dcfg.name << "' with DB Driver: " << dcfg.dbDriver << " on " << dcfg.dbConnection << std::endl; const int maxRetries = 10; const int retrySec = 3; for (int attempt = 1; attempt <= maxRetries; attempt++) { try { ctx.plgArgs->database.clear(); for (int i = 0; i < threads; i++) { auto db = std::make_unique<dbpp::ReplicatedDatabase>(dcfg.dbDriver, dcfg.dbConnection); for (const auto &rep : dcfg.dbReplicas) { Loading @@ -123,10 +128,16 @@ blogi::Blogi::Blogi(std::vector<netplus::socket*> serversocket,bool debug) : Htt } ctx.plgArgs->database.emplace_back(std::move(db)); } break; } catch(std::runtime_error &e) { std::cerr << "can't connect db for domain '" << dcfg.name << "' reason: " << e.what() << std::endl; std::cerr << "can't connect db for domain '" << dcfg.name << "' (attempt " << attempt << "/" << maxRetries << "): " << e.what() << std::endl; if (attempt == maxRetries) { throw e; } std::cerr << " retrying in " << retrySec << "s..." << std::endl; sleep(retrySec); } } std::unique_ptr<dbpp::ReplicatedDatabase> initdb = std::make_unique<dbpp::ReplicatedDatabase>(dcfg.dbDriver, dcfg.dbConnection); for (const auto &rep : dcfg.dbReplicas) { Loading Loading
src/blogi.cpp +24 −13 Original line number Diff line number Diff line Loading @@ -110,7 +110,12 @@ blogi::Blogi::Blogi(std::vector<netplus::socket*> serversocket,bool debug) : Htt std::cerr << "Initializing domain '" << dcfg.name << "' with DB Driver: " << dcfg.dbDriver << " on " << dcfg.dbConnection << std::endl; const int maxRetries = 10; const int retrySec = 3; for (int attempt = 1; attempt <= maxRetries; attempt++) { try { ctx.plgArgs->database.clear(); for (int i = 0; i < threads; i++) { auto db = std::make_unique<dbpp::ReplicatedDatabase>(dcfg.dbDriver, dcfg.dbConnection); for (const auto &rep : dcfg.dbReplicas) { Loading @@ -123,10 +128,16 @@ blogi::Blogi::Blogi(std::vector<netplus::socket*> serversocket,bool debug) : Htt } ctx.plgArgs->database.emplace_back(std::move(db)); } break; } catch(std::runtime_error &e) { std::cerr << "can't connect db for domain '" << dcfg.name << "' reason: " << e.what() << std::endl; std::cerr << "can't connect db for domain '" << dcfg.name << "' (attempt " << attempt << "/" << maxRetries << "): " << e.what() << std::endl; if (attempt == maxRetries) { throw e; } std::cerr << " retrying in " << retrySec << "s..." << std::endl; sleep(retrySec); } } std::unique_ptr<dbpp::ReplicatedDatabase> initdb = std::make_unique<dbpp::ReplicatedDatabase>(dcfg.dbDriver, dcfg.dbConnection); for (const auto &rep : dcfg.dbReplicas) { Loading