Skip to content

Conversation

@junlinzeng-db
Copy link

@junlinzeng-db junlinzeng-db commented Mar 29, 2024

This PR is a cherry-pick and enhancement of the original PR submitted by Databricks. #11

The original PR explains the intention pretty well:

Created a new interface ExecutorServiceFactory and a default implementation of it that maintains existing behavior.
Introduced a new config hive.metastore.executorservice.factory.class that will be used by Databricks to provide a custom executor service factory that returns a custom ExecutorService.

The first commit of the change is a pure cherry-pick. 2352c78

The second commit is an enhancement horizontally. As we found out there were quite some other thread pools used in the glue client that didn't support configuration executor service.

The third commit is an optimization to ask all those instances to share the configurable executor services just as they did before the executor service became configurable.

I do have tests in this PR but I cannot really compile locally so I do not really test this out in UT tests yet.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

@junlinzeng-db junlinzeng-db reopened this Apr 1, 2024
@junlinzeng-db junlinzeng-db changed the title Junlinzeng db/junlin recherrypick Use a custom executor service if config is set Apr 1, 2024
Copy link

@vihangk1 vihangk1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I reviewed the changes and they look good to me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants