The GitHub Actions job "CI" on rocketmq-dashboard.git/fix/btl-aliyun-cred-race has failed. Run started by GitHub user btlqql (triggered by btlqql).
Head commit for run: 0d54284b7ebd144240addde34e3aae8e25af7f3f / btlqql <[email protected]> fix(alibaba): evict an Aliyun client published during credential rotation AliyunClientFactory.client() published a new client with a bare computeIfAbsent while invalidateCredential() evicted the matching entries with removeIf, so the two operations were not mutually exclusive. A lookup that was already building its client when a credential was rotated removed nothing and the client built from the old secret was published into the cache right after the invalidation returned; later lookups kept reusing it. Creation and invalidation now share the factory's monitor, the same way TencentClientFactory already coordinates them, so a client that is still being created is always published before the eviction runs and is evicted by it. Regression: AliyunClientFactoryTest#invalidateCredentialShouldEvictClientCreatedDuringRotationTest fails on the unmodified tree (the next lookup returns the pre-rotation client) and passes with the fix. Report URL: https://github.com/apache/rocketmq-dashboard/actions/runs/36959044242 With regards, GitHub Actions via GitBox
