Skip to content

[fix][common] Resolve ControlConfig linkage and restore CI - #1484

Merged
ketor merged 2 commits into
mainfrom
fix/ci-build-20260902
Sep 3, 2026
Merged

ketor merged 2 commits into
mainfrom
fix/ci-build-20260902

Conversation

@ketor

@ketor ketor commented Sep 1, 2026 •

Copy link
Copy Markdown
Contributor

Runtime fix

  • resolve every production boolean ControlConfig flag by registered gflags name, removing the direct reference to the internal braft symbol that broke static linking
  • run registered validators consistently and preserve the Dingo warning for every dangerous raft-meta enable request
  • report missing flags, invalid values, and validator rejection through the per-variable response
  • make the BR client treat per-variable errors as node failures instead of reporting false success

CI fix

  • use the Ubuntu dingo-eureka dependency image and pin DINGO_EUREKA_INSTALL_PATH explicitly
  • install the Rust 1.78 toolchain required by tantivy
  • compile unit tests and run the ControlConfig regression suites in Ubuntu CI
  • align the Docker build guide with the dependency image used by CI

Review remediation

  • split runtime and CI changes into separate commits with explanatory bodies
  • replace duplicate bool handlers with HandleBoolControlConfigVariableByName
  • add direct tests for unknown flags, invalid values, already-set values, numeric bools, validator rejection, and braft flag registration
  • guard fixture restoration after failed registration setup

Fixes the failures in runs 33480985469 and 33480985453.

@ketor
ketor force-pushed the fix/ci-build-20260902 branch 3 times, most recently from 5a243d6 to d926d8e Compare September 1, 2026 18:45
Prebuilt braft archives may not export the internal raft_meta_force_no_sync symbol, which made the server fail at link time. Resolve all production boolean controls through the gflags registry so validators run consistently. Missing registrations and validator rejections remain per-variable errors, and the BR client now surfaces those errors to operators.
@ketor
ketor force-pushed the fix/ci-build-20260902 branch from d926d8e to 6308415 Compare September 3, 2026 02:48
@ketor ketor changed the title [fix][ci] Fix Ubuntu dependency lookup and braft flag linkage [fix][common] Resolve ControlConfig linkage and restore CI Sep 3, 2026
Use the Ubuntu dingo-eureka image that contains the dependency prefix, install the pinned Rust toolchain required by tantivy, and set the prefix explicitly because GitHub Actions overrides HOME. Build unit tests in CI and run the ControlConfig regression suite.
@ketor
ketor force-pushed the fix/ci-build-20260902 branch from 6308415 to fefd66e Compare September 3, 2026 04:10
@ketor
ketor merged commit 885516b into main Sep 3, 2026
4 checks passed

@yuhaijun999 yuhaijun999 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

LGTM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants