This is an automated email from the ASF dual-hosted git repository.

Aias00 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shenyu.git


The following commit(s) were added to refs/heads/master by this push:
     new 23944812cc [type:fix] page the instance info list query in the 
database (#6807) (#7216)
23944812cc is described below

commit 23944812ccd09a71eb2639e91abe4fabb47d8f27
Author: HY-love-sleep <[email protected]>
AuthorDate: Sat Sep 26 07:17:27 2026 +0800

    [type:fix] page the instance info list query in the database (#6807) (#7216)
---
 .../shenyu/admin/service/impl/InstanceInfoServiceImpl.java    |  2 ++
 .../apache/shenyu/admin/service/InstanceInfoServiceTest.java  | 11 +++++++++++
 2 files changed, 13 insertions(+)

diff --git 
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/InstanceInfoServiceImpl.java
 
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/InstanceInfoServiceImpl.java
index 62fcf2dd9c..4a6ee389a6 100644
--- 
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/InstanceInfoServiceImpl.java
+++ 
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/InstanceInfoServiceImpl.java
@@ -17,6 +17,7 @@
 
 package org.apache.shenyu.admin.service.impl;
 
+import org.apache.shenyu.admin.aspect.annotation.Pageable;
 import org.apache.shenyu.admin.mapper.InstanceInfoMapper;
 import org.apache.shenyu.admin.model.entity.InstanceInfoDO;
 import org.apache.shenyu.admin.model.page.CommonPager;
@@ -77,6 +78,7 @@ public class InstanceInfoServiceImpl implements 
InstanceInfoService {
         instanceInfoMapper.updateById(infoDO);
     }
 
+    @Pageable
     @Override
     public CommonPager<InstanceInfoVO> listByPage(final InstanceQuery 
instanceQuery) {
         List<InstanceInfoDO> instanceInfoDOList = 
instanceInfoMapper.selectByQuery(instanceQuery);
diff --git 
a/shenyu-admin/src/test/java/org/apache/shenyu/admin/service/InstanceInfoServiceTest.java
 
b/shenyu-admin/src/test/java/org/apache/shenyu/admin/service/InstanceInfoServiceTest.java
index 59ca4e3254..2b0aa293f7 100644
--- 
a/shenyu-admin/src/test/java/org/apache/shenyu/admin/service/InstanceInfoServiceTest.java
+++ 
b/shenyu-admin/src/test/java/org/apache/shenyu/admin/service/InstanceInfoServiceTest.java
@@ -17,6 +17,7 @@
 
 package org.apache.shenyu.admin.service;
 
+import org.apache.shenyu.admin.aspect.annotation.Pageable;
 import org.apache.shenyu.admin.mapper.InstanceInfoMapper;
 import org.apache.shenyu.admin.model.entity.InstanceInfoDO;
 import org.apache.shenyu.admin.model.page.CommonPager;
@@ -31,6 +32,7 @@ import org.mockito.InjectMocks;
 import org.mockito.Mock;
 import org.mockito.junit.jupiter.MockitoExtension;
 
+import java.lang.reflect.Method;
 import java.sql.Timestamp;
 import java.util.Collections;
 import java.util.List;
@@ -38,6 +40,7 @@ import java.util.List;
 import static org.hamcrest.MatcherAssert.assertThat;
 import static org.hamcrest.Matchers.hasSize;
 import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
 import static org.junit.jupiter.api.Assertions.assertNotNull;
 import static org.junit.jupiter.api.Assertions.assertNull;
 import static org.mockito.ArgumentMatchers.any;
@@ -129,6 +132,14 @@ public final class InstanceInfoServiceTest {
         return v;
     }
 
+    @Test
+    public void testListByPageIsPageable() throws NoSuchMethodException {
+        // instance_info is a TEXT column holding the whole instance metadata 
JSON, so without
+        // @Pageable one list request loads every row of the namespace into 
memory
+        Method listByPage = 
InstanceInfoServiceImpl.class.getDeclaredMethod("listByPage", 
InstanceQuery.class);
+        assertTrue(listByPage.isAnnotationPresent(Pageable.class));
+    }
+
     private InstanceInfoDO buildDO() {
         InstanceInfoDO d = new InstanceInfoDO();
         d.setId("id-1");

Reply via email to