Open Madhukar525722 opened 4 weeks ago
Hi @pan3793 @bowenliang123 @turboFei . Please review the implementation. Thanks
Attention: Patch coverage is 0%
with 22 lines
in your changes missing coverage. Please review.
Project coverage is 0.00%. Comparing base (
d3520dd
) to head (2c6f270
).
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
To support preferred the group name in session conf, I would suggest to do the following:
KyuubiReservedKeys
rather than in adding a server side config for a global preferred group (you are not even using its value anyway).And I have worries about using the session conf will interference choosing the engine reference, as it's easy to be changed at runtime. Is there any better approach with solid connection variables?
@Madhukar525722 thanks for taking care of this feature, I leave the comments to add a configuration "kyuubi.session.preferGroup" previously, but I have a little different idea now.
Now I would suggest having a "kyuubi.session.preferredGroups" (Seq[String]), when present, we select the most preferred group from the whole group list, otherwise, take the head, instead of failing fast. For the implementatio, we can use a custom Comparator
to acheive that.
And I have worries about using the session conf will interference choosing the engine reference, as it's easy to be changed at runtime. Is there any better approach with solid connection variables?
seems there is no much differences from the existing properties like kyuubi.session.user
?
Hi @pan3793 , I have considered your suggestion for using kyuubi.session.preferredGroups. Please review.
Hi @pan3793 , Please review the change, integration tests failed due to timeout. In previous it was green
@Madhukar525722 sorry for late reply, I'm quite busy these days, will take a look soon
…groups
:mag: Description
Issue References 🔗
This pull request fixes #6402
Describe Your Solution 🔧
Currently, the group level engine is getting launched with the first user group itself. This change will allow user to pass in which group they want to launch the engine.
The flow of implementation is :
Types of changes :bookmark:
Test Results🧪
When PREFERRED_GROUPS were not defined, it used the first group from the list Spark application name: kyuubi_GROUP_SPARK_SQL_Internet_Users_default_d2826b5b-3f1e-48a0-b42f-d248da914b7c application ID: application_1728291907264_43966 User: madlnu
When valid PREFERRED_GROUPS were defined Spark application name: kyuubi_GROUP_SPARK_SQL_kyuubi_test_b_default_be9a16a8-be38-4ab6-bee9-1934f8556f18 application ID: application_1728291907264_43968 User: madlnu
When no PREFERRED_GROUPS were matching, it used the first group from the list Spark application name: kyuubi_GROUP_SPARK_SQL_Internet_Users_default_d2826b5b-3f1e-48a0-b42f-d248da914b7c application ID: application_1728291907264_43966 User: madlnu
When any other user X tries to access the existing GROUP engine, it uses the same engine Spark application name: kyuubi_GROUP_SPARK_SQL_Internet_Users_default_d2826b5b-3f1e-48a0-b42f-d248da914b7c application ID: application_1728291907264_43966 User: madlnu
Checklist 📝
Be nice. Be informative.