The GitHub Actions job "CI" on rocketmq-dashboard.git/fix/datasource-delete-body has failed. Run started by GitHub user lizhimins (triggered by lizhimins).
Head commit for run: c6b01dd2f31f2b583aa3316ef41dd201719e9d99 / unbridled-41 <[email protected]> fix(acl): translate a duplicate username on the plain-access update path `createAndUpdatePlainAccessConfig` rewrites `username` to the accessKey (`entity.setUsername(config.getAccessKey())`) and updates by id, but only its insert branch translates a unique-key collision: if (existing != null) { userMapper.updateById(entity); // uk_username violation escapes } else { try { userMapper.insert(entity); } catch (DuplicateKeyException e) { ... 409 ... } } So when another row already owns that username - the account was renamed away from it through the ACL users form and the name was taken afterwards, or both happen concurrently - the DuplicateKeyException reached the generic handler as 500 "Internal Server Error", and the whole upsert (account plus its rule replacement) rolled back with no usable reason. `saveUser`, `replaceUser` and this method's own insert already answer 409 with `aclUserConflict`; the update branch was the one path left out (the merged duplicate-key fix #5072 covered the other two). Translate it the same way. Tests (server/): mvn -o -B -ntp test -Dtest='MybatisPlusAclRepositoryTest' -> Tests run: 26, Failures: 0, Errors: 0; the new case fails before this change (the raw DuplicateKeyException escapes) and passes after it, asserting no rule write; checkstyle passes. Report URL: https://github.com/apache/rocketmq-dashboard/actions/runs/38222248960 With regards, GitHub Actions via GitBox
