question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Max retry attempts and max wait time for hive metastore client should be configurable

See original GitHub issue

I find the when ThriftHiveMetastore trying to connect to hive metastore, it always using the default DetryDriver whose max retry attempts is DEFAULT_RETRY_ATTEMPTS whose value is 10 and max retry time is DEFAULT_MAX_RETRY_TIME whose value is 30s; All that user could setup currently is the timeout by hive.metastore-timeout, but for example, when I want to set the hive.metastore-timeout to 3 minutes and want it to retry for 10 attempts when timeout happened, that is , waiting for 3 * 10 = 30 minutes when hive metastore didn’t respond or unstable, it is impossible because it is restricted by DEFAULT_MAX_RETRY_TIME which cannot be configured; I think it is necessary to make it configurable in the catalog configuration files;

@dain @findepi what’s your opinion ? If you think it is necessary , I will do that.

Issue Analytics

  • State:closed
  • Created 5 years ago
  • Comments:5 (3 by maintainers)

github_iconTop GitHub Comments

1reaction
electrumcommented, Dec 16, 2018

Note that RetryDriver has maxAttempts so you’ll need to do maxRetries + 1.

1reaction
electrumcommented, Dec 16, 2018

Sorry for the delayed response. I agree we should make this configurable. Let’s add a ThriftHiveMetastoreConfig class with these config properties:

  • metastore.thrift.client.max-retries
  • metastore.thrift.client.min-backoff-delay
  • metastore.thrift.client.max-backoff-delay
  • metastore.thrift.client.backoff-scale-factor
  • metastore.thrift.client.max-retry-time

These config names are taken from DriftClientConfig in the Drift library (it would be bound with a prefix like metastore). If we ever switch the metastore client to Drift, the config names won’t have to change. You can see how we use this for the Thrift Connector.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Max retry attempts and max wait time for hive metastore client ...
metastore-timeout to 3 minutes and want it to retry for 10 attempts when timeout happened, that is , waiting for 3 * 10...
Read more >
Configuration Properties - Apache Hive
By setting this property to -1, Hive will automatically figure out ... The max memory to be used by map-side grup aggregation hash...
Read more >
Hive Properties in Cloudera Runtime 7.0.0 | CDP Public Cloud
The time in seconds to wait for a role's process to start successfully on a host. Processes which exit/crash before this time will...
Read more >
Hive Connector — Presto 0.278 Documentation
The required Hive metastore can be configured with a number of properties. ... Maximum number of error retries for the Glue client, defaults...
Read more >
Enabling Hive metastore high availability - IBM
With the default values, a metastore client would try to connect to any of the metastore URIs. If the connection fails to all...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found