From 1a95f58ae146d17223c207452934ef4605b55cd6 Mon Sep 17 00:00:00 2001 From: dlguddn3024 Date: Fri, 9 May 2025 11:35:42 +0900 Subject: [PATCH 1/3] Skip metadata lookup for top-level collections in MappingRedisConverter Signed-off-by: dlguddn3024 --- .../redis/core/convert/MappingRedisConverter.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/main/java/org/springframework/data/redis/core/convert/MappingRedisConverter.java b/src/main/java/org/springframework/data/redis/core/convert/MappingRedisConverter.java index 1cea9a221a..4c3d60cd41 100644 --- a/src/main/java/org/springframework/data/redis/core/convert/MappingRedisConverter.java +++ b/src/main/java/org/springframework/data/redis/core/convert/MappingRedisConverter.java @@ -404,6 +404,17 @@ public void write(Object source, RedisData sink) { return; } + if (source instanceof Collection) { + writeCollection( + sink.getKeyspace(), + "", + (List) source, + TypeInformation.of(Object.class), + sink + ); + return; + } + RedisPersistentEntity entity = mappingContext.getPersistentEntity(source.getClass()); if (!customConversions.hasCustomWriteTarget(source.getClass())) { From c3dd7a1f830ebf16b2d18ccc3a4dc74231f189ba Mon Sep 17 00:00:00 2001 From: dlguddn3024 Date: Fri, 9 May 2025 11:37:35 +0900 Subject: [PATCH 2/3] Annotate writePlainList test with GH-2168 and remove Java-8 restriction Signed-off-by: dlguddn3024 --- .../redis/core/convert/MappingRedisConverterUnitTests.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/test/java/org/springframework/data/redis/core/convert/MappingRedisConverterUnitTests.java b/src/test/java/org/springframework/data/redis/core/convert/MappingRedisConverterUnitTests.java index c70b933f07..702702fa03 100644 --- a/src/test/java/org/springframework/data/redis/core/convert/MappingRedisConverterUnitTests.java +++ b/src/test/java/org/springframework/data/redis/core/convert/MappingRedisConverterUnitTests.java @@ -1997,9 +1997,8 @@ void readGenericEntity() { assertThat(generic.entity.name).isEqualTo("hello"); } - @Test // DATAREDIS-1175 - @EnabledOnJre(JRE.JAVA_8) - // FIXME: https://github.com/spring-projects/spring-data-redis/issues/2168 + @Test // GH-2168 +// @EnabledOnJre(JRE.JAVA_8) void writePlainList() { List source = Arrays.asList("Hello", "stream", "message", 100L); From 43c473ca662bbc6df661cbf98286a9ab2deff5d7 Mon Sep 17 00:00:00 2001 From: dlguddn3024 Date: Fri, 9 May 2025 12:23:58 +0900 Subject: [PATCH 3/3] Add author annotation to headers of modified classes Signed-off-by: dlguddn3024 --- .../data/redis/core/convert/MappingRedisConverter.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/org/springframework/data/redis/core/convert/MappingRedisConverter.java b/src/main/java/org/springframework/data/redis/core/convert/MappingRedisConverter.java index 4c3d60cd41..8e64933956 100644 --- a/src/main/java/org/springframework/data/redis/core/convert/MappingRedisConverter.java +++ b/src/main/java/org/springframework/data/redis/core/convert/MappingRedisConverter.java @@ -109,6 +109,7 @@ * @author Greg Turnquist * @author Mark Paluch * @author Golam Mazid Sajib + * @author Leehyoungwoo * @since 1.7 */ public class MappingRedisConverter implements RedisConverter, InitializingBean {