feat(controller): clusterconfig-schema-split task 6.1 — CLI flags for hash-table tunables (optional, Req 6)

Adds 11 new CLI flags (--jobmgr-nhash/-delta, --workermgr-nhash/-delta,
--qmgr-nhash/-delta, --resmgr-nhash/-delta/-inst-delta,
--xstrings-nhash/-delta) mirroring the existing --vcpus OPT_*+struct
arguments+myconf_t pattern. Zero behavior change until task 6.2 wires
these into init_controller_tunables().

Review flagged two naming/coverage gaps for task 6.2 to resolve:
xstrings_delta has no corresponding cluster_t.tunables field yet, and
resmgr_inst_delta maps to tunables' existing resmgr_inst by name only.
This commit is contained in:
Rongsong Shen 2026-07-21 07:33:32 +00:00
parent edd79562a4
commit c3107b954a
3 changed files with 156 additions and 1 deletions

View file

@ -39,6 +39,17 @@ typedef struct {
uint32_t wal_sync_ms; /* --wal-sync-ms; 0 = use persist default */
uint32_t max_wal_records; /* --max-wal-records; 0 = use persist default */
uint32_t wal_segment_bytes; /* --wal-segment-bytes; 0 = use persist default */
uint32_t jobmgr_nhash; /* --jobmgr-nhash CLI value; 0 = use hardcoded default */
uint32_t jobmgr_delta; /* --jobmgr-delta CLI value; 0 = use hardcoded default */
uint32_t workermgr_nhash; /* --workermgr-nhash CLI value; 0 = use hardcoded default */
uint32_t workermgr_delta; /* --workermgr-delta CLI value; 0 = use hardcoded default */
uint32_t qmgr_nhash; /* --qmgr-nhash CLI value; 0 = use hardcoded default */
uint32_t qmgr_delta; /* --qmgr-delta CLI value; 0 = use hardcoded default */
uint32_t resmgr_nhash; /* --resmgr-nhash CLI value; 0 = use hardcoded default */
uint32_t resmgr_delta; /* --resmgr-delta CLI value; 0 = use hardcoded default */
uint32_t resmgr_inst_delta; /* --resmgr-inst-delta CLI value; 0 = use hardcoded default */
uint32_t xstrings_nhash; /* --xstrings-nhash CLI value; 0 = use hardcoded default */
uint32_t xstrings_delta; /* --xstrings-delta CLI value; 0 = use hardcoded default */
} myconf_t;
extern cluster_config_t* get_default_conf(void*);