uber / cadence

Cadence is a distributed, scalable, durable, and highly available orchestration engine to execute asynchronous long-running business logic in a scalable and resilient way.
https://cadenceworkflow.io
MIT License
8.16k stars 787 forks source link

I am getting "Config file corrupted" when deploying to Kubernetes using MySQL #5923

Open monawwar-appointy opened 4 months ago

monawwar-appointy commented 4 months ago

Version of Cadence server, and client(which language) This is very important to root cause bugs.

Describe the bug I am trying to deploy Cadence on GCP using Kubernetes with managed MySQL database. When I start the server, I am getting errors (check logs below). But when I use Cassandra database (running Cassandra inside pod), everything works fine.

Error:

....
2024/04/19 09:06:02 Loading config; env=docker,zone=,configDir=/etc/cadence/config
2024/04/19 09:06:02 Loading configFiles=[/etc/cadence/config/docker.yaml]
Config file corrupted: unable to create yaml parser: couldn't merge YAML sources: couldn't decode source: yaml: line 17: found character that cannot start any token
....

To Reproduce Is the issue reproducible?

Steps to reproduce the behavior: Deploy on Kubernetes using MySQL database

Expected behavior It should be able to start the server

Screenshots

Screenshot 2024-04-19 at 14 41 21

Additional context It works fine on local machine.

demirkayaender commented 4 months ago

Just to clarify, do you mean it works fine with MySQL on your local machine (referring to "Additional context")?

mantas-sidlauskas commented 4 months ago

@monawwar-appointy hey, can you check what's on line 17 in your config?

mantas-sidlauskas commented 4 months ago

I think this might be related to config ENV expansion. I have a fix here: https://github.com/uber/cadence/pull/5931