Skip to content

docs: clarify disabling Optimize/legacy exporter requires an actuator disable#6455

Open
eamonnmoloney wants to merge 2 commits into
mainfrom
support-33221-document-exporter-disable
Open

docs: clarify disabling Optimize/legacy exporter requires an actuator disable#6455
eamonnmoloney wants to merge 2 commits into
mainfrom
support-33221-document-exporter-disable

Conversation

@eamonnmoloney

Copy link
Copy Markdown
Contributor

Which problem does the PR fix?

Follow-up to SUPPORT-33221 ("PVC usage grows, is the exporter disfunctional?") and the broker defect camunda/camunda#52260.

A customer did a within-8.8 chart upgrade and disabled Optimize in the same step. The chart correctly removed the legacy Elasticsearch exporter from the broker's static config (hasLegacyElasticsearchExporter is gated on optimize.enabled, so disabling Optimize drops the exporter). However, the broker's dynamic cluster-configuration reconciliation (ExporterStateInitializer) runs only on partition leaders and relies on gossip to propagate to the remaining brokers. In this cluster one broker never took leadership and gossip did not converge, so the legacy exporter stayed ENABLED on that broker while the others moved it to CONFIG_NOT_FOUND. The aggregated state was UNKNOWN, exportedPosition stayed at -1, log compaction was blocked, and the Zeebe PVC grew for ~72h. It was resolved manually with POST /actuator/exporters/elasticsearch/disable.

This is a broker-side defect (fixed in 8.8.25 via #52260), not a chart defect — the chart does the right thing by removing the static config. The actionable gap on the Helm side is documentation: nothing in charts/ or docs/ told operators that disabling Optimize/the legacy exporter via values does not stop the running exporter and that an explicit actuator disable is required.

The same coupling exists in 8.8, 8.9, and 8.10 (the hasLegacyElasticsearchExporter / hasLegacyOpenSearchExporter helpers all include optimize.enabled), and #52260 affects all versions since 8.6, so the note is added to all three chart READMEs.

What's in this PR?

Adds an [!IMPORTANT] note to the intro of the 8.8, 8.9, and 8.10 chart READMEs explaining that:

  • disabling optimize.enabled / orchestration.exporters.zeebe.enabled only removes the legacy exporter from static config;
  • the dynamic-config reconciliation can fail to converge, leaving the exporter stuck and growing the PVC;
  • operators must run POST /actuator/exporters/{elasticsearch|opensearch}/disable per broker and verify with GET /actuator/exporters;
  • the broker reconciliation fix is #52260 (backported to 8.8.25).

Docs-only; no template/values/golden changes. The intro is hand-maintained content, so make helm.readme-update (which only regenerates the parameter tables) does not affect it.

Checklist

Before opening the PR:

  • In the repo's root dir, run make go.update-golden-only.
  • There is no other open pull request for the same update/change.
  • Tests for charts are added (if needed).
  • In-repo documentation are updated (if needed).

After opening the PR:

  • Did you sign our CLA (Contributor License Agreement)? It will show once you open the PR.
  • Did all checks/tests pass in the PR?

…able

Disabling Optimize (or orchestration.exporters.zeebe.enabled) only removes
the legacy Elasticsearch/OpenSearch exporter from the broker's static config.
The broker's dynamic-config reconciliation runs only on partition leaders and
relies on gossip to converge; if it does not, the exporter can stay stuck in
UNKNOWN/CONFIG_NOT_FOUND, halting log compaction and growing the Zeebe PVC
(SUPPORT-33221). Document the required follow-up actuator disable + how to
verify convergence in the 8.8, 8.9 and 8.10 chart READMEs.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@github-actions github-actions Bot added version/8.8 Camunda applications/cycle version version/8.9 Camunda applications/cycle version version/8.10 Camunda applications/cycle version labels Jun 25, 2026
Per crev review: name the minimum patch version that includes the
camunda/camunda#52260 reconciliation fix in the 8.9 and 8.10 notes, matching
the 8.8 note (8.8.25). Fixed versions per the issue labels: 8.9.3 and
8.10.0-alpha2 (present in all 8.10.x releases).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@eamonnmoloney eamonnmoloney marked this pull request as ready for review June 26, 2026 04:33
@eamonnmoloney eamonnmoloney requested a review from a team as a code owner June 26, 2026 04:33
@eamonnmoloney eamonnmoloney requested review from Ian-wang-liyang and Copilot and removed request for a team June 26, 2026 04:33

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds prominent operator-facing documentation to clarify that disabling Optimize (or disabling the legacy Zeebe Elasticsearch/OpenSearch exporter) via Helm values only removes the exporter from Zeebe’s static configuration, and may still require an explicit actuator disable on each broker to stop the running exporter and avoid PVC growth in non-converging clusters.

Changes:

  • Add an [!IMPORTANT] warning explaining static-vs-dynamic exporter configuration behavior and the potential for non-convergence.
  • Document the required actuator calls (POST /actuator/exporters/{elasticsearch|opensearch}/disable, verify via GET /actuator/exporters) and reference the upstream fix (#52260) with version guidance.
  • Apply the note consistently across the 8.8, 8.9, and 8.10 chart READMEs.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.

File Description
charts/camunda-platform-8.8/README.md Adds an Important note describing the required actuator disable when removing the legacy exporter via values.
charts/camunda-platform-8.9/README.md Same Important note, including the upstream fix reference/version note for 8.9.
charts/camunda-platform-8.10/README.md Adds the same Important note alongside existing 8.10 Important notices.

@eamonnmoloney eamonnmoloney added this pull request to the merge queue Jun 26, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jun 26, 2026
@Ian-wang-liyang Ian-wang-liyang added this pull request to the merge queue Jun 26, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jun 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

version/8.8 Camunda applications/cycle version version/8.9 Camunda applications/cycle version version/8.10 Camunda applications/cycle version

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants