The GitHub Actions job "CI" on 
rocketmq-dashboard.git/fix/cluster-queue-count-mirror has failed.
Run started by GitHub user unbridled-41 (triggered by unbridled-41).

Head commit for run:
72950328f5edfb11c6f2122e7f3c7be4de6489c3 / unbridled-41 
<[email protected]>
fix(cluster): keep the broker queue counts in step when one is edited

The broker config dialog exposes 写队列数 and 读队列数 as two inputs whose
shared tooltip states they must match, but neither input is validated and the
submit path always sends both. Editing one of them therefore submitted the
other's stale value, and ClusterService.requireMatchingDefaultQueueNums
rejects the mismatched pair with a 400 for preview, update and propose alike.
The dialog then reported it as "Broker config update failed, check: " with an
empty broker list, so the operator had no way to learn the cause.

The backend already supports the single-field edit: applyConfig mirrors
whichever count is supplied onto the other, precisely so a partial update
matches the broker's one defaultTopicQueueNums property (#1075). The console
just never sent one.

Mirror the value in the form's onValuesChange so the partner input visibly
follows the edit: the submitted pair always matches, the broker's single
property is respected, and the tooltip stops describing a rule the dialog
could not satisfy. The guard skips an unchanged partner so setFieldsValue's
re-entrant onValuesChange cannot loop.

Tested: ClusterPage.test.tsx -> 31 passed; the new regression fails with
"Expected the element to have value: 16, Received: 8" when the mirror is
removed. tsc -b and eslint clean.

Report URL: 
https://github.com/apache/rocketmq-dashboard/actions/runs/37087999161

With regards,
GitHub Actions via GitBox

Reply via email to