diff options
author | Alain Kermis <alain.kermis@sonarsource.com> | 2023-03-14 16:15:16 +0100 |
---|---|---|
committer | Philippe Perrin <philippe.perrin@sonarsource.com> | 2023-03-17 10:08:02 +0100 |
commit | 0eb2911cd30df0435dc78850a08303a1ea435f36 (patch) | |
tree | 3462911838a19ae6ba2d8632a3f351ff9f7e9f49 | |
parent | 545f09ba0f871b1b0736dfe3eca68cc16e81fcc8 (diff) | |
download | sonarqube-0eb2911cd30df0435dc78850a08303a1ea435f36.tar.gz sonarqube-0eb2911cd30df0435dc78850a08303a1ea435f36.zip |
SONAR-18589 Fix system info user count
4 files changed, 20 insertions, 0 deletions
diff --git a/server/sonar-db-dao/src/it/java/org/sonar/db/user/UserDaoIT.java b/server/sonar-db-dao/src/it/java/org/sonar/db/user/UserDaoIT.java index d9bb04089db..1b9d348c1fb 100644 --- a/server/sonar-db-dao/src/it/java/org/sonar/db/user/UserDaoIT.java +++ b/server/sonar-db-dao/src/it/java/org/sonar/db/user/UserDaoIT.java @@ -408,6 +408,16 @@ public class UserDaoIT { } @Test + public void count_active_users() { + db.users().insertUser(); + db.users().insertUser(); + db.users().insertUser(); + db.users().insertUser(c -> c.setActive(false)); + + assertThat(underTest.countActiveUsers(db.getSession())).isEqualTo(3); + } + + @Test public void clean_user_homepage() { UserDto user = newUserDto().setHomepageType("RANDOM").setHomepageParameter("any-string"); diff --git a/server/sonar-db-dao/src/main/java/org/sonar/db/user/UserDao.java b/server/sonar-db-dao/src/main/java/org/sonar/db/user/UserDao.java index 442edf73596..8387c648d9b 100644 --- a/server/sonar-db-dao/src/main/java/org/sonar/db/user/UserDao.java +++ b/server/sonar-db-dao/src/main/java/org/sonar/db/user/UserDao.java @@ -189,6 +189,10 @@ public class UserDao implements Dao { return mapper(dbSession).countActiveSonarlintUsers(threshold); } + public long countActiveUsers(DbSession dbSession) { + return mapper(dbSession).countActiveUsers(); + } + public void scrollByUuids(DbSession dbSession, Collection<String> uuids, Consumer<UserDto> consumer) { UserMapper mapper = mapper(dbSession); diff --git a/server/sonar-db-dao/src/main/java/org/sonar/db/user/UserMapper.java b/server/sonar-db-dao/src/main/java/org/sonar/db/user/UserMapper.java index 3bc198edb01..8676a8a04a2 100644 --- a/server/sonar-db-dao/src/main/java/org/sonar/db/user/UserMapper.java +++ b/server/sonar-db-dao/src/main/java/org/sonar/db/user/UserMapper.java @@ -81,4 +81,6 @@ public interface UserMapper { void clearHomepage(@Param("login") String login, @Param("now") long now); long countActiveSonarlintUsers(@Param("sinceDate") long sinceDate); + + long countActiveUsers(); } diff --git a/server/sonar-db-dao/src/main/resources/org/sonar/db/user/UserMapper.xml b/server/sonar-db-dao/src/main/resources/org/sonar/db/user/UserMapper.xml index abab22c8757..2f5ae52d2ec 100644 --- a/server/sonar-db-dao/src/main/resources/org/sonar/db/user/UserMapper.xml +++ b/server/sonar-db-dao/src/main/resources/org/sonar/db/user/UserMapper.xml @@ -269,4 +269,8 @@ where last_sonarlint_connection > #{sinceDate,jdbcType=BIGINT} </select> + <select id="countActiveUsers" resultType="long"> + select count(1) from users u WHERE u.active=${_true} + </select> + </mapper> |