Support equal sign in JDBC URL var_key=var_value
- Dominant language
- Scala
- Stars
- 2.4k
- Forks
- 1k
- PR merge metrics
- No merged PRs in 30d
Description
### Code of Conduct
- [X] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct)
### Search before asking
- [X] I have searched in the [issues](https://github.com/apache/incubator-kyuubi/issues?q=is%3Aissue) and found no similar issues.
### Describe the feature
Hello team,
I want to set a Var key=value in Kyuubi JDBC Url, but the value is a base64 string, that contains "=" character .
How to escape "=" character in url var ?
url: "fs.azure.account.key.pfsdpstorage.dfs.core.windows.net=............A=="
run "set " command:
+---------------------------------------------------------------------------+----------------------------------------------------+
| key | value |
+---------------------------------------------------------------------------+----------------------------------------------------+
| fs.azure.account.key.pfsdpstorage.dfs.core.windows.net=............A= | |
Expected:
+---------------------------------------------------------------------------+----------------------------------------------------+
| key | value |
+---------------------------------------------------------------------------+----------------------------------------------------+
| fs.azure.account.key.pfsdpstorage.dfs.core.windows.net= | ............A== |
i try to replace "=" with %3D, not luck.
### Motivation
Support equal sign in JDBC URL var_key=var_value
### Describe the solution
Step1: Replace = with "%3D" in jdbc url
Step 2: Convert "%3D" back to "=" to JDBC parameters.
### Additional context
_No response_
### Are you willing to submit PR?
- [X] Yes I am willing to submit a PR!
Contributor guide
Research direction
Start by locating the JDBC URL handling for var_key=var_value and reproduce the issue with the provided base64 value containing '='. The work is done when an encoded '=' is converted back to '=' in the JDBC parameter value and the resulting SET output preserves the complete value, including trailing '=='. за
Written by the indexing model from the issue text.
Assessment
- Tech stack
- scala
- Domain
- backend
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100