| 216 | } |
| 217 | |
| 218 | int main(int argc, char** argv) { |
| 219 | arrow::util::ArrowLog::InstallFailureSignalHandler(); |
| 220 | |
| 221 | gflags::SetUsageMessage("Integration testing client for Flight."); |
| 222 | gflags::ParseCommandLineFlags(&argc, &argv, true); |
| 223 | std::shared_ptr<arrow::flight::integration_tests::Scenario> scenario; |
| 224 | if (!FLAGS_scenario.empty()) { |
| 225 | ARROW_CHECK_OK( |
| 226 | arrow::flight::integration_tests::GetScenario(FLAGS_scenario, &scenario)); |
| 227 | } else { |
| 228 | scenario = |
| 229 | std::make_shared<arrow::flight::integration_tests::IntegrationTestScenario>(); |
| 230 | } |
| 231 | |
| 232 | // ARROW-11908: retry a few times in case a client is slow to bring up the server |
| 233 | auto status = arrow::Status::OK(); |
| 234 | for (int i = 0; i < kRetries; i++) { |
| 235 | status = RunScenario(scenario.get()); |
| 236 | if (status.ok()) break; |
| 237 | // Failed, wait a bit and try again |
| 238 | std::this_thread::sleep_for(std::chrono::milliseconds((i + 1) * 500)); |
| 239 | } |
| 240 | ABORT_NOT_OK(status); |
| 241 | |
| 242 | arrow::util::ArrowLog::UninstallSignalAction(); |
| 243 | return 0; |
| 244 | } |
nothing calls this directly
no test coverage detected