temporalio / temporalio/temporal
dynamic-config-value invalid JSON value for key
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 23.2k
- Forks
- 1.9k
- Avg merge
- 2d 8h
- Merged PRs (30d)
- 228
Description
Expected Behavior
When I launch the temporal server from the command line and supply a valid key/value for the dynamic-config-value flag the server starts and applies this config value
https://docs.temporal.io/cli/cmd-options#dynamic-config-value
Actual Behavior
The server fails to start and gives the error
"Error: invalid JSON value for key "persistence.defaultStore"
Steps to Reproduce the Problem
- Install temporal
curl -sSf https://temporal.download/cli.sh | sh
- Launch with the following dynamic config flags
temporal server start-dev --ip 0.0.0.0 --dynamic-config-value \
frontend.workerVersioningDataAPIs=true --dynamic-config-value \
persistance.numHistoryShards=2 --dynamic-config-value \
persistence.defaultStore="default" --dynamic-config-value \
persistence.visibilityStore="default" --dynamic-config-value \
persistence.secondaryVisibilityStore="default" --dynamic-config-value \
persistence.datastores.default.sql.user="root" --dynamic-config-value \
persistence.datastores.default.sql.password="root" --dynamic-config-value \
persistence.datastores.default.sql.pluginName="mysql" --dynamic-config-value \
persistence.datastores.default.sql.databaseName="temporal" --dynamic-config-value \
persistence.datastores.default.sql.connectAddr="mysql" --dynamic-config-value \
persistence.datastores.default.sql.connectProtocol="tcp"
Specifications
- Version: temporal version 0.11.0 (server 1.22.4) (ui 2.21.3)
- Platform: Docker container running debian based image
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at the CLI handling for the dynamic-config-value flag and reproduce the supplied temporal server start-dev command, including its quoted values. Trace how each key/value is parsed before configuration is applied; done means valid dynamic configuration values are accepted and the server starts without the reported invalid JSON error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- backend, cli
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100