From fbf6887e9da63b63c6abb9736be6ce3723721f26 Mon Sep 17 00:00:00 2001 From: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com> Date: Fri, 28 Aug 2026 15:19:56 +0800 Subject: [PATCH] Revert "fix(namespace): stop the backfill from querying with a null keyword" This reverts commit 639e081ca7c22f28d9ddf290d39f2e013aed2cc3. --- .../PersonalNamespaceProvisioningService.java | 2 +- .../skillhub/domain/user/UserAccountRepository.java | 11 ----------- .../PersonalNamespaceProvisioningServiceTest.java | 2 +- 3 files changed, 2 insertions(+), 13 deletions(-) diff --git a/server/skillhub-domain/src/main/java/com/iflytek/skillhub/domain/namespace/PersonalNamespaceProvisioningService.java b/server/skillhub-domain/src/main/java/com/iflytek/skillhub/domain/namespace/PersonalNamespaceProvisioningService.java index 8c42bac9..b5b3bf81 100644 --- a/server/skillhub-domain/src/main/java/com/iflytek/skillhub/domain/namespace/PersonalNamespaceProvisioningService.java +++ b/server/skillhub-domain/src/main/java/com/iflytek/skillhub/domain/namespace/PersonalNamespaceProvisioningService.java @@ -141,7 +141,7 @@ public class PersonalNamespaceProvisioningService { boolean truncated = false; for (int page = 0; !truncated; page++) { - Page batch = userAccountRepository.findByStatus(UserStatus.ACTIVE, + Page batch = userAccountRepository.search(null, UserStatus.ACTIVE, PageRequest.of(page, BACKFILL_PAGE_SIZE, Sort.by("id"))); if (batch.isEmpty()) { break; diff --git a/server/skillhub-domain/src/main/java/com/iflytek/skillhub/domain/user/UserAccountRepository.java b/server/skillhub-domain/src/main/java/com/iflytek/skillhub/domain/user/UserAccountRepository.java index bcfbb3b3..c0f4f295 100644 --- a/server/skillhub-domain/src/main/java/com/iflytek/skillhub/domain/user/UserAccountRepository.java +++ b/server/skillhub-domain/src/main/java/com/iflytek/skillhub/domain/user/UserAccountRepository.java @@ -14,16 +14,5 @@ public interface UserAccountRepository { List findByIdIn(List ids); Optional findByEmailIgnoreCase(String email); Page search(String keyword, UserStatus status, Pageable pageable); - - /** - * Lists accounts in one status. - * - *

Separate from {@link #search} on purpose: that query compares the keyword with - * {@code lower(...)}, and passing a null keyword leaves PostgreSQL to infer the bind type as - * {@code bytea}, which fails with "function lower(bytea) does not exist". Callers that want - * every account in a status have no keyword to give, so they get a query without one. - */ - Page findByStatus(UserStatus status, Pageable pageable); - UserAccount save(UserAccount user); } diff --git a/server/skillhub-domain/src/test/java/com/iflytek/skillhub/domain/namespace/PersonalNamespaceProvisioningServiceTest.java b/server/skillhub-domain/src/test/java/com/iflytek/skillhub/domain/namespace/PersonalNamespaceProvisioningServiceTest.java index e3b8503a..559ff271 100644 --- a/server/skillhub-domain/src/test/java/com/iflytek/skillhub/domain/namespace/PersonalNamespaceProvisioningServiceTest.java +++ b/server/skillhub-domain/src/test/java/com/iflytek/skillhub/domain/namespace/PersonalNamespaceProvisioningServiceTest.java @@ -63,7 +63,7 @@ class PersonalNamespaceProvisioningServiceTest { } private void directoryContains(UserAccount... users) { - when(userAccountRepository.findByStatus(eq(UserStatus.ACTIVE), any())) + when(userAccountRepository.search(isNull(), eq(UserStatus.ACTIVE), any())) .thenReturn(new PageImpl<>(List.of(users))); }