MCPcopy Create free account
hub / github.com/apache/impala / RenewThread

Method RenewThread

be/src/kudu/security/init.cc:368–389  ·  view source on GitHub ↗

Periodically calls DoRenewal().

Source from the content-addressed store, hash-verified

366
367// Periodically calls DoRenewal().
368void KinitContext::RenewThread() {
369 uint32_t failure_retries = 0;
370 int64_t renew_interval_s = GetNextRenewInterval(failure_retries);
371 while (!stop_latch_.WaitFor(MonoDelta::FromSeconds(renew_interval_s))) {
372 Status s = DoRenewal();
373 WARN_NOT_OK(s, "Kerberos reacquire error: ");
374 if (!s.ok()) {
375 ++failure_retries;
376 } else {
377 failure_retries = 0;
378 }
379
380 if (failure_retries > 0) {
381 // Log in the abnormal case where something failed.
382 LOG(INFO) << Substitute("Renew thread sleeping after $0 failures for $1s",
383 failure_retries, renew_interval_s);
384 }
385
386 // This thread is run immediately after the first Kinit, so sleep first.
387 renew_interval_s = GetNextRenewInterval(failure_retries);
388 }
389}
390
391RWMutex* KerberosReinitLock() {
392 return g_kerberos_reinit_lock;

Callers 1

KinitMethod · 0.95

Calls 3

SubstituteFunction · 0.85
WaitForMethod · 0.45
okMethod · 0.45

Tested by

no test coverage detected