chore: Prune Dev Server dynamic configs#1925
Conversation
| 'worker.buildIdScavengerEnabled=true', | ||
| 'worker.removableBuildIdDurationSinceDefault=1', | ||
| 'component.nexusoperations.recordCancelRequestCompletionEvents=true', | ||
| 'history.enableRequestIdRefLinks=true', |
There was a problem hiding this comment.
What is the best way to find an explanation of what a dynamic config does? I followed some of the links at https://docs.temporal.io/references/dynamic-configuration, but wasn't able to find this one
There was a problem hiding this comment.
Yeah... That's difficult.
For context, there are basically two distinct categories of dynamic configs.
- Some dynamic configs are user-tuneable feature flags, providing server-level or namespace-level control on exposed features and some performance-related options. Those are relatively stable over time, and meant to be used by Temporal server administrators, so we try to document those properly, e.g. on that page you referred to, but the reference is definitely incomplete.
- Other dynamic configs are introduced as gatekeepers for not-yet-stable server-side features. Those are short-lived (just a few server releases, then they get removed), and not something we want to broadly expose to users. Now, we (Temporalites) obviously see a lot of those, even though the exact signification of a given dynamic config is often a bit obscure to anyone outside that specific feature crew.
Most dynamic configs (all that start with frontend, history, matching or worker) should be defined in this file. So you can walk that file at various tags and branches to see when a specific flag was added, what's its default value, and whether it is still pertinent on latest releases.
From there, you may also get the constant used by the server to identify that feature, and search the code base to see what is gated by that constant.
What was changed