Wrapper
Wrapper

Reputation: 932

Why Spring Redis generates additional query?

I have Spring Boot 3.1.5 simple app where I'm trying to integrate Redis. I'm using redis-om-spring 0.8.7 (this pulls in Jedis client and spring-data-redis).

I'm using @com.redis.om.spring.annotations.Document since I want to store JSON. I also have @EnableRedisDocumentRepositories(basePackages = "my.root.ms.repository.json") on a main @SpringBootApplication class. Other then that, I don't have any specific config class related to Redis.

My entity:

@Data
@NoArgsConstructor
@AllArgsConstructor
@Document
@Builder
public class Session {

    @Id
    private Long id;

    @Searchable
    private String name;

    @Indexed
    private int duration;
}

My repo:

@Repository
public interface SessionRepository extends RedisDocumentRepository<Session, Long> {}

I tried to insert a object but I see two times EXISTS command/query from MONITOR cli tab. Why is that?

Session s = sessionRepository.save(Session.builder().name("my-ses12").duration(1222).build());

1713091750.214191 [0 172.28.0.1:60560] "EXISTS" "com.my.root.ms.entity.Session:4795380413229830883"
1713091750.218483 [0 172.28.0.1:60560] "EXISTS" "com.my.root.ms.entity.Session:4795380413229830883"
1713091750.226200 [0 172.28.0.1:60566] "JSON.SET" "com.my.root.ms.entity.Session:4795380413229830883" "." "{\"id\":4795380413229830883,\"name\":\"my-ses12\",\"duration\":1222}"

Maybe a topic for separate question, but how to log queries issued from Spring Data/Redis in the stdout from Spring app instead of looking into monitor?

Upvotes: 0

Views: 27

Answers (0)

Related Questions