diff --git a/meeting/logs/meeting-service.log b/meeting/logs/meeting-service.log index 537878c..cbe34a1 100644 --- a/meeting/logs/meeting-service.log +++ b/meeting/logs/meeting-service.log @@ -1,305 +1,243 @@ -2025-10-26 00:01:27 [HikariPool-1 housekeeper] WARN com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Retrograde clock change detected (housekeeper delta=29s829ms), soft-evicting connections from pool. -2025-10-26 00:03:37 [lettuce-nioEventLoop-6-4] INFO i.l.core.protocol.CommandHandler - null Unexpected exception during request: java.net.SocketException: Connection reset -java.net.SocketException: Connection reset - at java.base/sun.nio.ch.SocketChannelImpl.throwConnectionReset(SocketChannelImpl.java:401) - at java.base/sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:434) - at io.netty.buffer.PooledByteBuf.setBytes(PooledByteBuf.java:255) - at io.netty.buffer.AbstractByteBuf.writeBytes(AbstractByteBuf.java:1132) - at io.netty.channel.socket.nio.NioSocketChannel.doReadBytes(NioSocketChannel.java:356) - at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:151) - at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:788) - at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724) - at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650) - at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:562) - at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) - at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) - at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) - at java.base/java.lang.Thread.run(Thread.java:1583) -2025-10-26 00:03:37 [lettuce-eventExecutorLoop-1-6] INFO i.l.core.protocol.ConnectionWatchdog - Reconnecting, last destination was /20.249.177.114:6379 -2025-10-26 00:03:37 [lettuce-nioEventLoop-6-5] INFO i.l.c.protocol.ReconnectionHandler - Reconnected to 20.249.177.114/:6379 -2025-10-26 00:07:54 [lettuce-nioEventLoop-6-5] INFO i.l.core.protocol.CommandHandler - null Unexpected exception during request: java.net.SocketException: Connection reset -java.net.SocketException: Connection reset - at java.base/sun.nio.ch.SocketChannelImpl.throwConnectionReset(SocketChannelImpl.java:401) - at java.base/sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:434) - at io.netty.buffer.PooledByteBuf.setBytes(PooledByteBuf.java:255) - at io.netty.buffer.AbstractByteBuf.writeBytes(AbstractByteBuf.java:1132) - at io.netty.channel.socket.nio.NioSocketChannel.doReadBytes(NioSocketChannel.java:356) - at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:151) - at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:788) - at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724) - at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650) - at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:562) - at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) - at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) - at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) - at java.base/java.lang.Thread.run(Thread.java:1583) -2025-10-26 00:07:54 [lettuce-eventExecutorLoop-1-7] INFO i.l.core.protocol.ConnectionWatchdog - Reconnecting, last destination was /20.249.177.114:6379 -2025-10-26 00:07:54 [lettuce-nioEventLoop-6-6] INFO i.l.c.protocol.ReconnectionHandler - Reconnected to 20.249.177.114/:6379 -2025-10-26 00:12:06 [lettuce-nioEventLoop-6-6] INFO i.l.core.protocol.CommandHandler - null Unexpected exception during request: java.net.SocketException: Connection reset -java.net.SocketException: Connection reset - at java.base/sun.nio.ch.SocketChannelImpl.throwConnectionReset(SocketChannelImpl.java:401) - at java.base/sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:434) - at io.netty.buffer.PooledByteBuf.setBytes(PooledByteBuf.java:255) - at io.netty.buffer.AbstractByteBuf.writeBytes(AbstractByteBuf.java:1132) - at io.netty.channel.socket.nio.NioSocketChannel.doReadBytes(NioSocketChannel.java:356) - at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:151) - at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:788) - at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724) - at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650) - at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:562) - at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) - at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) - at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) - at java.base/java.lang.Thread.run(Thread.java:1583) -2025-10-26 00:12:06 [lettuce-eventExecutorLoop-1-1] INFO i.l.core.protocol.ConnectionWatchdog - Reconnecting, last destination was /20.249.177.114:6379 -2025-10-26 00:12:06 [lettuce-nioEventLoop-6-7] INFO i.l.c.protocol.ReconnectionHandler - Reconnected to 20.249.177.114/:6379 -2025-10-26 00:13:01 [parallel-4] INFO c.a.c.a.i.ActiveClientTokenManager - {"az.sdk.message":"Refreshing token.","scopes":"amqp://hgzero-eventhub-ns.servicebus.windows.net/hgzero-eventhub-name"} -2025-10-26 00:14:11 [SpringApplicationShutdownHook] INFO c.a.m.e.i.EventHubConnectionProcessor - {"az.sdk.message":"Upstream connection publisher was completed. Terminating processor.","entityPath":"hgzero-eventhub-name"} -2025-10-26 00:14:11 [SpringApplicationShutdownHook] INFO c.a.c.a.i.ReactorConnection - {"az.sdk.message":"Disposing of ReactorConnection.","connectionId":"MF_815c03_1761403649483","isTransient":false,"isInitiatedByClient":true,"shutdownMessage":"Disposed by client."} -2025-10-26 00:14:11 [SpringApplicationShutdownHook] INFO c.a.m.e.i.EventHubConnectionProcessor - {"az.sdk.message":"Channel is disposed.","entityPath":"hgzero-eventhub-name"} -2025-10-26 00:14:11 [SpringApplicationShutdownHook] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' -2025-10-26 00:14:11 [SpringApplicationShutdownHook] TRACE o.h.type.spi.TypeConfiguration$Scope - Handling #sessionFactoryClosed from [org.hibernate.internal.SessionFactoryImpl@64ee9290] for TypeConfiguration -2025-10-26 00:14:11 [SpringApplicationShutdownHook] DEBUG o.h.type.spi.TypeConfiguration$Scope - Un-scoping TypeConfiguration [org.hibernate.type.spi.TypeConfiguration$Scope@203a266] from SessionFactory [org.hibernate.internal.SessionFactoryImpl@64ee9290] -2025-10-26 00:14:11 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated... -2025-10-26 00:14:11 [reactor-executor-1] INFO c.a.c.a.i.handler.SessionHandler - {"az.sdk.message":"onSessionRemoteClose","connectionId":"MF_815c03_1761403649483","errorCondition":null,"errorDescription":null,"sessionName":"hgzero-eventhub-name"} -2025-10-26 00:14:11 [reactor-executor-1] INFO c.a.c.a.i.handler.SessionHandler - {"az.sdk.message":"onSessionRemoteClose","connectionId":"MF_815c03_1761403649483","errorCondition":null,"errorDescription":null,"sessionName":"cbs-session"} -2025-10-26 00:14:12 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown completed. -2025-10-26 09:23:56 [main] INFO c.u.h.meeting.MeetingApplication - Starting MeetingApplication using Java 21.0.8 with PID 58894 (/Users/daewoong/home/workspace/HGZero/meeting/build/classes/java/main started by daewoong in /Users/daewoong/home/workspace/HGZero/meeting) -2025-10-26 09:23:56 [main] DEBUG c.u.h.meeting.MeetingApplication - Running with Spring Boot v3.3.5, Spring v6.1.14 -2025-10-26 09:23:56 [main] INFO c.u.h.meeting.MeetingApplication - The following 1 profile is active: "dev" -2025-10-26 09:23:56 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode -2025-10-26 09:23:56 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2025-10-26 09:23:56 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 61 ms. Found 6 JPA repository interfaces. -2025-10-26 09:23:57 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode -2025-10-26 09:23:57 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode. -2025-10-26 09:23:57 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.MeetingJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-10-26 09:23:57 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.MinutesJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-10-26 09:23:57 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.MinutesSectionJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-10-26 09:23:57 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.SessionJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-10-26 09:23:57 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.TemplateJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-10-26 09:23:57 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.TodoJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-10-26 09:23:57 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 12 ms. Found 0 Redis repository interfaces. -2025-10-26 09:23:57 [main] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port 8082 (http) -2025-10-26 09:23:57 [main] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] -2025-10-26 09:23:57 [main] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.31] -2025-10-26 09:23:57 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext -2025-10-26 09:23:57 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 1017 ms -2025-10-26 09:23:57 [main] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-10-26 09:23:57 [main] INFO org.hibernate.Version - HHH000412: Hibernate ORM core version 6.5.3.Final -2025-10-26 09:23:57 [main] INFO o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration boolean -> org.hibernate.type.BasicTypeReference@796fe2b5 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration boolean -> org.hibernate.type.BasicTypeReference@796fe2b5 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Boolean -> org.hibernate.type.BasicTypeReference@796fe2b5 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration numeric_boolean -> org.hibernate.type.BasicTypeReference@5a6af2c4 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.NumericBooleanConverter -> org.hibernate.type.BasicTypeReference@5a6af2c4 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration true_false -> org.hibernate.type.BasicTypeReference@123c48d0 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.TrueFalseConverter -> org.hibernate.type.BasicTypeReference@123c48d0 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration yes_no -> org.hibernate.type.BasicTypeReference@14fff5e7 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.YesNoConverter -> org.hibernate.type.BasicTypeReference@14fff5e7 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration byte -> org.hibernate.type.BasicTypeReference@1203d787 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration byte -> org.hibernate.type.BasicTypeReference@1203d787 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Byte -> org.hibernate.type.BasicTypeReference@1203d787 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration binary -> org.hibernate.type.BasicTypeReference@1f72fbd1 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration byte[] -> org.hibernate.type.BasicTypeReference@1f72fbd1 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration [B -> org.hibernate.type.BasicTypeReference@1f72fbd1 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration binary_wrapper -> org.hibernate.type.BasicTypeReference@6f785a27 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration wrapper-binary -> org.hibernate.type.BasicTypeReference@6f785a27 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration image -> org.hibernate.type.BasicTypeReference@443dae2 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration blob -> org.hibernate.type.BasicTypeReference@8f09a02 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Blob -> org.hibernate.type.BasicTypeReference@8f09a02 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_blob -> org.hibernate.type.BasicTypeReference@5454be -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_blob_wrapper -> org.hibernate.type.BasicTypeReference@2dd08ff1 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration short -> org.hibernate.type.BasicTypeReference@37dec463 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration short -> org.hibernate.type.BasicTypeReference@37dec463 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Short -> org.hibernate.type.BasicTypeReference@37dec463 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration integer -> org.hibernate.type.BasicTypeReference@3bf26810 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration int -> org.hibernate.type.BasicTypeReference@3bf26810 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Integer -> org.hibernate.type.BasicTypeReference@3bf26810 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration long -> org.hibernate.type.BasicTypeReference@19213a74 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration long -> org.hibernate.type.BasicTypeReference@19213a74 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Long -> org.hibernate.type.BasicTypeReference@19213a74 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration float -> org.hibernate.type.BasicTypeReference@30a791a6 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration float -> org.hibernate.type.BasicTypeReference@30a791a6 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Float -> org.hibernate.type.BasicTypeReference@30a791a6 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration double -> org.hibernate.type.BasicTypeReference@719bb60d -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration double -> org.hibernate.type.BasicTypeReference@719bb60d -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Double -> org.hibernate.type.BasicTypeReference@719bb60d -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration big_integer -> org.hibernate.type.BasicTypeReference@5981f2c6 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.math.BigInteger -> org.hibernate.type.BasicTypeReference@5981f2c6 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration big_decimal -> org.hibernate.type.BasicTypeReference@49639118 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.math.BigDecimal -> org.hibernate.type.BasicTypeReference@49639118 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration character -> org.hibernate.type.BasicTypeReference@45451333 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration char -> org.hibernate.type.BasicTypeReference@45451333 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Character -> org.hibernate.type.BasicTypeReference@45451333 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration character_nchar -> org.hibernate.type.BasicTypeReference@6942ee48 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration string -> org.hibernate.type.BasicTypeReference@3f033664 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.String -> org.hibernate.type.BasicTypeReference@3f033664 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration nstring -> org.hibernate.type.BasicTypeReference@6abd8bcd -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration characters -> org.hibernate.type.BasicTypeReference@70cd122 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration char[] -> org.hibernate.type.BasicTypeReference@70cd122 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration [C -> org.hibernate.type.BasicTypeReference@70cd122 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration wrapper-characters -> org.hibernate.type.BasicTypeReference@79424f25 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration text -> org.hibernate.type.BasicTypeReference@5fd4e67f -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ntext -> org.hibernate.type.BasicTypeReference@59b1edab -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration clob -> org.hibernate.type.BasicTypeReference@3855b27e -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Clob -> org.hibernate.type.BasicTypeReference@3855b27e -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration nclob -> org.hibernate.type.BasicTypeReference@5305f936 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.NClob -> org.hibernate.type.BasicTypeReference@5305f936 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_clob -> org.hibernate.type.BasicTypeReference@2b1a1a37 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_clob_char_array -> org.hibernate.type.BasicTypeReference@7d90764a -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_clob_character_array -> org.hibernate.type.BasicTypeReference@6843fdc4 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_nclob -> org.hibernate.type.BasicTypeReference@147375b3 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_nclob_character_array -> org.hibernate.type.BasicTypeReference@6f430ea8 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_nclob_char_array -> org.hibernate.type.BasicTypeReference@119f072c -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration Duration -> org.hibernate.type.BasicTypeReference@66456506 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.Duration -> org.hibernate.type.BasicTypeReference@66456506 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration LocalDateTime -> org.hibernate.type.BasicTypeReference@69944a90 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.LocalDateTime -> org.hibernate.type.BasicTypeReference@69944a90 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration LocalDate -> org.hibernate.type.BasicTypeReference@1ed52f44 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.LocalDate -> org.hibernate.type.BasicTypeReference@1ed52f44 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration LocalTime -> org.hibernate.type.BasicTypeReference@771afdd5 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.LocalTime -> org.hibernate.type.BasicTypeReference@771afdd5 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetDateTime -> org.hibernate.type.BasicTypeReference@3abadb65 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.OffsetDateTime -> org.hibernate.type.BasicTypeReference@3abadb65 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetDateTimeWithTimezone -> org.hibernate.type.BasicTypeReference@7131d668 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetDateTimeWithoutTimezone -> org.hibernate.type.BasicTypeReference@46a97805 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTime -> org.hibernate.type.BasicTypeReference@667dd150 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.OffsetTime -> org.hibernate.type.BasicTypeReference@667dd150 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTimeUtc -> org.hibernate.type.BasicTypeReference@af04f09 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTimeWithTimezone -> org.hibernate.type.BasicTypeReference@758d4aa9 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTimeWithoutTimezone -> org.hibernate.type.BasicTypeReference@78e97d4d -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZonedDateTime -> org.hibernate.type.BasicTypeReference@7096d451 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.ZonedDateTime -> org.hibernate.type.BasicTypeReference@7096d451 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZonedDateTimeWithTimezone -> org.hibernate.type.BasicTypeReference@7816454d -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZonedDateTimeWithoutTimezone -> org.hibernate.type.BasicTypeReference@67d180e4 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration date -> org.hibernate.type.BasicTypeReference@54e18a46 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Date -> org.hibernate.type.BasicTypeReference@54e18a46 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration time -> org.hibernate.type.BasicTypeReference@1293f8d7 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Time -> org.hibernate.type.BasicTypeReference@1293f8d7 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration timestamp -> org.hibernate.type.BasicTypeReference@58e5fbe5 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Timestamp -> org.hibernate.type.BasicTypeReference@58e5fbe5 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.Date -> org.hibernate.type.BasicTypeReference@58e5fbe5 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration calendar -> org.hibernate.type.BasicTypeReference@335896bd -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.Calendar -> org.hibernate.type.BasicTypeReference@335896bd -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.GregorianCalendar -> org.hibernate.type.BasicTypeReference@335896bd -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration calendar_date -> org.hibernate.type.BasicTypeReference@6b33892a -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration calendar_time -> org.hibernate.type.BasicTypeReference@666b91db -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration instant -> org.hibernate.type.BasicTypeReference@11a67420 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.Instant -> org.hibernate.type.BasicTypeReference@11a67420 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration uuid -> org.hibernate.type.BasicTypeReference@663cf5d7 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.UUID -> org.hibernate.type.BasicTypeReference@663cf5d7 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration pg-uuid -> org.hibernate.type.BasicTypeReference@663cf5d7 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration uuid-binary -> org.hibernate.type.BasicTypeReference@11b14ae3 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration uuid-char -> org.hibernate.type.BasicTypeReference@2b6ee447 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration class -> org.hibernate.type.BasicTypeReference@9cb927e -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Class -> org.hibernate.type.BasicTypeReference@9cb927e -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration currency -> org.hibernate.type.BasicTypeReference@8585cdd -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration Currency -> org.hibernate.type.BasicTypeReference@8585cdd -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.Currency -> org.hibernate.type.BasicTypeReference@8585cdd -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration locale -> org.hibernate.type.BasicTypeReference@1325f967 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.Locale -> org.hibernate.type.BasicTypeReference@1325f967 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration serializable -> org.hibernate.type.BasicTypeReference@4f356b98 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.io.Serializable -> org.hibernate.type.BasicTypeReference@4f356b98 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration timezone -> org.hibernate.type.BasicTypeReference@1ab85862 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.TimeZone -> org.hibernate.type.BasicTypeReference@1ab85862 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZoneOffset -> org.hibernate.type.BasicTypeReference@504c415c -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.ZoneOffset -> org.hibernate.type.BasicTypeReference@504c415c -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration url -> org.hibernate.type.BasicTypeReference@6c9e74f3 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.net.URL -> org.hibernate.type.BasicTypeReference@6c9e74f3 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration vector -> org.hibernate.type.BasicTypeReference@813ab53 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration row_version -> org.hibernate.type.BasicTypeReference@5030997b -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration object -> org.hibernate.type.JavaObjectType@644e6a8e -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Object -> org.hibernate.type.JavaObjectType@644e6a8e -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration null -> org.hibernate.type.NullType@113c4ad6 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_date -> org.hibernate.type.BasicTypeReference@7be859de -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_time -> org.hibernate.type.BasicTypeReference@7fa85a55 -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_timestamp -> org.hibernate.type.BasicTypeReference@cb1c58c -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_calendar -> org.hibernate.type.BasicTypeReference@352e4b6d -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_calendar_date -> org.hibernate.type.BasicTypeReference@10a064bd -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_calendar_time -> org.hibernate.type.BasicTypeReference@2de7fe0e -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_binary -> org.hibernate.type.BasicTypeReference@2ff8d39b -2025-10-26 09:23:57 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_serializable -> org.hibernate.type.BasicTypeReference@684a802a -2025-10-26 09:23:57 [main] INFO o.s.o.j.p.SpringPersistenceUnitInfo - No LoadTimeWeaver setup: ignoring JPA class transformer -2025-10-26 09:23:57 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting... -2025-10-26 09:23:57 [main] INFO com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Added connection org.postgresql.jdbc.PgConnection@5e5a2b74 -2025-10-26 09:23:57 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed. -2025-10-26 09:23:57 [main] WARN org.hibernate.orm.deprecation - HHH90000025: PostgreSQLDialect does not need to be specified explicitly using 'hibernate.dialect' (remove the property setting and it will be selected by default) -2025-10-26 09:23:58 [main] DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(2003, org.hibernate.type.descriptor.sql.internal.ArrayDdlTypeImpl@cbc3bf3) replaced previous registration(org.hibernate.type.descriptor.sql.internal.ArrayDdlTypeImpl@31f9f9b3) -2025-10-26 09:23:58 [main] DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(6, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@7730da00) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@52d01430) -2025-10-26 09:23:58 [main] DEBUG o.h.t.d.jdbc.spi.JdbcTypeRegistry - addDescriptor(2004, BlobTypeDescriptor(BLOB_BINDING)) replaced previous registration(BlobTypeDescriptor(DEFAULT)) -2025-10-26 09:23:58 [main] DEBUG o.h.t.d.jdbc.spi.JdbcTypeRegistry - addDescriptor(2005, ClobTypeDescriptor(CLOB_BINDING)) replaced previous registration(ClobTypeDescriptor(DEFAULT)) -2025-10-26 09:23:58 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration JAVA_OBJECT -> org.hibernate.type.JavaObjectType@7a78d2aa -2025-10-26 09:23:58 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Object -> org.hibernate.type.JavaObjectType@7a78d2aa -2025-10-26 09:23:58 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Type registration key [java.lang.Object] overrode previous entry : `org.hibernate.type.JavaObjectType@644e6a8e` -2025-10-26 09:23:58 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.DurationType -> basicType@1(java.time.Duration,3015) -2025-10-26 09:23:58 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration Duration -> basicType@1(java.time.Duration,3015) -2025-10-26 09:23:58 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.Duration -> basicType@1(java.time.Duration,3015) -2025-10-26 09:23:58 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.OffsetDateTimeType -> basicType@2(java.time.OffsetDateTime,3003) -2025-10-26 09:23:58 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetDateTime -> basicType@2(java.time.OffsetDateTime,3003) -2025-10-26 09:23:58 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.OffsetDateTime -> basicType@2(java.time.OffsetDateTime,3003) -2025-10-26 09:23:58 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.ZonedDateTimeType -> basicType@3(java.time.ZonedDateTime,3003) -2025-10-26 09:23:58 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZonedDateTime -> basicType@3(java.time.ZonedDateTime,3003) -2025-10-26 09:23:58 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.ZonedDateTime -> basicType@3(java.time.ZonedDateTime,3003) -2025-10-26 09:23:58 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.OffsetTimeType -> basicType@4(java.time.OffsetTime,3007) -2025-10-26 09:23:58 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTime -> basicType@4(java.time.OffsetTime,3007) -2025-10-26 09:23:58 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.OffsetTime -> basicType@4(java.time.OffsetTime,3007) -2025-10-26 09:23:58 [main] DEBUG o.h.type.spi.TypeConfiguration$Scope - Scoping TypeConfiguration [org.hibernate.type.spi.TypeConfiguration@5570dc21] to MetadataBuildingContext [org.hibernate.boot.internal.MetadataBuildingContextRootImpl@1477d4e6] -2025-10-26 09:23:58 [main] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) -2025-10-26 09:23:58 [main] DEBUG o.h.type.spi.TypeConfiguration$Scope - Scoping TypeConfiguration [org.hibernate.type.spi.TypeConfiguration@5570dc21] to SessionFactoryImplementor [org.hibernate.internal.SessionFactoryImpl@642693c2] -2025-10-26 09:23:58 [main] DEBUG org.hibernate.SQL - +2025-10-27 09:07:31 [main] INFO c.u.h.meeting.MeetingApplication - Starting MeetingApplication using Java 21.0.8 with PID 78756 (/Users/daewoong/home/workspace/HGZero/meeting/build/classes/java/main started by daewoong in /Users/daewoong/home/workspace/HGZero/meeting) +2025-10-27 09:07:31 [main] DEBUG c.u.h.meeting.MeetingApplication - Running with Spring Boot v3.3.5, Spring v6.1.14 +2025-10-27 09:07:31 [main] INFO c.u.h.meeting.MeetingApplication - The following 1 profile is active: "dev" +2025-10-27 09:07:32 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode +2025-10-27 09:07:32 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-10-27 09:07:32 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 64 ms. Found 7 JPA repository interfaces. +2025-10-27 09:07:32 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode +2025-10-27 09:07:32 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode. +2025-10-27 09:07:32 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.MeetingJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository +2025-10-27 09:07:32 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.MeetingParticipantJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository +2025-10-27 09:07:32 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.MinutesJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository +2025-10-27 09:07:32 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.MinutesSectionJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository +2025-10-27 09:07:32 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.SessionJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository +2025-10-27 09:07:32 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.TemplateJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository +2025-10-27 09:07:32 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.TodoJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository +2025-10-27 09:07:32 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 12 ms. Found 0 Redis repository interfaces. +2025-10-27 09:07:32 [main] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port 8082 (http) +2025-10-27 09:07:32 [main] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-10-27 09:07:32 [main] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.31] +2025-10-27 09:07:32 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-10-27 09:07:32 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 1019 ms +2025-10-27 09:07:32 [main] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-10-27 09:07:33 [main] INFO org.hibernate.Version - HHH000412: Hibernate ORM core version 6.5.3.Final +2025-10-27 09:07:33 [main] INFO o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration boolean -> org.hibernate.type.BasicTypeReference@44a13699 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration boolean -> org.hibernate.type.BasicTypeReference@44a13699 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Boolean -> org.hibernate.type.BasicTypeReference@44a13699 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration numeric_boolean -> org.hibernate.type.BasicTypeReference@1253b822 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.NumericBooleanConverter -> org.hibernate.type.BasicTypeReference@1253b822 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration true_false -> org.hibernate.type.BasicTypeReference@127d2aee +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.TrueFalseConverter -> org.hibernate.type.BasicTypeReference@127d2aee +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration yes_no -> org.hibernate.type.BasicTypeReference@3cc2e3e +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.YesNoConverter -> org.hibernate.type.BasicTypeReference@3cc2e3e +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration byte -> org.hibernate.type.BasicTypeReference@4e14d520 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration byte -> org.hibernate.type.BasicTypeReference@4e14d520 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Byte -> org.hibernate.type.BasicTypeReference@4e14d520 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration binary -> org.hibernate.type.BasicTypeReference@4189e668 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration byte[] -> org.hibernate.type.BasicTypeReference@4189e668 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration [B -> org.hibernate.type.BasicTypeReference@4189e668 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration binary_wrapper -> org.hibernate.type.BasicTypeReference@3a589eed +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration wrapper-binary -> org.hibernate.type.BasicTypeReference@3a589eed +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration image -> org.hibernate.type.BasicTypeReference@5807ea46 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration blob -> org.hibernate.type.BasicTypeReference@305289b3 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Blob -> org.hibernate.type.BasicTypeReference@305289b3 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_blob -> org.hibernate.type.BasicTypeReference@3ee68377 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_blob_wrapper -> org.hibernate.type.BasicTypeReference@4037cdb0 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration short -> org.hibernate.type.BasicTypeReference@27055a2a +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration short -> org.hibernate.type.BasicTypeReference@27055a2a +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Short -> org.hibernate.type.BasicTypeReference@27055a2a +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration integer -> org.hibernate.type.BasicTypeReference@33e4068 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration int -> org.hibernate.type.BasicTypeReference@33e4068 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Integer -> org.hibernate.type.BasicTypeReference@33e4068 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration long -> org.hibernate.type.BasicTypeReference@9499643 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration long -> org.hibernate.type.BasicTypeReference@9499643 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Long -> org.hibernate.type.BasicTypeReference@9499643 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration float -> org.hibernate.type.BasicTypeReference@776d8097 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration float -> org.hibernate.type.BasicTypeReference@776d8097 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Float -> org.hibernate.type.BasicTypeReference@776d8097 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration double -> org.hibernate.type.BasicTypeReference@7a34505a +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration double -> org.hibernate.type.BasicTypeReference@7a34505a +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Double -> org.hibernate.type.BasicTypeReference@7a34505a +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration big_integer -> org.hibernate.type.BasicTypeReference@b787274 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.math.BigInteger -> org.hibernate.type.BasicTypeReference@b787274 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration big_decimal -> org.hibernate.type.BasicTypeReference@4ec616d6 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.math.BigDecimal -> org.hibernate.type.BasicTypeReference@4ec616d6 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration character -> org.hibernate.type.BasicTypeReference@55b45ea1 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration char -> org.hibernate.type.BasicTypeReference@55b45ea1 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Character -> org.hibernate.type.BasicTypeReference@55b45ea1 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration character_nchar -> org.hibernate.type.BasicTypeReference@d5a72cd +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration string -> org.hibernate.type.BasicTypeReference@45f95ac0 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.String -> org.hibernate.type.BasicTypeReference@45f95ac0 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration nstring -> org.hibernate.type.BasicTypeReference@3b77940f +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration characters -> org.hibernate.type.BasicTypeReference@4c418496 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration char[] -> org.hibernate.type.BasicTypeReference@4c418496 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration [C -> org.hibernate.type.BasicTypeReference@4c418496 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration wrapper-characters -> org.hibernate.type.BasicTypeReference@12d35bc9 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration text -> org.hibernate.type.BasicTypeReference@1df32c09 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ntext -> org.hibernate.type.BasicTypeReference@1aa31454 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration clob -> org.hibernate.type.BasicTypeReference@5a8656a2 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Clob -> org.hibernate.type.BasicTypeReference@5a8656a2 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration nclob -> org.hibernate.type.BasicTypeReference@52035328 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.NClob -> org.hibernate.type.BasicTypeReference@52035328 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_clob -> org.hibernate.type.BasicTypeReference@5614ae05 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_clob_char_array -> org.hibernate.type.BasicTypeReference@54970127 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_clob_character_array -> org.hibernate.type.BasicTypeReference@3c4c7e51 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_nclob -> org.hibernate.type.BasicTypeReference@749ee0e3 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_nclob_character_array -> org.hibernate.type.BasicTypeReference@7891cf3 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_nclob_char_array -> org.hibernate.type.BasicTypeReference@6bfbab1c +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration Duration -> org.hibernate.type.BasicTypeReference@349aeec4 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.Duration -> org.hibernate.type.BasicTypeReference@349aeec4 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration LocalDateTime -> org.hibernate.type.BasicTypeReference@3700994c +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.LocalDateTime -> org.hibernate.type.BasicTypeReference@3700994c +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration LocalDate -> org.hibernate.type.BasicTypeReference@78a165db +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.LocalDate -> org.hibernate.type.BasicTypeReference@78a165db +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration LocalTime -> org.hibernate.type.BasicTypeReference@4eb48298 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.LocalTime -> org.hibernate.type.BasicTypeReference@4eb48298 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetDateTime -> org.hibernate.type.BasicTypeReference@2d3bb944 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.OffsetDateTime -> org.hibernate.type.BasicTypeReference@2d3bb944 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetDateTimeWithTimezone -> org.hibernate.type.BasicTypeReference@1e429f56 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetDateTimeWithoutTimezone -> org.hibernate.type.BasicTypeReference@6dbeaef8 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTime -> org.hibernate.type.BasicTypeReference@7744195 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.OffsetTime -> org.hibernate.type.BasicTypeReference@7744195 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTimeUtc -> org.hibernate.type.BasicTypeReference@77f529a6 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTimeWithTimezone -> org.hibernate.type.BasicTypeReference@7d47b021 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTimeWithoutTimezone -> org.hibernate.type.BasicTypeReference@6516181f +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZonedDateTime -> org.hibernate.type.BasicTypeReference@40cb95c1 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.ZonedDateTime -> org.hibernate.type.BasicTypeReference@40cb95c1 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZonedDateTimeWithTimezone -> org.hibernate.type.BasicTypeReference@1ead3c67 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZonedDateTimeWithoutTimezone -> org.hibernate.type.BasicTypeReference@5e2b512b +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration date -> org.hibernate.type.BasicTypeReference@ba87c11 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Date -> org.hibernate.type.BasicTypeReference@ba87c11 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration time -> org.hibernate.type.BasicTypeReference@17d19538 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Time -> org.hibernate.type.BasicTypeReference@17d19538 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration timestamp -> org.hibernate.type.BasicTypeReference@6068cda1 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Timestamp -> org.hibernate.type.BasicTypeReference@6068cda1 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.Date -> org.hibernate.type.BasicTypeReference@6068cda1 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration calendar -> org.hibernate.type.BasicTypeReference@644e6a8e +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.Calendar -> org.hibernate.type.BasicTypeReference@644e6a8e +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.GregorianCalendar -> org.hibernate.type.BasicTypeReference@644e6a8e +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration calendar_date -> org.hibernate.type.BasicTypeReference@2ccecae2 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration calendar_time -> org.hibernate.type.BasicTypeReference@37ade216 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration instant -> org.hibernate.type.BasicTypeReference@118e2487 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.Instant -> org.hibernate.type.BasicTypeReference@118e2487 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration uuid -> org.hibernate.type.BasicTypeReference@6032622 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.UUID -> org.hibernate.type.BasicTypeReference@6032622 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration pg-uuid -> org.hibernate.type.BasicTypeReference@6032622 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration uuid-binary -> org.hibernate.type.BasicTypeReference@5cc075da +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration uuid-char -> org.hibernate.type.BasicTypeReference@4258106 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration class -> org.hibernate.type.BasicTypeReference@64ef2719 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Class -> org.hibernate.type.BasicTypeReference@64ef2719 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration currency -> org.hibernate.type.BasicTypeReference@7b423f90 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration Currency -> org.hibernate.type.BasicTypeReference@7b423f90 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.Currency -> org.hibernate.type.BasicTypeReference@7b423f90 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration locale -> org.hibernate.type.BasicTypeReference@24f3fb87 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.Locale -> org.hibernate.type.BasicTypeReference@24f3fb87 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration serializable -> org.hibernate.type.BasicTypeReference@c7673ae +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.io.Serializable -> org.hibernate.type.BasicTypeReference@c7673ae +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration timezone -> org.hibernate.type.BasicTypeReference@113c4ad6 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.TimeZone -> org.hibernate.type.BasicTypeReference@113c4ad6 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZoneOffset -> org.hibernate.type.BasicTypeReference@7be859de +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.ZoneOffset -> org.hibernate.type.BasicTypeReference@7be859de +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration url -> org.hibernate.type.BasicTypeReference@40fcaae7 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.net.URL -> org.hibernate.type.BasicTypeReference@40fcaae7 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration vector -> org.hibernate.type.BasicTypeReference@7fa85a55 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration row_version -> org.hibernate.type.BasicTypeReference@cb1c58c +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration object -> org.hibernate.type.JavaObjectType@48f4264e +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Object -> org.hibernate.type.JavaObjectType@48f4264e +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration null -> org.hibernate.type.NullType@25e353dc +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_date -> org.hibernate.type.BasicTypeReference@234ce7ff +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_time -> org.hibernate.type.BasicTypeReference@3cfab340 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_timestamp -> org.hibernate.type.BasicTypeReference@3387ab0 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_calendar -> org.hibernate.type.BasicTypeReference@470f0637 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_calendar_date -> org.hibernate.type.BasicTypeReference@6b278b17 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_calendar_time -> org.hibernate.type.BasicTypeReference@2ae5580 +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_binary -> org.hibernate.type.BasicTypeReference@4203529f +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_serializable -> org.hibernate.type.BasicTypeReference@7d82ca56 +2025-10-27 09:07:33 [main] INFO o.s.o.j.p.SpringPersistenceUnitInfo - No LoadTimeWeaver setup: ignoring JPA class transformer +2025-10-27 09:07:33 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting... +2025-10-27 09:07:33 [main] INFO com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Added connection org.postgresql.jdbc.PgConnection@790d629a +2025-10-27 09:07:33 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed. +2025-10-27 09:07:33 [main] WARN org.hibernate.orm.deprecation - HHH90000025: PostgreSQLDialect does not need to be specified explicitly using 'hibernate.dialect' (remove the property setting and it will be selected by default) +2025-10-27 09:07:33 [main] DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(2003, org.hibernate.type.descriptor.sql.internal.ArrayDdlTypeImpl@180fb796) replaced previous registration(org.hibernate.type.descriptor.sql.internal.ArrayDdlTypeImpl@79ae3fb1) +2025-10-27 09:07:33 [main] DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(6, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@7fa8fff) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@4423692a) +2025-10-27 09:07:33 [main] DEBUG o.h.t.d.jdbc.spi.JdbcTypeRegistry - addDescriptor(2004, BlobTypeDescriptor(BLOB_BINDING)) replaced previous registration(BlobTypeDescriptor(DEFAULT)) +2025-10-27 09:07:33 [main] DEBUG o.h.t.d.jdbc.spi.JdbcTypeRegistry - addDescriptor(2005, ClobTypeDescriptor(CLOB_BINDING)) replaced previous registration(ClobTypeDescriptor(DEFAULT)) +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration JAVA_OBJECT -> org.hibernate.type.JavaObjectType@7f584d0c +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Object -> org.hibernate.type.JavaObjectType@7f584d0c +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Type registration key [java.lang.Object] overrode previous entry : `org.hibernate.type.JavaObjectType@48f4264e` +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.DurationType -> basicType@1(java.time.Duration,3015) +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration Duration -> basicType@1(java.time.Duration,3015) +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.Duration -> basicType@1(java.time.Duration,3015) +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.OffsetDateTimeType -> basicType@2(java.time.OffsetDateTime,3003) +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetDateTime -> basicType@2(java.time.OffsetDateTime,3003) +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.OffsetDateTime -> basicType@2(java.time.OffsetDateTime,3003) +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.ZonedDateTimeType -> basicType@3(java.time.ZonedDateTime,3003) +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZonedDateTime -> basicType@3(java.time.ZonedDateTime,3003) +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.ZonedDateTime -> basicType@3(java.time.ZonedDateTime,3003) +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.OffsetTimeType -> basicType@4(java.time.OffsetTime,3007) +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTime -> basicType@4(java.time.OffsetTime,3007) +2025-10-27 09:07:33 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.OffsetTime -> basicType@4(java.time.OffsetTime,3007) +2025-10-27 09:07:33 [main] DEBUG o.h.type.spi.TypeConfiguration$Scope - Scoping TypeConfiguration [org.hibernate.type.spi.TypeConfiguration@25e24908] to MetadataBuildingContext [org.hibernate.boot.internal.MetadataBuildingContextRootImpl@2941631f] +2025-10-27 09:07:34 [main] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-10-27 09:07:34 [main] DEBUG o.h.type.spi.TypeConfiguration$Scope - Scoping TypeConfiguration [org.hibernate.type.spi.TypeConfiguration@25e24908] to SessionFactoryImplementor [org.hibernate.internal.SessionFactoryImpl@1bfc6e50] +2025-10-27 09:07:34 [main] DEBUG org.hibernate.SQL - alter table if exists meetings alter column description set data type TEXT -2025-10-26 09:23:58 [main] DEBUG org.hibernate.SQL - - alter table if exists meetings - alter column participants set data type TEXT -2025-10-26 09:23:58 [main] DEBUG org.hibernate.SQL - +2025-10-27 09:07:34 [main] DEBUG org.hibernate.SQL - alter table if exists minutes_sections alter column content set data type TEXT -2025-10-26 09:23:58 [main] DEBUG org.hibernate.SQL - +2025-10-27 09:07:34 [main] DEBUG org.hibernate.SQL - alter table if exists templates alter column description set data type TEXT -2025-10-26 09:23:58 [main] DEBUG org.hibernate.SQL - +2025-10-27 09:07:34 [main] DEBUG org.hibernate.SQL - alter table if exists templates alter column sections set data type TEXT -2025-10-26 09:23:58 [main] DEBUG org.hibernate.SQL - +2025-10-27 09:07:34 [main] DEBUG org.hibernate.SQL - alter table if exists todos alter column description set data type TEXT -2025-10-26 09:23:58 [main] TRACE o.h.type.spi.TypeConfiguration$Scope - Handling #sessionFactoryCreated from [org.hibernate.internal.SessionFactoryImpl@642693c2] for TypeConfiguration -2025-10-26 09:23:58 [main] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' -2025-10-26 09:23:58 [main] INFO o.s.d.j.r.query.QueryEnhancerFactory - Hibernate is in classpath; If applicable, HQL parser will be used. -2025-10-26 09:23:59 [main] INFO c.u.h.m.infra.config.RedisConfig - Redis Lettuce Client 설정 완료 - ReadFrom: MASTER (모든 작업 Master에서 수행) -2025-10-26 09:23:59 [main] INFO c.u.h.m.infra.config.RedisConfig - LettuceConnectionFactory 설정 완료 - Host: 20.249.177.114:6379, Database: 1 -2025-10-26 09:23:59 [main] ERROR i.n.r.d.DnsServerAddressStreamProviders - Unable to load io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider, fallback to system defaults. This may result in incorrect DNS resolutions on MacOS. Check whether you have a dependency on 'io.netty:netty-resolver-dns-native-macos'. Use DEBUG level to see the full stack: java.lang.UnsatisfiedLinkError: failed to load the required native library -2025-10-26 09:23:59 [main] INFO c.u.h.m.infra.config.RedisConfig - RedisTemplate 설정 완료 -2025-10-26 09:23:59 [main] INFO c.u.h.m.infra.cache.CacheConfig - ObjectMapper 설정 완료 -2025-10-26 09:23:59 [main] INFO c.u.h.m.infra.config.EventHubConfig - Initializing Azure EventHub configuration with hub name: hgzero-eventhub-name -2025-10-26 09:23:59 [main] INFO c.u.h.m.infra.config.EventHubConfig - Creating EventHub producer for hub: hgzero-eventhub-name -2025-10-26 09:23:59 [main] INFO c.a.m.e.EventHubClientBuilder - {"az.sdk.message":"Emitting a single connection.","connectionId":"MF_f335bd_1761438239325"} -2025-10-26 09:23:59 [main] INFO c.a.m.e.i.EventHubConnectionProcessor - {"az.sdk.message":"Setting next AMQP channel.","entityPath":"hgzero-eventhub-name"} -2025-10-26 09:23:59 [main] WARN o.s.b.a.o.j.JpaBaseConfiguration$JpaWebConfiguration - spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning -2025-10-26 09:23:59 [main] WARN o.s.b.a.s.s.UserDetailsServiceAutoConfiguration - +2025-10-27 09:07:35 [main] TRACE o.h.type.spi.TypeConfiguration$Scope - Handling #sessionFactoryCreated from [org.hibernate.internal.SessionFactoryImpl@1bfc6e50] for TypeConfiguration +2025-10-27 09:07:35 [main] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-10-27 09:07:35 [main] INFO o.s.d.j.r.query.QueryEnhancerFactory - Hibernate is in classpath; If applicable, HQL parser will be used. +2025-10-27 09:07:35 [main] INFO c.u.h.m.infra.config.RedisConfig - Redis Lettuce Client 설정 완료 - Standalone 모드 (Master-Replica 자동 탐색 비활성화) +2025-10-27 09:07:35 [main] INFO c.u.h.m.infra.config.RedisConfig - LettuceConnectionFactory 설정 완료 - Host: 20.249.177.114:6379, Database: 1 +2025-10-27 09:07:35 [main] ERROR i.n.r.d.DnsServerAddressStreamProviders - Unable to load io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider, fallback to system defaults. This may result in incorrect DNS resolutions on MacOS. Check whether you have a dependency on 'io.netty:netty-resolver-dns-native-macos'. Use DEBUG level to see the full stack: java.lang.UnsatisfiedLinkError: failed to load the required native library +2025-10-27 09:07:35 [main] INFO c.u.h.m.infra.config.RedisConfig - RedisTemplate 설정 완료 +2025-10-27 09:07:35 [main] INFO c.u.h.m.infra.cache.CacheConfig - ObjectMapper 설정 완료 +2025-10-27 09:07:35 [main] INFO c.u.h.m.infra.config.EventHubConfig - Initializing Azure EventHub configuration with hub name: hgzero-eventhub-name +2025-10-27 09:07:35 [main] INFO c.u.h.m.infra.config.EventHubConfig - Creating EventHub producer for hub: hgzero-eventhub-name +2025-10-27 09:07:35 [main] INFO c.a.m.e.EventHubClientBuilder - {"az.sdk.message":"Emitting a single connection.","connectionId":"MF_c2537e_1761523655847"} +2025-10-27 09:07:35 [main] INFO c.a.m.e.i.EventHubConnectionProcessor - {"az.sdk.message":"Setting next AMQP channel.","entityPath":"hgzero-eventhub-name"} +2025-10-27 09:07:36 [main] WARN o.s.b.a.o.j.JpaBaseConfiguration$JpaWebConfiguration - spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning +2025-10-27 09:07:36 [main] WARN o.s.b.a.s.s.UserDetailsServiceAutoConfiguration - -Using generated security password: c9aeb4d7-8a1f-4c11-a3b4-2d0797a99320 +Using generated security password: 88421a21-f149-4310-af11-e1a4194099f5 This generated password is for development use only. Your security configuration must be updated before running your application in production. -2025-10-26 09:23:59 [main] INFO o.s.s.c.a.a.c.InitializeUserDetailsBeanManagerConfigurer$InitializeUserDetailsManagerConfigurer - Global AuthenticationManager configured with UserDetailsService bean with name inMemoryUserDetailsManager -2025-10-26 09:23:59 [main] INFO c.u.h.m.infra.config.WebSocketConfig - WebSocket 핸들러 등록 완료 - endpoint: /ws/minutes/{minutesId} -2025-10-26 09:23:59 [main] INFO o.s.b.a.e.web.EndpointLinksResolver - Exposing 3 endpoints beneath base path '/actuator' -2025-10-26 09:23:59 [main] DEBUG o.s.s.web.DefaultSecurityFilterChain - Will secure any request with filters: DisableEncodeUrlFilter, WebAsyncManagerIntegrationFilter, SecurityContextHolderFilter, HeaderWriterFilter, CorsFilter, LogoutFilter, JwtAuthenticationFilter, RequestCacheAwareFilter, SecurityContextHolderAwareRequestFilter, AnonymousAuthenticationFilter, SessionManagementFilter, ExceptionTranslationFilter, AuthorizationFilter -2025-10-26 09:23:59 [main] WARN o.s.b.a.t.ThymeleafAutoConfiguration$DefaultTemplateResolverConfiguration - Cannot find template location: classpath:/templates/ (please add some templates, check your Thymeleaf configuration, or set spring.thymeleaf.check-template-location=false) -2025-10-26 09:24:00 [main] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port 8082 (http) with context path '/' -2025-10-26 09:24:00 [main] INFO c.u.h.meeting.MeetingApplication - Started MeetingApplication in 3.944 seconds (process running for 4.092) -2025-10-26 09:24:21 [http-nio-8082-exec-1] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' -2025-10-26 09:24:21 [http-nio-8082-exec-1] INFO o.s.web.servlet.DispatcherServlet - Initializing Servlet 'dispatcherServlet' -2025-10-26 09:24:21 [http-nio-8082-exec-1] INFO o.s.web.servlet.DispatcherServlet - Completed initialization in 2 ms -2025-10-26 09:24:21 [http-nio-8082-exec-1] DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/meetings -2025-10-26 09:24:21 [http-nio-8082-exec-1] DEBUG c.u.h.m.i.c.j.JwtAuthenticationFilter - 헤더 기반 인증된 사용자: dohyunjung (user-005) -2025-10-26 09:24:21 [http-nio-8082-exec-1] DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/meetings -2025-10-26 09:24:21 [http-nio-8082-exec-1] INFO c.u.hgzero.common.aop.LoggingAspect - [Controller] com.unicorn.hgzero.meeting.infra.controller.MeetingController.createMeeting 호출 - 파라미터: [user-005, dohyunjung, dohyun.jung@example.com, com.unicorn.hgzero.meeting.infra.dto.request.CreateMeetingRequest@2d15139f] -2025-10-26 09:24:21 [http-nio-8082-exec-1] INFO c.u.h.m.i.c.MeetingController - 회의 예약 요청 - userId: user-005, title: test 회의 -2025-10-26 09:24:21 [http-nio-8082-exec-1] INFO c.u.h.m.biz.service.MeetingService - Creating meeting: test 회의 -2025-10-26 09:24:21 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - +2025-10-27 09:07:36 [main] INFO o.s.s.c.a.a.c.InitializeUserDetailsBeanManagerConfigurer$InitializeUserDetailsManagerConfigurer - Global AuthenticationManager configured with UserDetailsService bean with name inMemoryUserDetailsManager +2025-10-27 09:07:36 [main] INFO c.u.h.m.infra.config.WebSocketConfig - WebSocket 핸들러 등록 완료 - endpoint: /ws/minutes/{minutesId} +2025-10-27 09:07:36 [main] INFO o.s.b.a.e.web.EndpointLinksResolver - Exposing 3 endpoints beneath base path '/actuator' +2025-10-27 09:07:36 [main] DEBUG o.s.s.web.DefaultSecurityFilterChain - Will secure any request with filters: DisableEncodeUrlFilter, WebAsyncManagerIntegrationFilter, SecurityContextHolderFilter, HeaderWriterFilter, CorsFilter, LogoutFilter, JwtAuthenticationFilter, RequestCacheAwareFilter, SecurityContextHolderAwareRequestFilter, AnonymousAuthenticationFilter, SessionManagementFilter, ExceptionTranslationFilter, AuthorizationFilter +2025-10-27 09:07:36 [main] WARN o.s.b.a.t.ThymeleafAutoConfiguration$DefaultTemplateResolverConfiguration - Cannot find template location: classpath:/templates/ (please add some templates, check your Thymeleaf configuration, or set spring.thymeleaf.check-template-location=false) +2025-10-27 09:07:36 [main] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port 8082 (http) with context path '/' +2025-10-27 09:07:36 [main] INFO c.u.h.meeting.MeetingApplication - Started MeetingApplication in 5.174 seconds (process running for 5.337) +2025-10-27 09:14:06 [http-nio-8082-exec-2] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-10-27 09:14:06 [http-nio-8082-exec-2] INFO o.s.web.servlet.DispatcherServlet - Initializing Servlet 'dispatcherServlet' +2025-10-27 09:14:06 [http-nio-8082-exec-2] INFO o.s.web.servlet.DispatcherServlet - Completed initialization in 9 ms +2025-10-27 09:14:06 [http-nio-8082-exec-2] DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/meetings +2025-10-27 09:14:06 [http-nio-8082-exec-2] DEBUG c.u.h.m.i.c.j.JwtAuthenticationFilter - 헤더 기반 인증된 사용자: dohyunjung (user-005) +2025-10-27 09:14:06 [http-nio-8082-exec-2] DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/meetings +2025-10-27 09:14:06 [http-nio-8082-exec-2] INFO c.u.hgzero.common.aop.LoggingAspect - [Controller] com.unicorn.hgzero.meeting.infra.controller.MeetingController.createMeeting 호출 - 파라미터: [user-005, dohyunjung, dohyun.jung@example.com, com.unicorn.hgzero.meeting.infra.dto.request.CreateMeetingRequest@633e13d4] +2025-10-27 09:14:06 [http-nio-8082-exec-2] INFO c.u.h.m.i.c.MeetingController - 회의 예약 요청 - userId: user-005, title: test 회의 +2025-10-27 09:14:06 [http-nio-8082-exec-2] WARN com.zaxxer.hikari.pool.PoolBase - HikariPool-1 - Failed to validate connection org.postgresql.jdbc.PgConnection@790d629a (This connection has been closed.). Possibly consider using a shorter maxLifetime value. +2025-10-27 09:14:06 [http-nio-8082-exec-2] WARN com.zaxxer.hikari.pool.PoolBase - HikariPool-1 - Failed to validate connection org.postgresql.jdbc.PgConnection@204e0056 (This connection has been closed.). Possibly consider using a shorter maxLifetime value. +2025-10-27 09:14:06 [http-nio-8082-exec-2] WARN com.zaxxer.hikari.pool.PoolBase - HikariPool-1 - Failed to validate connection org.postgresql.jdbc.PgConnection@7dfac03e (This connection has been closed.). Possibly consider using a shorter maxLifetime value. +2025-10-27 09:14:07 [http-nio-8082-exec-2] WARN com.zaxxer.hikari.pool.PoolBase - HikariPool-1 - Failed to validate connection org.postgresql.jdbc.PgConnection@d43ed10 (This connection has been closed.). Possibly consider using a shorter maxLifetime value. +2025-10-27 09:14:07 [http-nio-8082-exec-2] WARN com.zaxxer.hikari.pool.PoolBase - HikariPool-1 - Failed to validate connection org.postgresql.jdbc.PgConnection@6cee018f (This connection has been closed.). Possibly consider using a shorter maxLifetime value. +2025-10-27 09:14:07 [http-nio-8082-exec-2] WARN com.zaxxer.hikari.pool.PoolBase - HikariPool-1 - Failed to validate connection org.postgresql.jdbc.PgConnection@3c72f0f4 (This connection has been closed.). Possibly consider using a shorter maxLifetime value. +2025-10-27 09:14:07 [http-nio-8082-exec-2] INFO c.u.h.m.biz.service.MeetingService - Creating meeting: test 회의 +2025-10-27 09:14:07 [http-nio-8082-exec-2] DEBUG org.hibernate.SQL - /* SELECT COUNT(m) FROM @@ -325,7 +263,7 @@ This generated password is for development use only. Your security configuration and me1_0.end_time>? ) ) -2025-10-26 09:24:21 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - +2025-10-27 09:14:07 [http-nio-8082-exec-2] DEBUG org.hibernate.SQL - select me1_0.meeting_id, me1_0.created_at, @@ -334,32 +272,102 @@ This generated password is for development use only. Your security configuration me1_0.ended_at, me1_0.location, me1_0.organizer_id, - me1_0.participants, me1_0.purpose, me1_0.scheduled_at, me1_0.started_at, me1_0.status, me1_0.template_id, me1_0.title, - me1_0.updated_at + me1_0.updated_at, + p1_0.meeting_id, + p1_0.user_id, + p1_0.attended, + p1_0.created_at, + p1_0.invitation_status, + p1_0.updated_at from meetings me1_0 + left join + meeting_participants p1_0 + on me1_0.meeting_id=p1_0.meeting_id where me1_0.meeting_id=? -2025-10-26 09:24:21 [http-nio-8082-exec-1] ERROR c.u.h.m.infra.cache.CacheService - 회의 정보 캐시 저장 실패 - meetingId: 39a38a62-f1f7-4a32-9347-c4f19c2b3f2e -org.springframework.data.redis.RedisConnectionFailureException: Unable to connect to Redis - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$ExceptionTranslatingConnectionProvider.translateException(LettuceConnectionFactory.java:1849) - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$ExceptionTranslatingConnectionProvider.getConnection(LettuceConnectionFactory.java:1780) - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$SharedConnection.getNativeConnection(LettuceConnectionFactory.java:1582) - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$SharedConnection.lambda$getConnection$0(LettuceConnectionFactory.java:1562) - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.doInLock(LettuceConnectionFactory.java:1523) - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$SharedConnection.getConnection(LettuceConnectionFactory.java:1559) - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.getSharedConnection(LettuceConnectionFactory.java:1245) - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.getConnection(LettuceConnectionFactory.java:1051) - at org.springframework.data.redis.core.RedisConnectionUtils.fetchConnection(RedisConnectionUtils.java:195) - at org.springframework.data.redis.core.RedisConnectionUtils.doGetConnection(RedisConnectionUtils.java:144) - at org.springframework.data.redis.core.RedisConnectionUtils.getConnection(RedisConnectionUtils.java:105) - at org.springframework.data.redis.core.RedisTemplate.execute(RedisTemplate.java:398) +2025-10-27 09:14:07 [http-nio-8082-exec-2] DEBUG org.hibernate.SQL - + /* insert for + com.unicorn.hgzero.meeting.infra.gateway.entity.MeetingEntity */insert + into + meetings (created_at, description, end_time, ended_at, location, organizer_id, purpose, scheduled_at, started_at, status, template_id, title, updated_at, meeting_id) + values + (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +2025-10-27 09:14:07 [http-nio-8082-exec-2] DEBUG org.hibernate.SQL - + /* */ select + mpe1_0.meeting_id, + mpe1_0.user_id + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? + and mpe1_0.user_id=? + fetch + first ? rows only +2025-10-27 09:14:07 [http-nio-8082-exec-2] DEBUG org.hibernate.SQL - + /* */ select + mpe1_0.meeting_id, + mpe1_0.user_id + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? + and mpe1_0.user_id=? + fetch + first ? rows only +2025-10-27 09:14:07 [http-nio-8082-exec-2] DEBUG org.hibernate.SQL - + select + mpe1_0.meeting_id, + mpe1_0.user_id, + mpe1_0.attended, + mpe1_0.created_at, + mpe1_0.invitation_status, + mpe1_0.updated_at + from + meeting_participants mpe1_0 + where + ( + mpe1_0.meeting_id, mpe1_0.user_id + ) in ((?, ?)) +2025-10-27 09:14:07 [http-nio-8082-exec-2] DEBUG org.hibernate.SQL - + select + mpe1_0.meeting_id, + mpe1_0.user_id, + mpe1_0.attended, + mpe1_0.created_at, + mpe1_0.invitation_status, + mpe1_0.updated_at + from + meeting_participants mpe1_0 + where + ( + mpe1_0.meeting_id, mpe1_0.user_id + ) in ((?, ?)) +2025-10-27 09:14:07 [http-nio-8082-exec-2] DEBUG c.u.h.m.i.gateway.ParticipantGateway - Participants saved: meetingId=5f9144ed-43db-479a-99bb-17b20a71fb1e, count=2 +2025-10-27 09:14:07 [http-nio-8082-exec-2] DEBUG c.u.h.m.biz.service.MeetingService - Participants saved: meetingId=5f9144ed-43db-479a-99bb-17b20a71fb1e, count=2 +2025-10-27 09:14:08 [http-nio-8082-exec-2] ERROR c.u.h.m.infra.cache.CacheService - 회의 정보 캐시 저장 실패 - meetingId: 5f9144ed-43db-479a-99bb-17b20a71fb1e +org.springframework.data.redis.RedisSystemException: Error in execution + at org.springframework.data.redis.connection.lettuce.LettuceExceptionConverter.convert(LettuceExceptionConverter.java:52) + at org.springframework.data.redis.connection.lettuce.LettuceExceptionConverter.convert(LettuceExceptionConverter.java:50) + at org.springframework.data.redis.connection.lettuce.LettuceExceptionConverter.convert(LettuceExceptionConverter.java:41) + at org.springframework.data.redis.PassThroughExceptionTranslationStrategy.translate(PassThroughExceptionTranslationStrategy.java:40) + at org.springframework.data.redis.FallbackExceptionTranslationStrategy.translate(FallbackExceptionTranslationStrategy.java:38) + at org.springframework.data.redis.connection.lettuce.LettuceConnection.convertLettuceAccessException(LettuceConnection.java:310) + at org.springframework.data.redis.connection.lettuce.LettuceConnection.await(LettuceConnection.java:1012) + at org.springframework.data.redis.connection.lettuce.LettuceConnection.lambda$doInvoke$3(LettuceConnection.java:447) + at org.springframework.data.redis.connection.lettuce.LettuceInvoker$Synchronizer.invoke(LettuceInvoker.java:673) + at org.springframework.data.redis.connection.lettuce.LettuceInvoker$DefaultSingleInvocationSpec.get(LettuceInvoker.java:589) + at org.springframework.data.redis.connection.lettuce.LettuceStringCommands.setEx(LettuceStringCommands.java:134) + at org.springframework.data.redis.connection.DefaultedRedisConnection.setEx(DefaultedRedisConnection.java:340) + at org.springframework.data.redis.core.DefaultValueOperations$8.potentiallyUsePsetEx(DefaultValueOperations.java:265) + at org.springframework.data.redis.core.DefaultValueOperations$8.doInRedis(DefaultValueOperations.java:258) + at org.springframework.data.redis.core.RedisTemplate.execute(RedisTemplate.java:411) at org.springframework.data.redis.core.RedisTemplate.execute(RedisTemplate.java:378) at org.springframework.data.redis.core.AbstractOperations.execute(AbstractOperations.java:97) at org.springframework.data.redis.core.DefaultValueOperations.set(DefaultValueOperations.java:253) @@ -385,7 +393,7 @@ org.springframework.data.redis.RedisConnectionFailureException: Unable to connec at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:768) at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:720) at com.unicorn.hgzero.meeting.infra.cache.CacheService$$SpringCGLIB$$0.cacheMeeting() - at com.unicorn.hgzero.meeting.biz.service.MeetingService.createMeeting(MeetingService.java:101) + at com.unicorn.hgzero.meeting.biz.service.MeetingService.createMeeting(MeetingService.java:109) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base/java.lang.reflect.Method.invoke(Method.java:580) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:355) @@ -563,85 +571,23 @@ org.springframework.data.redis.RedisConnectionFailureException: Unable to connec at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) at java.base/java.lang.Thread.run(Thread.java:1583) -Caused by: io.lettuce.core.RedisConnectionException: Unable to connect to redis://***********@20.249.177.114/1?timeout=10s - at io.lettuce.core.RedisConnectionException.create(RedisConnectionException.java:78) - at io.lettuce.core.masterreplica.MasterReplica.getConnection(MasterReplica.java:261) - at io.lettuce.core.masterreplica.MasterReplica.connect(MasterReplica.java:113) - at org.springframework.data.redis.connection.lettuce.StandaloneConnectionProvider.masterReplicaConnection(StandaloneConnectionProvider.java:153) - at org.springframework.data.redis.connection.lettuce.StandaloneConnectionProvider.lambda$getConnection$0(StandaloneConnectionProvider.java:111) - at java.base/java.util.Optional.map(Optional.java:260) - at org.springframework.data.redis.connection.lettuce.StandaloneConnectionProvider.getConnection(StandaloneConnectionProvider.java:111) - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$ExceptionTranslatingConnectionProvider.getConnection(LettuceConnectionFactory.java:1778) - ... 213 common frames omitted -Caused by: io.lettuce.core.RedisConnectionException: Unable to connect to redis-node-0.redis-headless.hgzero.svc.cluster.local/:6379 - at io.lettuce.core.RedisConnectionException.create(RedisConnectionException.java:78) - at io.lettuce.core.RedisConnectionException.create(RedisConnectionException.java:56) - at io.lettuce.core.RedisClient.lambda$transformAsyncConnectionException$22(RedisClient.java:778) - at io.lettuce.core.DefaultConnectionFuture.lambda$thenCompose$1(DefaultConnectionFuture.java:253) - at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:863) - at java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:841) - at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:510) - at java.base/java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2194) - at io.lettuce.core.AbstractRedisClient.lambda$initializeChannelAsync0$6(AbstractRedisClient.java:454) - at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:590) - at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:557) - at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:492) - at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:636) - at io.netty.util.concurrent.DefaultPromise.setFailure0(DefaultPromise.java:629) - at io.netty.util.concurrent.DefaultPromise.setFailure(DefaultPromise.java:110) - at io.netty.channel.DefaultChannelPromise.setFailure(DefaultChannelPromise.java:89) - at io.netty.bootstrap.Bootstrap$2.operationComplete(Bootstrap.java:242) - at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:590) - at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:557) - at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:492) - at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:636) - at io.netty.util.concurrent.DefaultPromise.setFailure0(DefaultPromise.java:629) - at io.netty.util.concurrent.DefaultPromise.setFailure(DefaultPromise.java:110) - at io.netty.resolver.InetSocketAddressResolver$1.operationComplete(InetSocketAddressResolver.java:62) - at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:590) - at io.netty.util.concurrent.DefaultPromise.notifyListeners0(DefaultPromise.java:583) - at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:559) - at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:492) - at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:636) - at io.netty.util.concurrent.DefaultPromise.setFailure0(DefaultPromise.java:629) - at io.netty.util.concurrent.DefaultPromise.tryFailure(DefaultPromise.java:118) - at io.netty.resolver.dns.DnsNameResolver.tryFailure(DnsNameResolver.java:1075) - at io.netty.resolver.dns.DnsNameResolver.access$500(DnsNameResolver.java:96) - at io.netty.resolver.dns.DnsNameResolver$6.operationComplete(DnsNameResolver.java:1097) - at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:590) - at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:557) - at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:492) - at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:636) - at io.netty.util.concurrent.DefaultPromise.setFailure0(DefaultPromise.java:629) - at io.netty.util.concurrent.DefaultPromise.tryFailure(DefaultPromise.java:118) - at io.netty.resolver.dns.DnsResolveContext.finishResolve(DnsResolveContext.java:1158) - at io.netty.resolver.dns.DnsResolveContext.tryToFinishResolve(DnsResolveContext.java:1097) - at io.netty.resolver.dns.DnsResolveContext.query(DnsResolveContext.java:455) - at io.netty.resolver.dns.DnsResolveContext.onResponse(DnsResolveContext.java:686) - at io.netty.resolver.dns.DnsResolveContext.access$500(DnsResolveContext.java:70) - at io.netty.resolver.dns.DnsResolveContext$2.operationComplete(DnsResolveContext.java:513) - at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:590) - at io.netty.util.concurrent.DefaultPromise.notifyListeners0(DefaultPromise.java:583) - at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:559) - at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:492) - at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:636) - at io.netty.util.concurrent.DefaultPromise.setSuccess0(DefaultPromise.java:625) - at io.netty.util.concurrent.DefaultPromise.trySuccess(DefaultPromise.java:105) - at io.netty.resolver.dns.DnsQueryContext.trySuccess(DnsQueryContext.java:308) - at io.netty.resolver.dns.DnsQueryContext.finishSuccess(DnsQueryContext.java:299) - at io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler.channelRead(DnsNameResolver.java:1491) - at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) - at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) - at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) - at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) - at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) +Caused by: io.lettuce.core.RedisReadOnlyException: READONLY You can't write against a read only replica. + at io.lettuce.core.internal.ExceptionFactory.createExecutionException(ExceptionFactory.java:144) + at io.lettuce.core.internal.ExceptionFactory.createExecutionException(ExceptionFactory.java:116) + at io.lettuce.core.protocol.AsyncCommand.completeResult(AsyncCommand.java:120) + at io.lettuce.core.protocol.AsyncCommand.complete(AsyncCommand.java:111) + at io.lettuce.core.protocol.CommandWrapper.complete(CommandWrapper.java:63) + at io.lettuce.core.protocol.CommandHandler.complete(CommandHandler.java:745) + at io.lettuce.core.protocol.CommandHandler.decode(CommandHandler.java:680) + at io.lettuce.core.protocol.CommandHandler.channelRead(CommandHandler.java:597) + at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1357) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:440) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:868) - at io.netty.channel.nio.AbstractNioMessageChannel$NioMessageUnsafe.read(AbstractNioMessageChannel.java:97) + at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:166) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:788) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650) @@ -650,323 +596,56 @@ Caused by: io.lettuce.core.RedisConnectionException: Unable to connect to redis- at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ... 1 common frames omitted -Caused by: java.util.concurrent.CompletionException: java.net.UnknownHostException: Failed to resolve 'redis-node-0.redis-headless.hgzero.svc.cluster.local' [A(1)] after 2 queries - at java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:332) - at java.base/java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:347) - at java.base/java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:636) - ... 70 common frames omitted -Caused by: java.net.UnknownHostException: Failed to resolve 'redis-node-0.redis-headless.hgzero.svc.cluster.local' [A(1)] after 2 queries - at io.netty.resolver.dns.DnsResolveContext.finishResolve(DnsResolveContext.java:1150) - ... 35 common frames omitted -Caused by: io.netty.resolver.dns.DnsErrorCauseException: Query failed with NXDOMAIN - at io.netty.resolver.dns.DnsResolveContext.onResponse(..)(Unknown Source) -2025-10-26 09:24:21 [http-nio-8082-exec-1] DEBUG c.u.h.m.biz.service.MeetingService - Meeting cached: meetingId=39a38a62-f1f7-4a32-9347-c4f19c2b3f2e -2025-10-26 09:24:21 [http-nio-8082-exec-1] INFO c.a.c.a.i.ReactorConnection - {"az.sdk.message":"Creating and starting connection.","connectionId":"MF_f335bd_1761438239325","hostName":"hgzero-eventhub-ns.servicebus.windows.net","port":5671} -2025-10-26 09:24:21 [http-nio-8082-exec-1] INFO c.a.c.a.i.ReactorExecutor - {"az.sdk.message":"Starting reactor.","connectionId":"MF_f335bd_1761438239325"} -2025-10-26 09:24:21 [reactor-executor-1] INFO c.a.c.a.i.handler.ConnectionHandler - {"az.sdk.message":"onConnectionInit","connectionId":"MF_f335bd_1761438239325","hostName":"hgzero-eventhub-ns.servicebus.windows.net","namespace":"hgzero-eventhub-ns.servicebus.windows.net"} -2025-10-26 09:24:21 [reactor-executor-1] INFO c.a.c.a.i.handler.ReactorHandler - {"az.sdk.message":"reactor.onReactorInit","connectionId":"MF_f335bd_1761438239325"} -2025-10-26 09:24:21 [reactor-executor-1] INFO c.a.c.a.i.handler.ConnectionHandler - {"az.sdk.message":"onConnectionLocalOpen","connectionId":"MF_f335bd_1761438239325","errorCondition":null,"errorDescription":null,"hostName":"hgzero-eventhub-ns.servicebus.windows.net"} -2025-10-26 09:24:21 [reactor-executor-1] INFO c.a.c.a.i.handler.ConnectionHandler - {"az.sdk.message":"onConnectionBound","connectionId":"MF_f335bd_1761438239325","hostName":"hgzero-eventhub-ns.servicebus.windows.net","peerDetails":"hgzero-eventhub-ns.servicebus.windows.net:5671"} -2025-10-26 09:24:22 [reactor-executor-1] INFO c.a.c.a.i.handler.ConnectionHandler - {"az.sdk.message":"onConnectionRemoteOpen","connectionId":"MF_f335bd_1761438239325","hostName":"hgzero-eventhub-ns.servicebus.windows.net","remoteContainer":"624053b3bd824af08471fef35f92ee6c_G6"} -2025-10-26 09:24:22 [reactor-executor-1] INFO c.a.m.e.i.EventHubConnectionProcessor - {"az.sdk.message":"Channel is now active.","entityPath":"hgzero-eventhub-name"} -2025-10-26 09:24:22 [reactor-executor-1] INFO c.a.c.a.i.handler.SessionHandler - {"az.sdk.message":"onSessionRemoteOpen","connectionId":"MF_f335bd_1761438239325","sessionName":"hgzero-eventhub-name","sessionIncCapacity":0,"sessionOutgoingWindow":2147483647} -2025-10-26 09:24:22 [reactor-executor-1] INFO c.a.c.a.i.ReactorConnection - {"az.sdk.message":"Setting CBS channel.","connectionId":"MF_f335bd_1761438239325"} -2025-10-26 09:24:22 [reactor-executor-1] INFO c.a.c.a.i.handler.SessionHandler - {"az.sdk.message":"onSessionRemoteOpen","connectionId":"MF_f335bd_1761438239325","sessionName":"cbs-session","sessionIncCapacity":0,"sessionOutgoingWindow":2147483647} -2025-10-26 09:24:22 [reactor-executor-1] INFO c.a.c.a.i.ReactorConnection - {"az.sdk.message":"Emitting new response channel.","connectionId":"MF_f335bd_1761438239325","entityPath":"$cbs","linkName":"cbs"} -2025-10-26 09:24:22 [reactor-executor-1] INFO c.a.c.a.i.AmqpChannelProcessor - {"az.sdk.message":"Setting next AMQP channel.","connectionId":"MF_f335bd_1761438239325","entityPath":"$cbs"} -2025-10-26 09:24:22 [reactor-executor-1] INFO c.a.c.a.i.AmqpChannelProcessor - {"az.sdk.message":"Next AMQP channel received.","connectionId":"MF_f335bd_1761438239325","entityPath":"$cbs","subscriberId":"un_1e8c11_1761438262054"} -2025-10-26 09:24:22 [reactor-executor-1] INFO c.a.c.a.i.handler.SendLinkHandler - {"az.sdk.message":"onLinkRemoteOpen","connectionId":"MF_f335bd_1761438239325","linkName":"cbs:sender","entityPath":"$cbs","remoteTarget":"Target{address='$cbs', durable=NONE, expiryPolicy=SESSION_END, timeout=0, dynamic=false, dynamicNodeProperties=null, capabilities=null}"} -2025-10-26 09:24:22 [reactor-executor-1] INFO c.a.c.a.i.AmqpChannelProcessor - {"az.sdk.message":"Channel is now active.","connectionId":"MF_f335bd_1761438239325","entityPath":"$cbs"} -2025-10-26 09:24:22 [reactor-executor-1] INFO c.a.c.a.i.handler.ReceiveLinkHandler - {"az.sdk.message":"onLinkRemoteOpen","connectionId":"MF_f335bd_1761438239325","entityPath":"$cbs","linkName":"cbs:receiver","remoteSource":"Source{address='$cbs', durable=NONE, expiryPolicy=SESSION_END, timeout=0, dynamic=false, dynamicNodeProperties=null, distributionMode=null, filter=null, defaultOutcome=null, outcomes=null, capabilities=null}"} -2025-10-26 09:24:22 [reactor-executor-1] INFO c.a.c.a.i.ActiveClientTokenManager - {"az.sdk.message":"Scheduling refresh token task.","scopes":"amqp://hgzero-eventhub-ns.servicebus.windows.net/hgzero-eventhub-name"} -2025-10-26 09:24:22 [reactor-executor-1] INFO c.a.c.a.i.ReactorSession - {"az.sdk.message":"Creating a new send link.","connectionId":"MF_f335bd_1761438239325","linkName":"hgzero-eventhub-name","sessionName":"hgzero-eventhub-name"} -2025-10-26 09:24:22 [reactor-executor-1] INFO c.a.c.a.i.handler.SendLinkHandler - {"az.sdk.message":"onLinkRemoteOpen","connectionId":"MF_f335bd_1761438239325","linkName":"hgzero-eventhub-name","entityPath":"hgzero-eventhub-name","remoteTarget":"Target{address='hgzero-eventhub-name', durable=NONE, expiryPolicy=SESSION_END, timeout=0, dynamic=false, dynamicNodeProperties=null, capabilities=null}"} -2025-10-26 09:24:22 [http-nio-8082-exec-1] INFO c.u.h.m.i.e.p.EventHubPublisher - 이벤트 발행 완료: topic=notification, type=NOTIFICATION_REQUEST, partitionKey=daewoong.jeon@kt.com -2025-10-26 09:24:22 [http-nio-8082-exec-1] INFO c.u.h.m.i.e.p.EventHubPublisher - 이벤트 발행 완료: topic=notification, type=NOTIFICATION_REQUEST, partitionKey=du0928@gmail.com -2025-10-26 09:24:22 [http-nio-8082-exec-1] INFO c.u.h.m.i.e.p.EventHubPublisher - 회의 생성 알림 발행 완료 - meetingId: 39a38a62-f1f7-4a32-9347-c4f19c2b3f2e, participants count: 2 -2025-10-26 09:24:22 [http-nio-8082-exec-1] DEBUG c.u.h.m.biz.service.MeetingService - Meeting invitation events published: meetingId=39a38a62-f1f7-4a32-9347-c4f19c2b3f2e, participants=2 -2025-10-26 09:24:22 [http-nio-8082-exec-1] INFO c.u.h.m.biz.service.MeetingService - Meeting created successfully: 39a38a62-f1f7-4a32-9347-c4f19c2b3f2e -2025-10-26 09:24:22 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - +2025-10-27 09:14:08 [http-nio-8082-exec-2] DEBUG c.u.h.m.biz.service.MeetingService - Meeting cached: meetingId=5f9144ed-43db-479a-99bb-17b20a71fb1e +2025-10-27 09:14:08 [http-nio-8082-exec-2] INFO c.a.c.a.i.ReactorConnection - {"az.sdk.message":"Creating and starting connection.","connectionId":"MF_c2537e_1761523655847","hostName":"hgzero-eventhub-ns.servicebus.windows.net","port":5671} +2025-10-27 09:14:08 [http-nio-8082-exec-2] INFO c.a.c.a.i.ReactorExecutor - {"az.sdk.message":"Starting reactor.","connectionId":"MF_c2537e_1761523655847"} +2025-10-27 09:14:08 [reactor-executor-1] INFO c.a.c.a.i.handler.ConnectionHandler - {"az.sdk.message":"onConnectionInit","connectionId":"MF_c2537e_1761523655847","hostName":"hgzero-eventhub-ns.servicebus.windows.net","namespace":"hgzero-eventhub-ns.servicebus.windows.net"} +2025-10-27 09:14:08 [reactor-executor-1] INFO c.a.c.a.i.handler.ReactorHandler - {"az.sdk.message":"reactor.onReactorInit","connectionId":"MF_c2537e_1761523655847"} +2025-10-27 09:14:08 [reactor-executor-1] INFO c.a.c.a.i.handler.ConnectionHandler - {"az.sdk.message":"onConnectionLocalOpen","connectionId":"MF_c2537e_1761523655847","errorCondition":null,"errorDescription":null,"hostName":"hgzero-eventhub-ns.servicebus.windows.net"} +2025-10-27 09:14:08 [reactor-executor-1] INFO c.a.c.a.i.handler.ConnectionHandler - {"az.sdk.message":"onConnectionBound","connectionId":"MF_c2537e_1761523655847","hostName":"hgzero-eventhub-ns.servicebus.windows.net","peerDetails":"hgzero-eventhub-ns.servicebus.windows.net:5671"} +2025-10-27 09:14:08 [reactor-executor-1] INFO c.a.c.a.i.handler.ConnectionHandler - {"az.sdk.message":"onConnectionRemoteOpen","connectionId":"MF_c2537e_1761523655847","hostName":"hgzero-eventhub-ns.servicebus.windows.net","remoteContainer":"daf94f96845d4a4c8f204bc24deb4033_G28"} +2025-10-27 09:14:08 [reactor-executor-1] INFO c.a.m.e.i.EventHubConnectionProcessor - {"az.sdk.message":"Channel is now active.","entityPath":"hgzero-eventhub-name"} +2025-10-27 09:14:08 [reactor-executor-1] INFO c.a.c.a.i.handler.SessionHandler - {"az.sdk.message":"onSessionRemoteOpen","connectionId":"MF_c2537e_1761523655847","sessionName":"hgzero-eventhub-name","sessionIncCapacity":0,"sessionOutgoingWindow":2147483647} +2025-10-27 09:14:08 [reactor-executor-1] INFO c.a.c.a.i.ReactorConnection - {"az.sdk.message":"Setting CBS channel.","connectionId":"MF_c2537e_1761523655847"} +2025-10-27 09:14:08 [reactor-executor-1] INFO c.a.c.a.i.handler.SessionHandler - {"az.sdk.message":"onSessionRemoteOpen","connectionId":"MF_c2537e_1761523655847","sessionName":"cbs-session","sessionIncCapacity":0,"sessionOutgoingWindow":2147483647} +2025-10-27 09:14:08 [reactor-executor-1] INFO c.a.c.a.i.ReactorConnection - {"az.sdk.message":"Emitting new response channel.","connectionId":"MF_c2537e_1761523655847","entityPath":"$cbs","linkName":"cbs"} +2025-10-27 09:14:08 [reactor-executor-1] INFO c.a.c.a.i.AmqpChannelProcessor - {"az.sdk.message":"Setting next AMQP channel.","connectionId":"MF_c2537e_1761523655847","entityPath":"$cbs"} +2025-10-27 09:14:08 [reactor-executor-1] INFO c.a.c.a.i.AmqpChannelProcessor - {"az.sdk.message":"Next AMQP channel received.","connectionId":"MF_c2537e_1761523655847","entityPath":"$cbs","subscriberId":"un_ce0ad6_1761524048533"} +2025-10-27 09:14:08 [reactor-executor-1] INFO c.a.c.a.i.handler.SendLinkHandler - {"az.sdk.message":"onLinkRemoteOpen","connectionId":"MF_c2537e_1761523655847","linkName":"cbs:sender","entityPath":"$cbs","remoteTarget":"Target{address='$cbs', durable=NONE, expiryPolicy=SESSION_END, timeout=0, dynamic=false, dynamicNodeProperties=null, capabilities=null}"} +2025-10-27 09:14:08 [reactor-executor-1] INFO c.a.c.a.i.AmqpChannelProcessor - {"az.sdk.message":"Channel is now active.","connectionId":"MF_c2537e_1761523655847","entityPath":"$cbs"} +2025-10-27 09:14:08 [reactor-executor-1] INFO c.a.c.a.i.handler.ReceiveLinkHandler - {"az.sdk.message":"onLinkRemoteOpen","connectionId":"MF_c2537e_1761523655847","entityPath":"$cbs","linkName":"cbs:receiver","remoteSource":"Source{address='$cbs', durable=NONE, expiryPolicy=SESSION_END, timeout=0, dynamic=false, dynamicNodeProperties=null, distributionMode=null, filter=null, defaultOutcome=null, outcomes=null, capabilities=null}"} +2025-10-27 09:14:08 [reactor-executor-1] INFO c.a.c.a.i.ActiveClientTokenManager - {"az.sdk.message":"Scheduling refresh token task.","scopes":"amqp://hgzero-eventhub-ns.servicebus.windows.net/hgzero-eventhub-name"} +2025-10-27 09:14:08 [reactor-executor-1] INFO c.a.c.a.i.ReactorSession - {"az.sdk.message":"Creating a new send link.","connectionId":"MF_c2537e_1761523655847","linkName":"hgzero-eventhub-name","sessionName":"hgzero-eventhub-name"} +2025-10-27 09:14:08 [reactor-executor-1] INFO c.a.c.a.i.handler.SendLinkHandler - {"az.sdk.message":"onLinkRemoteOpen","connectionId":"MF_c2537e_1761523655847","linkName":"hgzero-eventhub-name","entityPath":"hgzero-eventhub-name","remoteTarget":"Target{address='hgzero-eventhub-name', durable=NONE, expiryPolicy=SESSION_END, timeout=0, dynamic=false, dynamicNodeProperties=null, capabilities=null}"} +2025-10-27 09:14:08 [http-nio-8082-exec-2] INFO c.u.h.m.i.e.p.EventHubPublisher - 이벤트 발행 완료: topic=notification, type=NOTIFICATION_REQUEST, partitionKey=du0928 +2025-10-27 09:14:08 [http-nio-8082-exec-2] INFO c.u.h.m.i.e.p.EventHubPublisher - 이벤트 발행 완료: topic=notification, type=NOTIFICATION_REQUEST, partitionKey=du09282 +2025-10-27 09:14:08 [http-nio-8082-exec-2] INFO c.u.h.m.i.e.p.EventHubPublisher - 회의 생성 알림 발행 완료 - meetingId: 5f9144ed-43db-479a-99bb-17b20a71fb1e, participants count: 2 +2025-10-27 09:14:08 [http-nio-8082-exec-2] DEBUG c.u.h.m.biz.service.MeetingService - Meeting invitation events published: meetingId=5f9144ed-43db-479a-99bb-17b20a71fb1e, participants=2 +2025-10-27 09:14:08 [http-nio-8082-exec-2] INFO c.u.h.m.biz.service.MeetingService - Meeting created successfully: 5f9144ed-43db-479a-99bb-17b20a71fb1e +2025-10-27 09:14:08 [http-nio-8082-exec-2] DEBUG org.hibernate.SQL - /* insert for - com.unicorn.hgzero.meeting.infra.gateway.entity.MeetingEntity */insert + com.unicorn.hgzero.meeting.infra.gateway.entity.MeetingParticipantEntity */insert into - meetings (created_at, description, end_time, ended_at, location, organizer_id, participants, purpose, scheduled_at, started_at, status, template_id, title, updated_at, meeting_id) + meeting_participants (attended, created_at, invitation_status, updated_at, meeting_id, user_id) values - (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) -2025-10-26 09:24:22 [http-nio-8082-exec-1] INFO c.u.h.m.i.c.MeetingController - 회의 예약 완료 - userId: user-005, meetingId: 39a38a62-f1f7-4a32-9347-c4f19c2b3f2e -2025-10-26 09:24:22 [http-nio-8082-exec-1] INFO c.u.hgzero.common.aop.LoggingAspect - [Controller] com.unicorn.hgzero.meeting.infra.controller.MeetingController.createMeeting 완료 - 실행시간: 617ms -2025-10-26 09:36:48 [SpringApplicationShutdownHook] INFO c.a.m.e.i.EventHubConnectionProcessor - {"az.sdk.message":"Upstream connection publisher was completed. Terminating processor.","entityPath":"hgzero-eventhub-name"} -2025-10-26 09:36:48 [SpringApplicationShutdownHook] INFO c.a.c.a.i.ReactorConnection - {"az.sdk.message":"Disposing of ReactorConnection.","connectionId":"MF_f335bd_1761438239325","isTransient":false,"isInitiatedByClient":true,"shutdownMessage":"Disposed by client."} -2025-10-26 09:36:48 [SpringApplicationShutdownHook] INFO c.a.m.e.i.EventHubConnectionProcessor - {"az.sdk.message":"Channel is disposed.","entityPath":"hgzero-eventhub-name"} -2025-10-26 09:36:48 [SpringApplicationShutdownHook] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' -2025-10-26 09:36:48 [SpringApplicationShutdownHook] TRACE o.h.type.spi.TypeConfiguration$Scope - Handling #sessionFactoryClosed from [org.hibernate.internal.SessionFactoryImpl@642693c2] for TypeConfiguration -2025-10-26 09:36:48 [SpringApplicationShutdownHook] DEBUG o.h.type.spi.TypeConfiguration$Scope - Un-scoping TypeConfiguration [org.hibernate.type.spi.TypeConfiguration$Scope@1e28d920] from SessionFactory [org.hibernate.internal.SessionFactoryImpl@642693c2] -2025-10-26 09:36:48 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated... -2025-10-26 09:36:48 [reactor-executor-1] INFO c.a.c.a.i.handler.SessionHandler - {"az.sdk.message":"onSessionRemoteClose","connectionId":"MF_f335bd_1761438239325","errorCondition":null,"errorDescription":null,"sessionName":"hgzero-eventhub-name"} -2025-10-26 09:36:48 [reactor-executor-1] INFO c.a.c.a.i.handler.SessionHandler - {"az.sdk.message":"onSessionRemoteClose","connectionId":"MF_f335bd_1761438239325","errorCondition":null,"errorDescription":null,"sessionName":"cbs-session"} -2025-10-26 09:36:48 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown completed. -2025-10-26 09:44:09 [main] INFO c.u.h.meeting.MeetingApplication - Starting MeetingApplication using Java 21.0.8 with PID 66796 (/Users/daewoong/home/workspace/HGZero/meeting/build/classes/java/main started by daewoong in /Users/daewoong/home/workspace/HGZero/meeting) -2025-10-26 09:44:09 [main] DEBUG c.u.h.meeting.MeetingApplication - Running with Spring Boot v3.3.5, Spring v6.1.14 -2025-10-26 09:44:09 [main] INFO c.u.h.meeting.MeetingApplication - The following 1 profile is active: "dev" -2025-10-26 09:44:09 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode -2025-10-26 09:44:09 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2025-10-26 09:44:09 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 57 ms. Found 6 JPA repository interfaces. -2025-10-26 09:44:09 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode -2025-10-26 09:44:09 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode. -2025-10-26 09:44:09 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.MeetingJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-10-26 09:44:09 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.MinutesJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-10-26 09:44:09 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.MinutesSectionJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-10-26 09:44:09 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.SessionJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-10-26 09:44:09 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.TemplateJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-10-26 09:44:09 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.TodoJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-10-26 09:44:09 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 12 ms. Found 0 Redis repository interfaces. -2025-10-26 09:44:10 [main] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port 8082 (http) -2025-10-26 09:44:10 [main] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] -2025-10-26 09:44:10 [main] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.31] -2025-10-26 09:44:10 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext -2025-10-26 09:44:10 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 1044 ms -2025-10-26 09:44:10 [main] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-10-26 09:44:10 [main] INFO org.hibernate.Version - HHH000412: Hibernate ORM core version 6.5.3.Final -2025-10-26 09:44:10 [main] INFO o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration boolean -> org.hibernate.type.BasicTypeReference@1324e70a -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration boolean -> org.hibernate.type.BasicTypeReference@1324e70a -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Boolean -> org.hibernate.type.BasicTypeReference@1324e70a -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration numeric_boolean -> org.hibernate.type.BasicTypeReference@3cc6f036 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.NumericBooleanConverter -> org.hibernate.type.BasicTypeReference@3cc6f036 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration true_false -> org.hibernate.type.BasicTypeReference@72d16d6 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.TrueFalseConverter -> org.hibernate.type.BasicTypeReference@72d16d6 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration yes_no -> org.hibernate.type.BasicTypeReference@7b0525a8 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.YesNoConverter -> org.hibernate.type.BasicTypeReference@7b0525a8 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration byte -> org.hibernate.type.BasicTypeReference@4f2d8175 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration byte -> org.hibernate.type.BasicTypeReference@4f2d8175 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Byte -> org.hibernate.type.BasicTypeReference@4f2d8175 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration binary -> org.hibernate.type.BasicTypeReference@44618fe6 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration byte[] -> org.hibernate.type.BasicTypeReference@44618fe6 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration [B -> org.hibernate.type.BasicTypeReference@44618fe6 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration binary_wrapper -> org.hibernate.type.BasicTypeReference@2b15ba1a -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration wrapper-binary -> org.hibernate.type.BasicTypeReference@2b15ba1a -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration image -> org.hibernate.type.BasicTypeReference@796fe2b5 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration blob -> org.hibernate.type.BasicTypeReference@5a6af2c4 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Blob -> org.hibernate.type.BasicTypeReference@5a6af2c4 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_blob -> org.hibernate.type.BasicTypeReference@123c48d0 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_blob_wrapper -> org.hibernate.type.BasicTypeReference@14fff5e7 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration short -> org.hibernate.type.BasicTypeReference@1203d787 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration short -> org.hibernate.type.BasicTypeReference@1203d787 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Short -> org.hibernate.type.BasicTypeReference@1203d787 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration integer -> org.hibernate.type.BasicTypeReference@1f72fbd1 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration int -> org.hibernate.type.BasicTypeReference@1f72fbd1 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Integer -> org.hibernate.type.BasicTypeReference@1f72fbd1 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration long -> org.hibernate.type.BasicTypeReference@6f785a27 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration long -> org.hibernate.type.BasicTypeReference@6f785a27 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Long -> org.hibernate.type.BasicTypeReference@6f785a27 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration float -> org.hibernate.type.BasicTypeReference@443dae2 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration float -> org.hibernate.type.BasicTypeReference@443dae2 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Float -> org.hibernate.type.BasicTypeReference@443dae2 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration double -> org.hibernate.type.BasicTypeReference@8f09a02 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration double -> org.hibernate.type.BasicTypeReference@8f09a02 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Double -> org.hibernate.type.BasicTypeReference@8f09a02 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration big_integer -> org.hibernate.type.BasicTypeReference@5454be -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.math.BigInteger -> org.hibernate.type.BasicTypeReference@5454be -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration big_decimal -> org.hibernate.type.BasicTypeReference@2dd08ff1 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.math.BigDecimal -> org.hibernate.type.BasicTypeReference@2dd08ff1 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration character -> org.hibernate.type.BasicTypeReference@37dec463 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration char -> org.hibernate.type.BasicTypeReference@37dec463 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Character -> org.hibernate.type.BasicTypeReference@37dec463 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration character_nchar -> org.hibernate.type.BasicTypeReference@3bf26810 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration string -> org.hibernate.type.BasicTypeReference@19213a74 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.String -> org.hibernate.type.BasicTypeReference@19213a74 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration nstring -> org.hibernate.type.BasicTypeReference@30a791a6 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration characters -> org.hibernate.type.BasicTypeReference@719bb60d -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration char[] -> org.hibernate.type.BasicTypeReference@719bb60d -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration [C -> org.hibernate.type.BasicTypeReference@719bb60d -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration wrapper-characters -> org.hibernate.type.BasicTypeReference@5981f2c6 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration text -> org.hibernate.type.BasicTypeReference@49639118 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ntext -> org.hibernate.type.BasicTypeReference@45451333 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration clob -> org.hibernate.type.BasicTypeReference@6942ee48 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Clob -> org.hibernate.type.BasicTypeReference@6942ee48 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration nclob -> org.hibernate.type.BasicTypeReference@3f033664 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.NClob -> org.hibernate.type.BasicTypeReference@3f033664 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_clob -> org.hibernate.type.BasicTypeReference@6abd8bcd -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_clob_char_array -> org.hibernate.type.BasicTypeReference@70cd122 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_clob_character_array -> org.hibernate.type.BasicTypeReference@79424f25 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_nclob -> org.hibernate.type.BasicTypeReference@5fd4e67f -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_nclob_character_array -> org.hibernate.type.BasicTypeReference@59b1edab -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_nclob_char_array -> org.hibernate.type.BasicTypeReference@3855b27e -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration Duration -> org.hibernate.type.BasicTypeReference@5305f936 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.Duration -> org.hibernate.type.BasicTypeReference@5305f936 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration LocalDateTime -> org.hibernate.type.BasicTypeReference@2b1a1a37 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.LocalDateTime -> org.hibernate.type.BasicTypeReference@2b1a1a37 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration LocalDate -> org.hibernate.type.BasicTypeReference@7d90764a -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.LocalDate -> org.hibernate.type.BasicTypeReference@7d90764a -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration LocalTime -> org.hibernate.type.BasicTypeReference@6843fdc4 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.LocalTime -> org.hibernate.type.BasicTypeReference@6843fdc4 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetDateTime -> org.hibernate.type.BasicTypeReference@147375b3 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.OffsetDateTime -> org.hibernate.type.BasicTypeReference@147375b3 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetDateTimeWithTimezone -> org.hibernate.type.BasicTypeReference@6f430ea8 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetDateTimeWithoutTimezone -> org.hibernate.type.BasicTypeReference@119f072c -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTime -> org.hibernate.type.BasicTypeReference@66456506 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.OffsetTime -> org.hibernate.type.BasicTypeReference@66456506 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTimeUtc -> org.hibernate.type.BasicTypeReference@69944a90 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTimeWithTimezone -> org.hibernate.type.BasicTypeReference@1ed52f44 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTimeWithoutTimezone -> org.hibernate.type.BasicTypeReference@771afdd5 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZonedDateTime -> org.hibernate.type.BasicTypeReference@3abadb65 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.ZonedDateTime -> org.hibernate.type.BasicTypeReference@3abadb65 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZonedDateTimeWithTimezone -> org.hibernate.type.BasicTypeReference@7131d668 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZonedDateTimeWithoutTimezone -> org.hibernate.type.BasicTypeReference@46a97805 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration date -> org.hibernate.type.BasicTypeReference@667dd150 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Date -> org.hibernate.type.BasicTypeReference@667dd150 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration time -> org.hibernate.type.BasicTypeReference@af04f09 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Time -> org.hibernate.type.BasicTypeReference@af04f09 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration timestamp -> org.hibernate.type.BasicTypeReference@758d4aa9 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Timestamp -> org.hibernate.type.BasicTypeReference@758d4aa9 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.Date -> org.hibernate.type.BasicTypeReference@758d4aa9 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration calendar -> org.hibernate.type.BasicTypeReference@78e97d4d -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.Calendar -> org.hibernate.type.BasicTypeReference@78e97d4d -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.GregorianCalendar -> org.hibernate.type.BasicTypeReference@78e97d4d -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration calendar_date -> org.hibernate.type.BasicTypeReference@7096d451 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration calendar_time -> org.hibernate.type.BasicTypeReference@7816454d -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration instant -> org.hibernate.type.BasicTypeReference@67d180e4 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.Instant -> org.hibernate.type.BasicTypeReference@67d180e4 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration uuid -> org.hibernate.type.BasicTypeReference@54e18a46 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.UUID -> org.hibernate.type.BasicTypeReference@54e18a46 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration pg-uuid -> org.hibernate.type.BasicTypeReference@54e18a46 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration uuid-binary -> org.hibernate.type.BasicTypeReference@1293f8d7 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration uuid-char -> org.hibernate.type.BasicTypeReference@58e5fbe5 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration class -> org.hibernate.type.BasicTypeReference@335896bd -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Class -> org.hibernate.type.BasicTypeReference@335896bd -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration currency -> org.hibernate.type.BasicTypeReference@6b33892a -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration Currency -> org.hibernate.type.BasicTypeReference@6b33892a -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.Currency -> org.hibernate.type.BasicTypeReference@6b33892a -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration locale -> org.hibernate.type.BasicTypeReference@666b91db -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.Locale -> org.hibernate.type.BasicTypeReference@666b91db -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration serializable -> org.hibernate.type.BasicTypeReference@11a67420 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.io.Serializable -> org.hibernate.type.BasicTypeReference@11a67420 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration timezone -> org.hibernate.type.BasicTypeReference@663cf5d7 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.TimeZone -> org.hibernate.type.BasicTypeReference@663cf5d7 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZoneOffset -> org.hibernate.type.BasicTypeReference@11b14ae3 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.ZoneOffset -> org.hibernate.type.BasicTypeReference@11b14ae3 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration url -> org.hibernate.type.BasicTypeReference@2b6ee447 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.net.URL -> org.hibernate.type.BasicTypeReference@2b6ee447 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration vector -> org.hibernate.type.BasicTypeReference@9cb927e -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration row_version -> org.hibernate.type.BasicTypeReference@8585cdd -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration object -> org.hibernate.type.JavaObjectType@6516181f -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Object -> org.hibernate.type.JavaObjectType@6516181f -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration null -> org.hibernate.type.NullType@6032622 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_date -> org.hibernate.type.BasicTypeReference@5cc075da -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_time -> org.hibernate.type.BasicTypeReference@64ef2719 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_timestamp -> org.hibernate.type.BasicTypeReference@7b423f90 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_calendar -> org.hibernate.type.BasicTypeReference@24f3fb87 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_calendar_date -> org.hibernate.type.BasicTypeReference@c7673ae -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_calendar_time -> org.hibernate.type.BasicTypeReference@113c4ad6 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_binary -> org.hibernate.type.BasicTypeReference@7be859de -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_serializable -> org.hibernate.type.BasicTypeReference@40fcaae7 -2025-10-26 09:44:10 [main] INFO o.s.o.j.p.SpringPersistenceUnitInfo - No LoadTimeWeaver setup: ignoring JPA class transformer -2025-10-26 09:44:10 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting... -2025-10-26 09:44:10 [main] INFO com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Added connection org.postgresql.jdbc.PgConnection@70273633 -2025-10-26 09:44:10 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed. -2025-10-26 09:44:10 [main] WARN org.hibernate.orm.deprecation - HHH90000025: PostgreSQLDialect does not need to be specified explicitly using 'hibernate.dialect' (remove the property setting and it will be selected by default) -2025-10-26 09:44:10 [main] DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(2003, org.hibernate.type.descriptor.sql.internal.ArrayDdlTypeImpl@4abfa2ff) replaced previous registration(org.hibernate.type.descriptor.sql.internal.ArrayDdlTypeImpl@38c1b1a7) -2025-10-26 09:44:10 [main] DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(6, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@73230721) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@10bcbbce) -2025-10-26 09:44:10 [main] DEBUG o.h.t.d.jdbc.spi.JdbcTypeRegistry - addDescriptor(2004, BlobTypeDescriptor(BLOB_BINDING)) replaced previous registration(BlobTypeDescriptor(DEFAULT)) -2025-10-26 09:44:10 [main] DEBUG o.h.t.d.jdbc.spi.JdbcTypeRegistry - addDescriptor(2005, ClobTypeDescriptor(CLOB_BINDING)) replaced previous registration(ClobTypeDescriptor(DEFAULT)) -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration JAVA_OBJECT -> org.hibernate.type.JavaObjectType@25fcdcc6 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Object -> org.hibernate.type.JavaObjectType@25fcdcc6 -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Type registration key [java.lang.Object] overrode previous entry : `org.hibernate.type.JavaObjectType@6516181f` -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.DurationType -> basicType@1(java.time.Duration,3015) -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration Duration -> basicType@1(java.time.Duration,3015) -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.Duration -> basicType@1(java.time.Duration,3015) -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.OffsetDateTimeType -> basicType@2(java.time.OffsetDateTime,3003) -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetDateTime -> basicType@2(java.time.OffsetDateTime,3003) -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.OffsetDateTime -> basicType@2(java.time.OffsetDateTime,3003) -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.ZonedDateTimeType -> basicType@3(java.time.ZonedDateTime,3003) -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZonedDateTime -> basicType@3(java.time.ZonedDateTime,3003) -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.ZonedDateTime -> basicType@3(java.time.ZonedDateTime,3003) -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.OffsetTimeType -> basicType@4(java.time.OffsetTime,3007) -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTime -> basicType@4(java.time.OffsetTime,3007) -2025-10-26 09:44:10 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.OffsetTime -> basicType@4(java.time.OffsetTime,3007) -2025-10-26 09:44:10 [main] DEBUG o.h.type.spi.TypeConfiguration$Scope - Scoping TypeConfiguration [org.hibernate.type.spi.TypeConfiguration@4e481512] to MetadataBuildingContext [org.hibernate.boot.internal.MetadataBuildingContextRootImpl@1ba98508] -2025-10-26 09:44:11 [main] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) -2025-10-26 09:44:11 [main] DEBUG o.h.type.spi.TypeConfiguration$Scope - Scoping TypeConfiguration [org.hibernate.type.spi.TypeConfiguration@4e481512] to SessionFactoryImplementor [org.hibernate.internal.SessionFactoryImpl@64ee9290] -2025-10-26 09:44:11 [main] DEBUG org.hibernate.SQL - - alter table if exists meetings - alter column description set data type TEXT -2025-10-26 09:44:11 [main] DEBUG org.hibernate.SQL - - alter table if exists meetings - alter column participants set data type TEXT -2025-10-26 09:44:11 [main] DEBUG org.hibernate.SQL - - alter table if exists minutes_sections - alter column content set data type TEXT -2025-10-26 09:44:11 [main] DEBUG org.hibernate.SQL - - alter table if exists templates - alter column description set data type TEXT -2025-10-26 09:44:11 [main] DEBUG org.hibernate.SQL - - alter table if exists templates - alter column sections set data type TEXT -2025-10-26 09:44:11 [main] DEBUG org.hibernate.SQL - - alter table if exists todos - alter column description set data type TEXT -2025-10-26 09:44:11 [main] TRACE o.h.type.spi.TypeConfiguration$Scope - Handling #sessionFactoryCreated from [org.hibernate.internal.SessionFactoryImpl@64ee9290] for TypeConfiguration -2025-10-26 09:44:11 [main] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' -2025-10-26 09:44:11 [main] INFO o.s.d.j.r.query.QueryEnhancerFactory - Hibernate is in classpath; If applicable, HQL parser will be used. -2025-10-26 09:44:12 [main] INFO c.u.h.m.infra.config.RedisConfig - Redis Lettuce Client 설정 완료 - ReadFrom: MASTER (모든 작업 Master에서 수행) -2025-10-26 09:44:12 [main] INFO c.u.h.m.infra.config.RedisConfig - LettuceConnectionFactory 설정 완료 - Host: 20.249.177.114:6379, Database: 1 -2025-10-26 09:44:12 [main] ERROR i.n.r.d.DnsServerAddressStreamProviders - Unable to load io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider, fallback to system defaults. This may result in incorrect DNS resolutions on MacOS. Check whether you have a dependency on 'io.netty:netty-resolver-dns-native-macos'. Use DEBUG level to see the full stack: java.lang.UnsatisfiedLinkError: failed to load the required native library -2025-10-26 09:44:12 [main] INFO c.u.h.m.infra.config.RedisConfig - RedisTemplate 설정 완료 -2025-10-26 09:44:12 [main] INFO c.u.h.m.infra.cache.CacheConfig - ObjectMapper 설정 완료 -2025-10-26 09:44:12 [main] INFO c.u.h.m.infra.config.EventHubConfig - Initializing Azure EventHub configuration with hub name: hgzero-eventhub-name -2025-10-26 09:44:12 [main] INFO c.u.h.m.infra.config.EventHubConfig - Creating EventHub producer for hub: hgzero-eventhub-name -2025-10-26 09:44:12 [main] INFO c.a.m.e.EventHubClientBuilder - {"az.sdk.message":"Emitting a single connection.","connectionId":"MF_977d2d_1761439452260"} -2025-10-26 09:44:12 [main] INFO c.a.m.e.i.EventHubConnectionProcessor - {"az.sdk.message":"Setting next AMQP channel.","entityPath":"hgzero-eventhub-name"} -2025-10-26 09:44:12 [main] WARN o.s.b.a.o.j.JpaBaseConfiguration$JpaWebConfiguration - spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning -2025-10-26 09:44:12 [main] WARN o.s.b.a.s.s.UserDetailsServiceAutoConfiguration - - -Using generated security password: 959a9191-0b6a-4b7f-9759-e9f25c3f8034 - -This generated password is for development use only. Your security configuration must be updated before running your application in production. - -2025-10-26 09:44:12 [main] INFO o.s.s.c.a.a.c.InitializeUserDetailsBeanManagerConfigurer$InitializeUserDetailsManagerConfigurer - Global AuthenticationManager configured with UserDetailsService bean with name inMemoryUserDetailsManager -2025-10-26 09:44:12 [main] INFO c.u.h.m.infra.config.WebSocketConfig - WebSocket 핸들러 등록 완료 - endpoint: /ws/minutes/{minutesId} -2025-10-26 09:44:12 [main] INFO o.s.b.a.e.web.EndpointLinksResolver - Exposing 3 endpoints beneath base path '/actuator' -2025-10-26 09:44:12 [main] DEBUG o.s.s.web.DefaultSecurityFilterChain - Will secure any request with filters: DisableEncodeUrlFilter, WebAsyncManagerIntegrationFilter, SecurityContextHolderFilter, HeaderWriterFilter, CorsFilter, LogoutFilter, JwtAuthenticationFilter, RequestCacheAwareFilter, SecurityContextHolderAwareRequestFilter, AnonymousAuthenticationFilter, SessionManagementFilter, ExceptionTranslationFilter, AuthorizationFilter -2025-10-26 09:44:12 [main] WARN o.s.b.a.t.ThymeleafAutoConfiguration$DefaultTemplateResolverConfiguration - Cannot find template location: classpath:/templates/ (please add some templates, check your Thymeleaf configuration, or set spring.thymeleaf.check-template-location=false) -2025-10-26 09:44:13 [main] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port 8082 (http) with context path '/' -2025-10-26 09:44:13 [main] INFO c.u.h.meeting.MeetingApplication - Started MeetingApplication in 3.978 seconds (process running for 4.13) -2025-10-26 09:44:22 [http-nio-8082-exec-2] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' -2025-10-26 09:44:22 [http-nio-8082-exec-2] INFO o.s.web.servlet.DispatcherServlet - Initializing Servlet 'dispatcherServlet' -2025-10-26 09:44:22 [http-nio-8082-exec-2] INFO o.s.web.servlet.DispatcherServlet - Completed initialization in 2 ms -2025-10-26 09:44:22 [http-nio-8082-exec-2] DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/meetings -2025-10-26 09:44:22 [http-nio-8082-exec-2] DEBUG c.u.h.m.i.c.j.JwtAuthenticationFilter - 헤더 기반 인증된 사용자: dohyunjung (user-005) -2025-10-26 09:44:22 [http-nio-8082-exec-2] DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/meetings -2025-10-26 09:44:22 [http-nio-8082-exec-2] INFO c.u.hgzero.common.aop.LoggingAspect - [Controller] com.unicorn.hgzero.meeting.infra.controller.MeetingController.createMeeting 호출 - 파라미터: [user-005, dohyunjung, dohyun.jung@example.com, com.unicorn.hgzero.meeting.infra.dto.request.CreateMeetingRequest@62d2ab8] -2025-10-26 09:44:22 [http-nio-8082-exec-2] INFO c.u.h.m.i.c.MeetingController - 회의 예약 요청 - userId: user-005, title: test 회의 -2025-10-26 09:44:22 [http-nio-8082-exec-2] INFO c.u.h.m.biz.service.MeetingService - Creating meeting: test 회의 -2025-10-26 09:44:22 [http-nio-8082-exec-2] DEBUG org.hibernate.SQL - - /* SELECT - COUNT(m) - FROM - MeetingEntity m - WHERE - m.organizerId = :organizerId - AND m.status IN ('SCHEDULED', 'IN_PROGRESS') - AND ( - ( - m.scheduledAt < :endTime - AND m.endTime > :startTime - ) - ) */ select - count(me1_0.meeting_id) - from - meetings me1_0 - where - me1_0.organizer_id=? - and me1_0.status in ('SCHEDULED', 'IN_PROGRESS') - and ( - ( - me1_0.scheduled_at? - ) - ) -2025-10-26 09:44:22 [http-nio-8082-exec-2] DEBUG org.hibernate.SQL - + (?, ?, ?, ?, ?, ?) +2025-10-27 09:14:08 [http-nio-8082-exec-2] DEBUG org.hibernate.SQL - + /* insert for + com.unicorn.hgzero.meeting.infra.gateway.entity.MeetingParticipantEntity */insert + into + meeting_participants (attended, created_at, invitation_status, updated_at, meeting_id, user_id) + values + (?, ?, ?, ?, ?, ?) +2025-10-27 09:14:08 [http-nio-8082-exec-2] INFO c.u.h.m.i.c.MeetingController - 회의 예약 완료 - userId: user-005, meetingId: 5f9144ed-43db-479a-99bb-17b20a71fb1e +2025-10-27 09:14:08 [http-nio-8082-exec-2] INFO c.u.hgzero.common.aop.LoggingAspect - [Controller] com.unicorn.hgzero.meeting.infra.controller.MeetingController.createMeeting 완료 - 실행시간: 2109ms +2025-10-27 09:17:17 [http-nio-8082-exec-4] DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/meetings/5f9144ed-43db-479a-99bb-17b20a71fb1e/start +2025-10-27 09:17:17 [http-nio-8082-exec-4] DEBUG c.u.h.m.i.c.j.JwtAuthenticationFilter - 헤더 기반 인증된 사용자: dohyunjung (user-005) +2025-10-27 09:17:17 [http-nio-8082-exec-4] DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/meetings/5f9144ed-43db-479a-99bb-17b20a71fb1e/start +2025-10-27 09:17:17 [http-nio-8082-exec-4] INFO c.u.hgzero.common.aop.LoggingAspect - [Controller] com.unicorn.hgzero.meeting.infra.controller.MeetingController.startMeeting 호출 - 파라미터: [5f9144ed-43db-479a-99bb-17b20a71fb1e, user-005, dohyunjung, dohyun.jung@example.com] +2025-10-27 09:17:17 [http-nio-8082-exec-4] INFO c.u.h.m.i.c.MeetingController - 회의 시작 요청 - meetingId: 5f9144ed-43db-479a-99bb-17b20a71fb1e, userId: user-005 +2025-10-27 09:17:17 [http-nio-8082-exec-4] INFO c.u.h.m.biz.service.MeetingService - Starting meeting: 5f9144ed-43db-479a-99bb-17b20a71fb1e +2025-10-27 09:17:17 [http-nio-8082-exec-4] DEBUG c.u.h.m.biz.service.MeetingService - Cache miss for meeting: 5f9144ed-43db-479a-99bb-17b20a71fb1e +2025-10-27 09:17:17 [http-nio-8082-exec-4] DEBUG org.hibernate.SQL - select me1_0.meeting_id, me1_0.created_at, @@ -975,7 +654,6 @@ This generated password is for development use only. Your security configuration me1_0.ended_at, me1_0.location, me1_0.organizer_id, - me1_0.participants, me1_0.purpose, me1_0.scheduled_at, me1_0.started_at, @@ -987,20 +665,47 @@ This generated password is for development use only. Your security configuration meetings me1_0 where me1_0.meeting_id=? -2025-10-26 09:44:22 [http-nio-8082-exec-2] ERROR c.u.h.m.infra.cache.CacheService - 회의 정보 캐시 저장 실패 - meetingId: 182fd2ef-b2df-46c1-99ff-5a8ee1cb6c6e -org.springframework.data.redis.RedisConnectionFailureException: Unable to connect to Redis - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$ExceptionTranslatingConnectionProvider.translateException(LettuceConnectionFactory.java:1849) - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$ExceptionTranslatingConnectionProvider.getConnection(LettuceConnectionFactory.java:1780) - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$SharedConnection.getNativeConnection(LettuceConnectionFactory.java:1582) - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$SharedConnection.lambda$getConnection$0(LettuceConnectionFactory.java:1562) - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.doInLock(LettuceConnectionFactory.java:1523) - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$SharedConnection.getConnection(LettuceConnectionFactory.java:1559) - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.getSharedConnection(LettuceConnectionFactory.java:1245) - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.getConnection(LettuceConnectionFactory.java:1051) - at org.springframework.data.redis.core.RedisConnectionUtils.fetchConnection(RedisConnectionUtils.java:195) - at org.springframework.data.redis.core.RedisConnectionUtils.doGetConnection(RedisConnectionUtils.java:144) - at org.springframework.data.redis.core.RedisConnectionUtils.getConnection(RedisConnectionUtils.java:105) - at org.springframework.data.redis.core.RedisTemplate.execute(RedisTemplate.java:398) +2025-10-27 09:17:17 [http-nio-8082-exec-4] DEBUG org.hibernate.SQL - + select + p1_0.meeting_id, + p1_0.user_id, + p1_0.attended, + p1_0.created_at, + p1_0.invitation_status, + p1_0.updated_at + from + meeting_participants p1_0 + where + p1_0.meeting_id=? +2025-10-27 09:17:17 [http-nio-8082-exec-4] DEBUG org.hibernate.SQL - + /* */ select + mpe1_0.meeting_id, + mpe1_0.user_id, + mpe1_0.attended, + mpe1_0.created_at, + mpe1_0.invitation_status, + mpe1_0.updated_at + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-27 09:17:17 [http-nio-8082-exec-4] ERROR c.u.h.m.infra.cache.CacheService - 회의 정보 캐시 저장 실패 - meetingId: 5f9144ed-43db-479a-99bb-17b20a71fb1e +org.springframework.data.redis.RedisSystemException: Error in execution + at org.springframework.data.redis.connection.lettuce.LettuceExceptionConverter.convert(LettuceExceptionConverter.java:52) + at org.springframework.data.redis.connection.lettuce.LettuceExceptionConverter.convert(LettuceExceptionConverter.java:50) + at org.springframework.data.redis.connection.lettuce.LettuceExceptionConverter.convert(LettuceExceptionConverter.java:41) + at org.springframework.data.redis.PassThroughExceptionTranslationStrategy.translate(PassThroughExceptionTranslationStrategy.java:40) + at org.springframework.data.redis.FallbackExceptionTranslationStrategy.translate(FallbackExceptionTranslationStrategy.java:38) + at org.springframework.data.redis.connection.lettuce.LettuceConnection.convertLettuceAccessException(LettuceConnection.java:310) + at org.springframework.data.redis.connection.lettuce.LettuceConnection.await(LettuceConnection.java:1012) + at org.springframework.data.redis.connection.lettuce.LettuceConnection.lambda$doInvoke$3(LettuceConnection.java:447) + at org.springframework.data.redis.connection.lettuce.LettuceInvoker$Synchronizer.invoke(LettuceInvoker.java:673) + at org.springframework.data.redis.connection.lettuce.LettuceInvoker$DefaultSingleInvocationSpec.get(LettuceInvoker.java:589) + at org.springframework.data.redis.connection.lettuce.LettuceStringCommands.setEx(LettuceStringCommands.java:134) + at org.springframework.data.redis.connection.DefaultedRedisConnection.setEx(DefaultedRedisConnection.java:340) + at org.springframework.data.redis.core.DefaultValueOperations$8.potentiallyUsePsetEx(DefaultValueOperations.java:265) + at org.springframework.data.redis.core.DefaultValueOperations$8.doInRedis(DefaultValueOperations.java:258) + at org.springframework.data.redis.core.RedisTemplate.execute(RedisTemplate.java:411) at org.springframework.data.redis.core.RedisTemplate.execute(RedisTemplate.java:378) at org.springframework.data.redis.core.AbstractOperations.execute(AbstractOperations.java:97) at org.springframework.data.redis.core.DefaultValueOperations.set(DefaultValueOperations.java:253) @@ -1026,7 +731,7 @@ org.springframework.data.redis.RedisConnectionFailureException: Unable to connec at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:768) at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:720) at com.unicorn.hgzero.meeting.infra.cache.CacheService$$SpringCGLIB$$0.cacheMeeting() - at com.unicorn.hgzero.meeting.biz.service.MeetingService.createMeeting(MeetingService.java:101) + at com.unicorn.hgzero.meeting.biz.service.MeetingService.startMeeting(MeetingService.java:160) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base/java.lang.reflect.Method.invoke(Method.java:580) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:355) @@ -1050,8 +755,8 @@ org.springframework.data.redis.RedisConnectionFailureException: Unable to connec at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:768) at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:720) - at com.unicorn.hgzero.meeting.biz.service.MeetingService$$SpringCGLIB$$0.createMeeting() - at com.unicorn.hgzero.meeting.infra.controller.MeetingController.createMeeting(MeetingController.java:66) + at com.unicorn.hgzero.meeting.biz.service.MeetingService$$SpringCGLIB$$0.startMeeting() + at com.unicorn.hgzero.meeting.infra.controller.MeetingController.startMeeting(MeetingController.java:152) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base/java.lang.reflect.Method.invoke(Method.java:580) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:355) @@ -1071,7 +776,7 @@ org.springframework.data.redis.RedisConnectionFailureException: Unable to connec at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:768) at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:720) - at com.unicorn.hgzero.meeting.infra.controller.MeetingController$$SpringCGLIB$$0.createMeeting() + at com.unicorn.hgzero.meeting.infra.controller.MeetingController$$SpringCGLIB$$0.startMeeting() at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base/java.lang.reflect.Method.invoke(Method.java:580) at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:255) @@ -1204,85 +909,23 @@ org.springframework.data.redis.RedisConnectionFailureException: Unable to connec at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) at java.base/java.lang.Thread.run(Thread.java:1583) -Caused by: io.lettuce.core.RedisConnectionException: Unable to connect to redis://***********@20.249.177.114/1?timeout=10s - at io.lettuce.core.RedisConnectionException.create(RedisConnectionException.java:78) - at io.lettuce.core.masterreplica.MasterReplica.getConnection(MasterReplica.java:261) - at io.lettuce.core.masterreplica.MasterReplica.connect(MasterReplica.java:113) - at org.springframework.data.redis.connection.lettuce.StandaloneConnectionProvider.masterReplicaConnection(StandaloneConnectionProvider.java:153) - at org.springframework.data.redis.connection.lettuce.StandaloneConnectionProvider.lambda$getConnection$0(StandaloneConnectionProvider.java:111) - at java.base/java.util.Optional.map(Optional.java:260) - at org.springframework.data.redis.connection.lettuce.StandaloneConnectionProvider.getConnection(StandaloneConnectionProvider.java:111) - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$ExceptionTranslatingConnectionProvider.getConnection(LettuceConnectionFactory.java:1778) - ... 213 common frames omitted -Caused by: io.lettuce.core.RedisConnectionException: Unable to connect to redis-node-0.redis-headless.hgzero.svc.cluster.local/:6379 - at io.lettuce.core.RedisConnectionException.create(RedisConnectionException.java:78) - at io.lettuce.core.RedisConnectionException.create(RedisConnectionException.java:56) - at io.lettuce.core.RedisClient.lambda$transformAsyncConnectionException$22(RedisClient.java:778) - at io.lettuce.core.DefaultConnectionFuture.lambda$thenCompose$1(DefaultConnectionFuture.java:253) - at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:863) - at java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:841) - at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:510) - at java.base/java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2194) - at io.lettuce.core.AbstractRedisClient.lambda$initializeChannelAsync0$6(AbstractRedisClient.java:454) - at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:590) - at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:557) - at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:492) - at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:636) - at io.netty.util.concurrent.DefaultPromise.setFailure0(DefaultPromise.java:629) - at io.netty.util.concurrent.DefaultPromise.setFailure(DefaultPromise.java:110) - at io.netty.channel.DefaultChannelPromise.setFailure(DefaultChannelPromise.java:89) - at io.netty.bootstrap.Bootstrap$2.operationComplete(Bootstrap.java:242) - at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:590) - at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:557) - at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:492) - at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:636) - at io.netty.util.concurrent.DefaultPromise.setFailure0(DefaultPromise.java:629) - at io.netty.util.concurrent.DefaultPromise.setFailure(DefaultPromise.java:110) - at io.netty.resolver.InetSocketAddressResolver$1.operationComplete(InetSocketAddressResolver.java:62) - at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:590) - at io.netty.util.concurrent.DefaultPromise.notifyListeners0(DefaultPromise.java:583) - at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:559) - at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:492) - at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:636) - at io.netty.util.concurrent.DefaultPromise.setFailure0(DefaultPromise.java:629) - at io.netty.util.concurrent.DefaultPromise.tryFailure(DefaultPromise.java:118) - at io.netty.resolver.dns.DnsNameResolver.tryFailure(DnsNameResolver.java:1075) - at io.netty.resolver.dns.DnsNameResolver.access$500(DnsNameResolver.java:96) - at io.netty.resolver.dns.DnsNameResolver$6.operationComplete(DnsNameResolver.java:1097) - at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:590) - at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:557) - at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:492) - at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:636) - at io.netty.util.concurrent.DefaultPromise.setFailure0(DefaultPromise.java:629) - at io.netty.util.concurrent.DefaultPromise.tryFailure(DefaultPromise.java:118) - at io.netty.resolver.dns.DnsResolveContext.finishResolve(DnsResolveContext.java:1158) - at io.netty.resolver.dns.DnsResolveContext.tryToFinishResolve(DnsResolveContext.java:1097) - at io.netty.resolver.dns.DnsResolveContext.query(DnsResolveContext.java:455) - at io.netty.resolver.dns.DnsResolveContext.onResponse(DnsResolveContext.java:686) - at io.netty.resolver.dns.DnsResolveContext.access$500(DnsResolveContext.java:70) - at io.netty.resolver.dns.DnsResolveContext$2.operationComplete(DnsResolveContext.java:513) - at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:590) - at io.netty.util.concurrent.DefaultPromise.notifyListeners0(DefaultPromise.java:583) - at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:559) - at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:492) - at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:636) - at io.netty.util.concurrent.DefaultPromise.setSuccess0(DefaultPromise.java:625) - at io.netty.util.concurrent.DefaultPromise.trySuccess(DefaultPromise.java:105) - at io.netty.resolver.dns.DnsQueryContext.trySuccess(DnsQueryContext.java:308) - at io.netty.resolver.dns.DnsQueryContext.finishSuccess(DnsQueryContext.java:299) - at io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler.channelRead(DnsNameResolver.java:1491) - at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) - at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) - at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) - at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) - at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) +Caused by: io.lettuce.core.RedisReadOnlyException: READONLY You can't write against a read only replica. + at io.lettuce.core.internal.ExceptionFactory.createExecutionException(ExceptionFactory.java:144) + at io.lettuce.core.internal.ExceptionFactory.createExecutionException(ExceptionFactory.java:116) + at io.lettuce.core.protocol.AsyncCommand.completeResult(AsyncCommand.java:120) + at io.lettuce.core.protocol.AsyncCommand.complete(AsyncCommand.java:111) + at io.lettuce.core.protocol.CommandWrapper.complete(CommandWrapper.java:63) + at io.lettuce.core.protocol.CommandHandler.complete(CommandHandler.java:745) + at io.lettuce.core.protocol.CommandHandler.decode(CommandHandler.java:680) + at io.lettuce.core.protocol.CommandHandler.channelRead(CommandHandler.java:597) + at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1357) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:440) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:868) - at io.netty.channel.nio.AbstractNioMessageChannel$NioMessageUnsafe.read(AbstractNioMessageChannel.java:97) + at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:166) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:788) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650) @@ -1291,123 +934,43 @@ Caused by: io.lettuce.core.RedisConnectionException: Unable to connect to redis- at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ... 1 common frames omitted -Caused by: java.util.concurrent.CompletionException: java.net.UnknownHostException: Failed to resolve 'redis-node-0.redis-headless.hgzero.svc.cluster.local' [A(1)] after 2 queries - at java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:332) - at java.base/java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:347) - at java.base/java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:636) - ... 70 common frames omitted -Caused by: java.net.UnknownHostException: Failed to resolve 'redis-node-0.redis-headless.hgzero.svc.cluster.local' [A(1)] after 2 queries - at io.netty.resolver.dns.DnsResolveContext.finishResolve(DnsResolveContext.java:1150) - ... 35 common frames omitted -Caused by: io.netty.resolver.dns.DnsErrorCauseException: Query failed with NXDOMAIN - at io.netty.resolver.dns.DnsResolveContext.onResponse(..)(Unknown Source) -2025-10-26 09:44:23 [http-nio-8082-exec-2] DEBUG c.u.h.m.biz.service.MeetingService - Meeting cached: meetingId=182fd2ef-b2df-46c1-99ff-5a8ee1cb6c6e -2025-10-26 09:44:23 [http-nio-8082-exec-2] INFO c.a.c.a.i.ReactorConnection - {"az.sdk.message":"Creating and starting connection.","connectionId":"MF_977d2d_1761439452260","hostName":"hgzero-eventhub-ns.servicebus.windows.net","port":5671} -2025-10-26 09:44:23 [http-nio-8082-exec-2] INFO c.a.c.a.i.ReactorExecutor - {"az.sdk.message":"Starting reactor.","connectionId":"MF_977d2d_1761439452260"} -2025-10-26 09:44:23 [reactor-executor-1] INFO c.a.c.a.i.handler.ConnectionHandler - {"az.sdk.message":"onConnectionInit","connectionId":"MF_977d2d_1761439452260","hostName":"hgzero-eventhub-ns.servicebus.windows.net","namespace":"hgzero-eventhub-ns.servicebus.windows.net"} -2025-10-26 09:44:23 [reactor-executor-1] INFO c.a.c.a.i.handler.ReactorHandler - {"az.sdk.message":"reactor.onReactorInit","connectionId":"MF_977d2d_1761439452260"} -2025-10-26 09:44:23 [reactor-executor-1] INFO c.a.c.a.i.handler.ConnectionHandler - {"az.sdk.message":"onConnectionLocalOpen","connectionId":"MF_977d2d_1761439452260","errorCondition":null,"errorDescription":null,"hostName":"hgzero-eventhub-ns.servicebus.windows.net"} -2025-10-26 09:44:23 [reactor-executor-1] INFO c.a.c.a.i.handler.ConnectionHandler - {"az.sdk.message":"onConnectionBound","connectionId":"MF_977d2d_1761439452260","hostName":"hgzero-eventhub-ns.servicebus.windows.net","peerDetails":"hgzero-eventhub-ns.servicebus.windows.net:5671"} -2025-10-26 09:44:23 [reactor-executor-1] INFO c.a.c.a.i.handler.ConnectionHandler - {"az.sdk.message":"onConnectionRemoteOpen","connectionId":"MF_977d2d_1761439452260","hostName":"hgzero-eventhub-ns.servicebus.windows.net","remoteContainer":"5e125cadc6744ba5a28faf87bf977e94_G24"} -2025-10-26 09:44:23 [reactor-executor-1] INFO c.a.m.e.i.EventHubConnectionProcessor - {"az.sdk.message":"Channel is now active.","entityPath":"hgzero-eventhub-name"} -2025-10-26 09:44:23 [reactor-executor-1] INFO c.a.c.a.i.handler.SessionHandler - {"az.sdk.message":"onSessionRemoteOpen","connectionId":"MF_977d2d_1761439452260","sessionName":"hgzero-eventhub-name","sessionIncCapacity":0,"sessionOutgoingWindow":2147483647} -2025-10-26 09:44:23 [reactor-executor-1] INFO c.a.c.a.i.ReactorConnection - {"az.sdk.message":"Setting CBS channel.","connectionId":"MF_977d2d_1761439452260"} -2025-10-26 09:44:23 [reactor-executor-1] INFO c.a.c.a.i.handler.SessionHandler - {"az.sdk.message":"onSessionRemoteOpen","connectionId":"MF_977d2d_1761439452260","sessionName":"cbs-session","sessionIncCapacity":0,"sessionOutgoingWindow":2147483647} -2025-10-26 09:44:23 [reactor-executor-1] INFO c.a.c.a.i.ReactorConnection - {"az.sdk.message":"Emitting new response channel.","connectionId":"MF_977d2d_1761439452260","entityPath":"$cbs","linkName":"cbs"} -2025-10-26 09:44:23 [reactor-executor-1] INFO c.a.c.a.i.AmqpChannelProcessor - {"az.sdk.message":"Setting next AMQP channel.","connectionId":"MF_977d2d_1761439452260","entityPath":"$cbs"} -2025-10-26 09:44:23 [reactor-executor-1] INFO c.a.c.a.i.AmqpChannelProcessor - {"az.sdk.message":"Next AMQP channel received.","connectionId":"MF_977d2d_1761439452260","entityPath":"$cbs","subscriberId":"un_d276fb_1761439463212"} -2025-10-26 09:44:23 [reactor-executor-1] INFO c.a.c.a.i.handler.SendLinkHandler - {"az.sdk.message":"onLinkRemoteOpen","connectionId":"MF_977d2d_1761439452260","linkName":"cbs:sender","entityPath":"$cbs","remoteTarget":"Target{address='$cbs', durable=NONE, expiryPolicy=SESSION_END, timeout=0, dynamic=false, dynamicNodeProperties=null, capabilities=null}"} -2025-10-26 09:44:23 [reactor-executor-1] INFO c.a.c.a.i.AmqpChannelProcessor - {"az.sdk.message":"Channel is now active.","connectionId":"MF_977d2d_1761439452260","entityPath":"$cbs"} -2025-10-26 09:44:23 [reactor-executor-1] INFO c.a.c.a.i.handler.ReceiveLinkHandler - {"az.sdk.message":"onLinkRemoteOpen","connectionId":"MF_977d2d_1761439452260","entityPath":"$cbs","linkName":"cbs:receiver","remoteSource":"Source{address='$cbs', durable=NONE, expiryPolicy=SESSION_END, timeout=0, dynamic=false, dynamicNodeProperties=null, distributionMode=null, filter=null, defaultOutcome=null, outcomes=null, capabilities=null}"} -2025-10-26 09:44:23 [reactor-executor-1] INFO c.a.c.a.i.ActiveClientTokenManager - {"az.sdk.message":"Scheduling refresh token task.","scopes":"amqp://hgzero-eventhub-ns.servicebus.windows.net/hgzero-eventhub-name"} -2025-10-26 09:44:23 [reactor-executor-1] INFO c.a.c.a.i.ReactorSession - {"az.sdk.message":"Creating a new send link.","connectionId":"MF_977d2d_1761439452260","linkName":"hgzero-eventhub-name","sessionName":"hgzero-eventhub-name"} -2025-10-26 09:44:23 [reactor-executor-1] INFO c.a.c.a.i.handler.SendLinkHandler - {"az.sdk.message":"onLinkRemoteOpen","connectionId":"MF_977d2d_1761439452260","linkName":"hgzero-eventhub-name","entityPath":"hgzero-eventhub-name","remoteTarget":"Target{address='hgzero-eventhub-name', durable=NONE, expiryPolicy=SESSION_END, timeout=0, dynamic=false, dynamicNodeProperties=null, capabilities=null}"} -2025-10-26 09:44:23 [http-nio-8082-exec-2] INFO c.u.h.m.i.e.p.EventHubPublisher - 이벤트 발행 완료: topic=notification, type=NOTIFICATION_REQUEST, partitionKey=daewoong.jeon@kt.com -2025-10-26 09:44:23 [http-nio-8082-exec-2] INFO c.u.h.m.i.e.p.EventHubPublisher - 이벤트 발행 완료: topic=notification, type=NOTIFICATION_REQUEST, partitionKey=du0928@gmail.com -2025-10-26 09:44:23 [http-nio-8082-exec-2] INFO c.u.h.m.i.e.p.EventHubPublisher - 회의 생성 알림 발행 완료 - meetingId: 182fd2ef-b2df-46c1-99ff-5a8ee1cb6c6e, participants count: 2 -2025-10-26 09:44:23 [http-nio-8082-exec-2] DEBUG c.u.h.m.biz.service.MeetingService - Meeting invitation events published: meetingId=182fd2ef-b2df-46c1-99ff-5a8ee1cb6c6e, participants=2 -2025-10-26 09:44:23 [http-nio-8082-exec-2] INFO c.u.h.m.biz.service.MeetingService - Meeting created successfully: 182fd2ef-b2df-46c1-99ff-5a8ee1cb6c6e -2025-10-26 09:44:23 [http-nio-8082-exec-2] DEBUG org.hibernate.SQL - - /* insert for - com.unicorn.hgzero.meeting.infra.gateway.entity.MeetingEntity */insert - into - meetings (created_at, description, end_time, ended_at, location, organizer_id, participants, purpose, scheduled_at, started_at, status, template_id, title, updated_at, meeting_id) - values - (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) -2025-10-26 09:44:23 [http-nio-8082-exec-2] INFO c.u.h.m.i.c.MeetingController - 회의 예약 완료 - userId: user-005, meetingId: 182fd2ef-b2df-46c1-99ff-5a8ee1cb6c6e -2025-10-26 09:44:23 [http-nio-8082-exec-2] INFO c.u.hgzero.common.aop.LoggingAspect - [Controller] com.unicorn.hgzero.meeting.infra.controller.MeetingController.createMeeting 완료 - 실행시간: 613ms -2025-10-26 09:45:40 [http-nio-8082-exec-5] DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/meetings -2025-10-26 09:45:40 [http-nio-8082-exec-5] DEBUG c.u.h.m.i.c.j.JwtAuthenticationFilter - 헤더 기반 인증된 사용자: dohyunjung (user-005) -2025-10-26 09:45:40 [http-nio-8082-exec-5] DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/meetings -2025-10-26 09:45:40 [http-nio-8082-exec-5] INFO c.u.hgzero.common.aop.LoggingAspect - [Controller] com.unicorn.hgzero.meeting.infra.controller.MeetingController.createMeeting 호출 - 파라미터: [user-005, dohyunjung, dohyun.jung@example.com, com.unicorn.hgzero.meeting.infra.dto.request.CreateMeetingRequest@1e330a13] -2025-10-26 09:45:40 [http-nio-8082-exec-5] INFO c.u.h.m.i.c.MeetingController - 회의 예약 요청 - userId: user-005, title: test 회의 -2025-10-26 09:45:40 [http-nio-8082-exec-5] INFO c.u.h.m.biz.service.MeetingService - Creating meeting: test 회의 -2025-10-26 09:45:40 [http-nio-8082-exec-5] DEBUG org.hibernate.SQL - - /* SELECT - COUNT(m) - FROM - MeetingEntity m - WHERE - m.organizerId = :organizerId - AND m.status IN ('SCHEDULED', 'IN_PROGRESS') - AND ( - ( - m.scheduledAt < :endTime - AND m.endTime > :startTime - ) - ) */ select - count(me1_0.meeting_id) - from - meetings me1_0 - where - me1_0.organizer_id=? - and me1_0.status in ('SCHEDULED', 'IN_PROGRESS') - and ( - ( - me1_0.scheduled_at? - ) - ) -2025-10-26 09:45:40 [http-nio-8082-exec-5] DEBUG org.hibernate.SQL - +2025-10-27 09:17:17 [http-nio-8082-exec-4] DEBUG org.hibernate.SQL - select - me1_0.meeting_id, - me1_0.created_at, - me1_0.description, - me1_0.end_time, - me1_0.ended_at, - me1_0.location, - me1_0.organizer_id, - me1_0.participants, - me1_0.purpose, - me1_0.scheduled_at, - me1_0.started_at, - me1_0.status, - me1_0.template_id, - me1_0.title, - me1_0.updated_at + se1_0.session_id, + se1_0.created_at, + se1_0.ended_at, + se1_0.meeting_id, + se1_0.minutes_id, + se1_0.started_at, + se1_0.started_by, + se1_0.status, + se1_0.updated_at from - meetings me1_0 + sessions se1_0 where - me1_0.meeting_id=? -2025-10-26 09:45:40 [http-nio-8082-exec-5] ERROR c.u.h.m.infra.cache.CacheService - 회의 정보 캐시 저장 실패 - meetingId: 787c3dab-f375-4a99-bf86-c0de7997248c -org.springframework.data.redis.RedisConnectionFailureException: Unable to connect to Redis - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$ExceptionTranslatingConnectionProvider.translateException(LettuceConnectionFactory.java:1849) - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$ExceptionTranslatingConnectionProvider.getConnection(LettuceConnectionFactory.java:1780) - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$SharedConnection.getNativeConnection(LettuceConnectionFactory.java:1582) - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$SharedConnection.lambda$getConnection$0(LettuceConnectionFactory.java:1562) - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.doInLock(LettuceConnectionFactory.java:1523) - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$SharedConnection.getConnection(LettuceConnectionFactory.java:1559) - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.getSharedConnection(LettuceConnectionFactory.java:1245) - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.getConnection(LettuceConnectionFactory.java:1051) - at org.springframework.data.redis.core.RedisConnectionUtils.fetchConnection(RedisConnectionUtils.java:195) - at org.springframework.data.redis.core.RedisConnectionUtils.doGetConnection(RedisConnectionUtils.java:144) - at org.springframework.data.redis.core.RedisConnectionUtils.getConnection(RedisConnectionUtils.java:105) - at org.springframework.data.redis.core.RedisTemplate.execute(RedisTemplate.java:398) + se1_0.session_id=? +2025-10-27 09:17:17 [http-nio-8082-exec-4] DEBUG c.u.h.m.biz.service.MeetingService - Session created: sessionId=3bee2b78-9a53-4a10-b652-78bc4cafad88, meetingId=5f9144ed-43db-479a-99bb-17b20a71fb1e +2025-10-27 09:17:17 [http-nio-8082-exec-4] DEBUG c.u.h.m.biz.service.MeetingService - Meeting status updated to IN_PROGRESS: 5f9144ed-43db-479a-99bb-17b20a71fb1e +2025-10-27 09:17:17 [http-nio-8082-exec-4] ERROR c.u.h.m.infra.cache.CacheService - 캐시 삭제 실패 - key: meeting:5f9144ed-43db-479a-99bb-17b20a71fb1e +org.springframework.data.redis.RedisSystemException: Error in execution + at org.springframework.data.redis.connection.lettuce.LettuceExceptionConverter.convert(LettuceExceptionConverter.java:52) + at org.springframework.data.redis.connection.lettuce.LettuceExceptionConverter.convert(LettuceExceptionConverter.java:50) + at org.springframework.data.redis.connection.lettuce.LettuceExceptionConverter.convert(LettuceExceptionConverter.java:41) + at org.springframework.data.redis.PassThroughExceptionTranslationStrategy.translate(PassThroughExceptionTranslationStrategy.java:40) + at org.springframework.data.redis.FallbackExceptionTranslationStrategy.translate(FallbackExceptionTranslationStrategy.java:38) + at org.springframework.data.redis.connection.lettuce.LettuceConnection.convertLettuceAccessException(LettuceConnection.java:310) + at org.springframework.data.redis.connection.lettuce.LettuceConnection.await(LettuceConnection.java:1012) + at org.springframework.data.redis.connection.lettuce.LettuceConnection.lambda$doInvoke$3(LettuceConnection.java:447) + at org.springframework.data.redis.connection.lettuce.LettuceInvoker$Synchronizer.invoke(LettuceInvoker.java:665) + at org.springframework.data.redis.connection.lettuce.LettuceInvoker.just(LettuceInvoker.java:94) + at org.springframework.data.redis.connection.lettuce.LettuceKeyCommands.del(LettuceKeyCommands.java:91) + at org.springframework.data.redis.core.RedisTemplate.lambda$delete$5(RedisTemplate.java:593) + at org.springframework.data.redis.core.RedisTemplate.lambda$doWithKeys$22(RedisTemplate.java:790) + at org.springframework.data.redis.core.RedisTemplate.execute(RedisTemplate.java:411) at org.springframework.data.redis.core.RedisTemplate.execute(RedisTemplate.java:378) - at org.springframework.data.redis.core.AbstractOperations.execute(AbstractOperations.java:97) - at org.springframework.data.redis.core.DefaultValueOperations.set(DefaultValueOperations.java:253) - at org.springframework.data.redis.core.ValueOperations.set(ValueOperations.java:75) - at com.unicorn.hgzero.meeting.infra.cache.CacheService.cacheMeeting(CacheService.java:49) + at org.springframework.data.redis.core.RedisTemplate.doWithKeys(RedisTemplate.java:790) + at org.springframework.data.redis.core.RedisTemplate.delete(RedisTemplate.java:593) + at com.unicorn.hgzero.meeting.infra.cache.CacheService.evictCache(CacheService.java:203) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base/java.lang.reflect.Method.invoke(Method.java:580) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:355) @@ -1427,8 +990,8 @@ org.springframework.data.redis.RedisConnectionFailureException: Unable to connec at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:768) at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:720) - at com.unicorn.hgzero.meeting.infra.cache.CacheService$$SpringCGLIB$$0.cacheMeeting() - at com.unicorn.hgzero.meeting.biz.service.MeetingService.createMeeting(MeetingService.java:101) + at com.unicorn.hgzero.meeting.infra.cache.CacheService$$SpringCGLIB$$0.evictCache() + at com.unicorn.hgzero.meeting.biz.service.MeetingService.startMeeting(MeetingService.java:206) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base/java.lang.reflect.Method.invoke(Method.java:580) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:355) @@ -1452,8 +1015,8 @@ org.springframework.data.redis.RedisConnectionFailureException: Unable to connec at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:768) at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:720) - at com.unicorn.hgzero.meeting.biz.service.MeetingService$$SpringCGLIB$$0.createMeeting() - at com.unicorn.hgzero.meeting.infra.controller.MeetingController.createMeeting(MeetingController.java:66) + at com.unicorn.hgzero.meeting.biz.service.MeetingService$$SpringCGLIB$$0.startMeeting() + at com.unicorn.hgzero.meeting.infra.controller.MeetingController.startMeeting(MeetingController.java:152) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base/java.lang.reflect.Method.invoke(Method.java:580) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:355) @@ -1473,7 +1036,7 @@ org.springframework.data.redis.RedisConnectionFailureException: Unable to connec at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:768) at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:720) - at com.unicorn.hgzero.meeting.infra.controller.MeetingController$$SpringCGLIB$$0.createMeeting() + at com.unicorn.hgzero.meeting.infra.controller.MeetingController$$SpringCGLIB$$0.startMeeting() at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base/java.lang.reflect.Method.invoke(Method.java:580) at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:255) @@ -1606,85 +1169,23 @@ org.springframework.data.redis.RedisConnectionFailureException: Unable to connec at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) at java.base/java.lang.Thread.run(Thread.java:1583) -Caused by: io.lettuce.core.RedisConnectionException: Unable to connect to redis://***********@20.249.177.114/1?timeout=10s - at io.lettuce.core.RedisConnectionException.create(RedisConnectionException.java:78) - at io.lettuce.core.masterreplica.MasterReplica.getConnection(MasterReplica.java:261) - at io.lettuce.core.masterreplica.MasterReplica.connect(MasterReplica.java:113) - at org.springframework.data.redis.connection.lettuce.StandaloneConnectionProvider.masterReplicaConnection(StandaloneConnectionProvider.java:153) - at org.springframework.data.redis.connection.lettuce.StandaloneConnectionProvider.lambda$getConnection$0(StandaloneConnectionProvider.java:111) - at java.base/java.util.Optional.map(Optional.java:260) - at org.springframework.data.redis.connection.lettuce.StandaloneConnectionProvider.getConnection(StandaloneConnectionProvider.java:111) - at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$ExceptionTranslatingConnectionProvider.getConnection(LettuceConnectionFactory.java:1778) - ... 213 common frames omitted -Caused by: io.lettuce.core.RedisConnectionException: Unable to connect to redis-node-0.redis-headless.hgzero.svc.cluster.local/:6379 - at io.lettuce.core.RedisConnectionException.create(RedisConnectionException.java:78) - at io.lettuce.core.RedisConnectionException.create(RedisConnectionException.java:56) - at io.lettuce.core.RedisClient.lambda$transformAsyncConnectionException$22(RedisClient.java:778) - at io.lettuce.core.DefaultConnectionFuture.lambda$thenCompose$1(DefaultConnectionFuture.java:253) - at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:863) - at java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:841) - at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:510) - at java.base/java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2194) - at io.lettuce.core.AbstractRedisClient.lambda$initializeChannelAsync0$6(AbstractRedisClient.java:454) - at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:590) - at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:557) - at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:492) - at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:636) - at io.netty.util.concurrent.DefaultPromise.setFailure0(DefaultPromise.java:629) - at io.netty.util.concurrent.DefaultPromise.setFailure(DefaultPromise.java:110) - at io.netty.channel.DefaultChannelPromise.setFailure(DefaultChannelPromise.java:89) - at io.netty.bootstrap.Bootstrap$2.operationComplete(Bootstrap.java:242) - at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:590) - at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:557) - at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:492) - at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:636) - at io.netty.util.concurrent.DefaultPromise.setFailure0(DefaultPromise.java:629) - at io.netty.util.concurrent.DefaultPromise.setFailure(DefaultPromise.java:110) - at io.netty.resolver.InetSocketAddressResolver$1.operationComplete(InetSocketAddressResolver.java:62) - at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:590) - at io.netty.util.concurrent.DefaultPromise.notifyListeners0(DefaultPromise.java:583) - at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:559) - at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:492) - at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:636) - at io.netty.util.concurrent.DefaultPromise.setFailure0(DefaultPromise.java:629) - at io.netty.util.concurrent.DefaultPromise.tryFailure(DefaultPromise.java:118) - at io.netty.resolver.dns.DnsNameResolver.tryFailure(DnsNameResolver.java:1075) - at io.netty.resolver.dns.DnsNameResolver.access$500(DnsNameResolver.java:96) - at io.netty.resolver.dns.DnsNameResolver$6.operationComplete(DnsNameResolver.java:1097) - at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:590) - at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:557) - at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:492) - at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:636) - at io.netty.util.concurrent.DefaultPromise.setFailure0(DefaultPromise.java:629) - at io.netty.util.concurrent.DefaultPromise.tryFailure(DefaultPromise.java:118) - at io.netty.resolver.dns.DnsResolveContext.finishResolve(DnsResolveContext.java:1158) - at io.netty.resolver.dns.DnsResolveContext.tryToFinishResolve(DnsResolveContext.java:1097) - at io.netty.resolver.dns.DnsResolveContext.query(DnsResolveContext.java:455) - at io.netty.resolver.dns.DnsResolveContext.onResponse(DnsResolveContext.java:686) - at io.netty.resolver.dns.DnsResolveContext.access$500(DnsResolveContext.java:70) - at io.netty.resolver.dns.DnsResolveContext$2.operationComplete(DnsResolveContext.java:513) - at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:590) - at io.netty.util.concurrent.DefaultPromise.notifyListeners0(DefaultPromise.java:583) - at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:559) - at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:492) - at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:636) - at io.netty.util.concurrent.DefaultPromise.setSuccess0(DefaultPromise.java:625) - at io.netty.util.concurrent.DefaultPromise.trySuccess(DefaultPromise.java:105) - at io.netty.resolver.dns.DnsQueryContext.trySuccess(DnsQueryContext.java:308) - at io.netty.resolver.dns.DnsQueryContext.finishSuccess(DnsQueryContext.java:299) - at io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler.channelRead(DnsNameResolver.java:1491) - at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) - at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) - at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) - at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) - at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) +Caused by: io.lettuce.core.RedisReadOnlyException: READONLY You can't write against a read only replica. + at io.lettuce.core.internal.ExceptionFactory.createExecutionException(ExceptionFactory.java:144) + at io.lettuce.core.internal.ExceptionFactory.createExecutionException(ExceptionFactory.java:116) + at io.lettuce.core.protocol.AsyncCommand.completeResult(AsyncCommand.java:120) + at io.lettuce.core.protocol.AsyncCommand.complete(AsyncCommand.java:111) + at io.lettuce.core.protocol.CommandWrapper.complete(CommandWrapper.java:63) + at io.lettuce.core.protocol.CommandHandler.complete(CommandHandler.java:745) + at io.lettuce.core.protocol.CommandHandler.decode(CommandHandler.java:680) + at io.lettuce.core.protocol.CommandHandler.channelRead(CommandHandler.java:597) + at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1357) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:440) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:868) - at io.netty.channel.nio.AbstractNioMessageChannel$NioMessageUnsafe.read(AbstractNioMessageChannel.java:97) + at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:166) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:788) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650) @@ -1693,356 +1194,232 @@ Caused by: io.lettuce.core.RedisConnectionException: Unable to connect to redis- at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ... 1 common frames omitted -Caused by: java.util.concurrent.CompletionException: java.net.UnknownHostException: Failed to resolve 'redis-node-0.redis-headless.hgzero.svc.cluster.local' [A(1)] after 2 queries - at java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:332) - at java.base/java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:347) - at java.base/java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:636) - ... 70 common frames omitted -Caused by: java.net.UnknownHostException: Failed to resolve 'redis-node-0.redis-headless.hgzero.svc.cluster.local' [A(1)] after 2 queries - at io.netty.resolver.dns.DnsResolveContext.finishResolve(DnsResolveContext.java:1150) - ... 35 common frames omitted -Caused by: io.netty.resolver.dns.DnsErrorCauseException: Query failed with NXDOMAIN - at io.netty.resolver.dns.DnsResolveContext.onResponse(..)(Unknown Source) -2025-10-26 09:45:40 [http-nio-8082-exec-5] DEBUG c.u.h.m.biz.service.MeetingService - Meeting cached: meetingId=787c3dab-f375-4a99-bf86-c0de7997248c -2025-10-26 09:45:40 [http-nio-8082-exec-5] INFO c.u.h.m.i.e.p.EventHubPublisher - 이벤트 발행 완료: topic=notification, type=NOTIFICATION_REQUEST, partitionKey=daewoong.jeon@kt.com -2025-10-26 09:45:40 [http-nio-8082-exec-5] INFO c.u.h.m.i.e.p.EventHubPublisher - 이벤트 발행 완료: topic=notification, type=NOTIFICATION_REQUEST, partitionKey=du0928@gmail.com -2025-10-26 09:45:40 [http-nio-8082-exec-5] INFO c.u.h.m.i.e.p.EventHubPublisher - 회의 생성 알림 발행 완료 - meetingId: 787c3dab-f375-4a99-bf86-c0de7997248c, participants count: 2 -2025-10-26 09:45:40 [http-nio-8082-exec-5] DEBUG c.u.h.m.biz.service.MeetingService - Meeting invitation events published: meetingId=787c3dab-f375-4a99-bf86-c0de7997248c, participants=2 -2025-10-26 09:45:40 [http-nio-8082-exec-5] INFO c.u.h.m.biz.service.MeetingService - Meeting created successfully: 787c3dab-f375-4a99-bf86-c0de7997248c -2025-10-26 09:45:40 [http-nio-8082-exec-5] DEBUG org.hibernate.SQL - - /* insert for - com.unicorn.hgzero.meeting.infra.gateway.entity.MeetingEntity */insert - into - meetings (created_at, description, end_time, ended_at, location, organizer_id, participants, purpose, scheduled_at, started_at, status, template_id, title, updated_at, meeting_id) - values - (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) -2025-10-26 09:45:40 [http-nio-8082-exec-5] INFO c.u.h.m.i.c.MeetingController - 회의 예약 완료 - userId: user-005, meetingId: 787c3dab-f375-4a99-bf86-c0de7997248c -2025-10-26 09:45:40 [http-nio-8082-exec-5] INFO c.u.hgzero.common.aop.LoggingAspect - [Controller] com.unicorn.hgzero.meeting.infra.controller.MeetingController.createMeeting 완료 - 실행시간: 134ms -2025-10-26 09:53:34 [SpringApplicationShutdownHook] INFO c.a.m.e.i.EventHubConnectionProcessor - {"az.sdk.message":"Upstream connection publisher was completed. Terminating processor.","entityPath":"hgzero-eventhub-name"} -2025-10-26 09:53:34 [SpringApplicationShutdownHook] INFO c.a.c.a.i.ReactorConnection - {"az.sdk.message":"Disposing of ReactorConnection.","connectionId":"MF_977d2d_1761439452260","isTransient":false,"isInitiatedByClient":true,"shutdownMessage":"Disposed by client."} -2025-10-26 09:53:34 [SpringApplicationShutdownHook] INFO c.a.m.e.i.EventHubConnectionProcessor - {"az.sdk.message":"Channel is disposed.","entityPath":"hgzero-eventhub-name"} -2025-10-26 09:53:34 [reactor-executor-1] INFO c.a.c.a.i.handler.SessionHandler - {"az.sdk.message":"onSessionRemoteClose","connectionId":"MF_977d2d_1761439452260","errorCondition":null,"errorDescription":null,"sessionName":"hgzero-eventhub-name"} -2025-10-26 09:53:34 [reactor-executor-1] INFO c.a.c.a.i.handler.SessionHandler - {"az.sdk.message":"onSessionRemoteClose","connectionId":"MF_977d2d_1761439452260","errorCondition":null,"errorDescription":null,"sessionName":"cbs-session"} -2025-10-26 09:53:34 [SpringApplicationShutdownHook] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' -2025-10-26 09:53:34 [SpringApplicationShutdownHook] TRACE o.h.type.spi.TypeConfiguration$Scope - Handling #sessionFactoryClosed from [org.hibernate.internal.SessionFactoryImpl@64ee9290] for TypeConfiguration -2025-10-26 09:53:34 [SpringApplicationShutdownHook] DEBUG o.h.type.spi.TypeConfiguration$Scope - Un-scoping TypeConfiguration [org.hibernate.type.spi.TypeConfiguration$Scope@4d83fccb] from SessionFactory [org.hibernate.internal.SessionFactoryImpl@64ee9290] -2025-10-26 09:53:34 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated... -2025-10-26 09:53:34 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown completed. -2025-10-26 09:53:40 [main] INFO c.u.h.meeting.MeetingApplication - Starting MeetingApplication using Java 21.0.8 with PID 70324 (/Users/daewoong/home/workspace/HGZero/meeting/build/classes/java/main started by daewoong in /Users/daewoong/home/workspace/HGZero/meeting) -2025-10-26 09:53:40 [main] DEBUG c.u.h.meeting.MeetingApplication - Running with Spring Boot v3.3.5, Spring v6.1.14 -2025-10-26 09:53:40 [main] INFO c.u.h.meeting.MeetingApplication - The following 1 profile is active: "dev" -2025-10-26 09:53:40 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode -2025-10-26 09:53:40 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2025-10-26 09:53:41 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 57 ms. Found 6 JPA repository interfaces. -2025-10-26 09:53:41 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode -2025-10-26 09:53:41 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode. -2025-10-26 09:53:41 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.MeetingJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-10-26 09:53:41 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.MinutesJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-10-26 09:53:41 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.MinutesSectionJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-10-26 09:53:41 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.SessionJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-10-26 09:53:41 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.TemplateJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-10-26 09:53:41 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.TodoJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-10-26 09:53:41 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 13 ms. Found 0 Redis repository interfaces. -2025-10-26 09:53:41 [main] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port 8082 (http) -2025-10-26 09:53:41 [main] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] -2025-10-26 09:53:41 [main] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.31] -2025-10-26 09:53:41 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext -2025-10-26 09:53:41 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 984 ms -2025-10-26 09:53:41 [main] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-10-26 09:53:41 [main] INFO org.hibernate.Version - HHH000412: Hibernate ORM core version 6.5.3.Final -2025-10-26 09:53:41 [main] INFO o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration boolean -> org.hibernate.type.BasicTypeReference@3cc6f036 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration boolean -> org.hibernate.type.BasicTypeReference@3cc6f036 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Boolean -> org.hibernate.type.BasicTypeReference@3cc6f036 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration numeric_boolean -> org.hibernate.type.BasicTypeReference@72d16d6 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.NumericBooleanConverter -> org.hibernate.type.BasicTypeReference@72d16d6 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration true_false -> org.hibernate.type.BasicTypeReference@7b0525a8 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.TrueFalseConverter -> org.hibernate.type.BasicTypeReference@7b0525a8 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration yes_no -> org.hibernate.type.BasicTypeReference@4f2d8175 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.YesNoConverter -> org.hibernate.type.BasicTypeReference@4f2d8175 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration byte -> org.hibernate.type.BasicTypeReference@44618fe6 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration byte -> org.hibernate.type.BasicTypeReference@44618fe6 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Byte -> org.hibernate.type.BasicTypeReference@44618fe6 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration binary -> org.hibernate.type.BasicTypeReference@2b15ba1a -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration byte[] -> org.hibernate.type.BasicTypeReference@2b15ba1a -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration [B -> org.hibernate.type.BasicTypeReference@2b15ba1a -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration binary_wrapper -> org.hibernate.type.BasicTypeReference@796fe2b5 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration wrapper-binary -> org.hibernate.type.BasicTypeReference@796fe2b5 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration image -> org.hibernate.type.BasicTypeReference@5a6af2c4 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration blob -> org.hibernate.type.BasicTypeReference@123c48d0 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Blob -> org.hibernate.type.BasicTypeReference@123c48d0 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_blob -> org.hibernate.type.BasicTypeReference@14fff5e7 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_blob_wrapper -> org.hibernate.type.BasicTypeReference@1203d787 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration short -> org.hibernate.type.BasicTypeReference@1f72fbd1 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration short -> org.hibernate.type.BasicTypeReference@1f72fbd1 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Short -> org.hibernate.type.BasicTypeReference@1f72fbd1 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration integer -> org.hibernate.type.BasicTypeReference@6f785a27 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration int -> org.hibernate.type.BasicTypeReference@6f785a27 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Integer -> org.hibernate.type.BasicTypeReference@6f785a27 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration long -> org.hibernate.type.BasicTypeReference@443dae2 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration long -> org.hibernate.type.BasicTypeReference@443dae2 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Long -> org.hibernate.type.BasicTypeReference@443dae2 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration float -> org.hibernate.type.BasicTypeReference@8f09a02 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration float -> org.hibernate.type.BasicTypeReference@8f09a02 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Float -> org.hibernate.type.BasicTypeReference@8f09a02 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration double -> org.hibernate.type.BasicTypeReference@5454be -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration double -> org.hibernate.type.BasicTypeReference@5454be -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Double -> org.hibernate.type.BasicTypeReference@5454be -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration big_integer -> org.hibernate.type.BasicTypeReference@2dd08ff1 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.math.BigInteger -> org.hibernate.type.BasicTypeReference@2dd08ff1 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration big_decimal -> org.hibernate.type.BasicTypeReference@37dec463 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.math.BigDecimal -> org.hibernate.type.BasicTypeReference@37dec463 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration character -> org.hibernate.type.BasicTypeReference@3bf26810 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration char -> org.hibernate.type.BasicTypeReference@3bf26810 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Character -> org.hibernate.type.BasicTypeReference@3bf26810 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration character_nchar -> org.hibernate.type.BasicTypeReference@19213a74 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration string -> org.hibernate.type.BasicTypeReference@30a791a6 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.String -> org.hibernate.type.BasicTypeReference@30a791a6 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration nstring -> org.hibernate.type.BasicTypeReference@719bb60d -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration characters -> org.hibernate.type.BasicTypeReference@5981f2c6 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration char[] -> org.hibernate.type.BasicTypeReference@5981f2c6 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration [C -> org.hibernate.type.BasicTypeReference@5981f2c6 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration wrapper-characters -> org.hibernate.type.BasicTypeReference@49639118 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration text -> org.hibernate.type.BasicTypeReference@45451333 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ntext -> org.hibernate.type.BasicTypeReference@6942ee48 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration clob -> org.hibernate.type.BasicTypeReference@3f033664 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Clob -> org.hibernate.type.BasicTypeReference@3f033664 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration nclob -> org.hibernate.type.BasicTypeReference@6abd8bcd -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.NClob -> org.hibernate.type.BasicTypeReference@6abd8bcd -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_clob -> org.hibernate.type.BasicTypeReference@70cd122 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_clob_char_array -> org.hibernate.type.BasicTypeReference@79424f25 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_clob_character_array -> org.hibernate.type.BasicTypeReference@5fd4e67f -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_nclob -> org.hibernate.type.BasicTypeReference@59b1edab -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_nclob_character_array -> org.hibernate.type.BasicTypeReference@3855b27e -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_nclob_char_array -> org.hibernate.type.BasicTypeReference@5305f936 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration Duration -> org.hibernate.type.BasicTypeReference@2b1a1a37 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.Duration -> org.hibernate.type.BasicTypeReference@2b1a1a37 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration LocalDateTime -> org.hibernate.type.BasicTypeReference@7d90764a -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.LocalDateTime -> org.hibernate.type.BasicTypeReference@7d90764a -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration LocalDate -> org.hibernate.type.BasicTypeReference@6843fdc4 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.LocalDate -> org.hibernate.type.BasicTypeReference@6843fdc4 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration LocalTime -> org.hibernate.type.BasicTypeReference@147375b3 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.LocalTime -> org.hibernate.type.BasicTypeReference@147375b3 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetDateTime -> org.hibernate.type.BasicTypeReference@6f430ea8 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.OffsetDateTime -> org.hibernate.type.BasicTypeReference@6f430ea8 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetDateTimeWithTimezone -> org.hibernate.type.BasicTypeReference@119f072c -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetDateTimeWithoutTimezone -> org.hibernate.type.BasicTypeReference@66456506 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTime -> org.hibernate.type.BasicTypeReference@69944a90 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.OffsetTime -> org.hibernate.type.BasicTypeReference@69944a90 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTimeUtc -> org.hibernate.type.BasicTypeReference@1ed52f44 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTimeWithTimezone -> org.hibernate.type.BasicTypeReference@771afdd5 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTimeWithoutTimezone -> org.hibernate.type.BasicTypeReference@3abadb65 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZonedDateTime -> org.hibernate.type.BasicTypeReference@7131d668 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.ZonedDateTime -> org.hibernate.type.BasicTypeReference@7131d668 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZonedDateTimeWithTimezone -> org.hibernate.type.BasicTypeReference@46a97805 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZonedDateTimeWithoutTimezone -> org.hibernate.type.BasicTypeReference@667dd150 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration date -> org.hibernate.type.BasicTypeReference@af04f09 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Date -> org.hibernate.type.BasicTypeReference@af04f09 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration time -> org.hibernate.type.BasicTypeReference@758d4aa9 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Time -> org.hibernate.type.BasicTypeReference@758d4aa9 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration timestamp -> org.hibernate.type.BasicTypeReference@78e97d4d -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Timestamp -> org.hibernate.type.BasicTypeReference@78e97d4d -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.Date -> org.hibernate.type.BasicTypeReference@78e97d4d -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration calendar -> org.hibernate.type.BasicTypeReference@7096d451 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.Calendar -> org.hibernate.type.BasicTypeReference@7096d451 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.GregorianCalendar -> org.hibernate.type.BasicTypeReference@7096d451 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration calendar_date -> org.hibernate.type.BasicTypeReference@7816454d -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration calendar_time -> org.hibernate.type.BasicTypeReference@67d180e4 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration instant -> org.hibernate.type.BasicTypeReference@54e18a46 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.Instant -> org.hibernate.type.BasicTypeReference@54e18a46 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration uuid -> org.hibernate.type.BasicTypeReference@1293f8d7 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.UUID -> org.hibernate.type.BasicTypeReference@1293f8d7 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration pg-uuid -> org.hibernate.type.BasicTypeReference@1293f8d7 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration uuid-binary -> org.hibernate.type.BasicTypeReference@58e5fbe5 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration uuid-char -> org.hibernate.type.BasicTypeReference@335896bd -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration class -> org.hibernate.type.BasicTypeReference@6b33892a -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Class -> org.hibernate.type.BasicTypeReference@6b33892a -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration currency -> org.hibernate.type.BasicTypeReference@666b91db -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration Currency -> org.hibernate.type.BasicTypeReference@666b91db -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.Currency -> org.hibernate.type.BasicTypeReference@666b91db -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration locale -> org.hibernate.type.BasicTypeReference@11a67420 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.Locale -> org.hibernate.type.BasicTypeReference@11a67420 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration serializable -> org.hibernate.type.BasicTypeReference@663cf5d7 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.io.Serializable -> org.hibernate.type.BasicTypeReference@663cf5d7 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration timezone -> org.hibernate.type.BasicTypeReference@11b14ae3 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.TimeZone -> org.hibernate.type.BasicTypeReference@11b14ae3 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZoneOffset -> org.hibernate.type.BasicTypeReference@2b6ee447 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.ZoneOffset -> org.hibernate.type.BasicTypeReference@2b6ee447 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration url -> org.hibernate.type.BasicTypeReference@9cb927e -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.net.URL -> org.hibernate.type.BasicTypeReference@9cb927e -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration vector -> org.hibernate.type.BasicTypeReference@8585cdd -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration row_version -> org.hibernate.type.BasicTypeReference@1325f967 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration object -> org.hibernate.type.JavaObjectType@40cb95c1 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Object -> org.hibernate.type.JavaObjectType@40cb95c1 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration null -> org.hibernate.type.NullType@5cc075da -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_date -> org.hibernate.type.BasicTypeReference@4258106 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_time -> org.hibernate.type.BasicTypeReference@7b423f90 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_timestamp -> org.hibernate.type.BasicTypeReference@24f3fb87 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_calendar -> org.hibernate.type.BasicTypeReference@c7673ae -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_calendar_date -> org.hibernate.type.BasicTypeReference@113c4ad6 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_calendar_time -> org.hibernate.type.BasicTypeReference@7be859de -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_binary -> org.hibernate.type.BasicTypeReference@40fcaae7 -2025-10-26 09:53:41 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_serializable -> org.hibernate.type.BasicTypeReference@7fa85a55 -2025-10-26 09:53:41 [main] INFO o.s.o.j.p.SpringPersistenceUnitInfo - No LoadTimeWeaver setup: ignoring JPA class transformer -2025-10-26 09:53:41 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting... -2025-10-26 09:53:42 [main] INFO com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Added connection org.postgresql.jdbc.PgConnection@1f641fb7 -2025-10-26 09:53:42 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed. -2025-10-26 09:53:42 [main] WARN org.hibernate.orm.deprecation - HHH90000025: PostgreSQLDialect does not need to be specified explicitly using 'hibernate.dialect' (remove the property setting and it will be selected by default) -2025-10-26 09:53:42 [main] DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(2003, org.hibernate.type.descriptor.sql.internal.ArrayDdlTypeImpl@38c1b1a7) replaced previous registration(org.hibernate.type.descriptor.sql.internal.ArrayDdlTypeImpl@73230721) -2025-10-26 09:53:42 [main] DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(6, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@10bcbbce) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@27234b7c) -2025-10-26 09:53:42 [main] DEBUG o.h.t.d.jdbc.spi.JdbcTypeRegistry - addDescriptor(2004, BlobTypeDescriptor(BLOB_BINDING)) replaced previous registration(BlobTypeDescriptor(DEFAULT)) -2025-10-26 09:53:42 [main] DEBUG o.h.t.d.jdbc.spi.JdbcTypeRegistry - addDescriptor(2005, ClobTypeDescriptor(CLOB_BINDING)) replaced previous registration(ClobTypeDescriptor(DEFAULT)) -2025-10-26 09:53:42 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration JAVA_OBJECT -> org.hibernate.type.JavaObjectType@180fb796 -2025-10-26 09:53:42 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Object -> org.hibernate.type.JavaObjectType@180fb796 -2025-10-26 09:53:42 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Type registration key [java.lang.Object] overrode previous entry : `org.hibernate.type.JavaObjectType@40cb95c1` -2025-10-26 09:53:42 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.DurationType -> basicType@1(java.time.Duration,3015) -2025-10-26 09:53:42 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration Duration -> basicType@1(java.time.Duration,3015) -2025-10-26 09:53:42 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.Duration -> basicType@1(java.time.Duration,3015) -2025-10-26 09:53:42 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.OffsetDateTimeType -> basicType@2(java.time.OffsetDateTime,3003) -2025-10-26 09:53:42 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetDateTime -> basicType@2(java.time.OffsetDateTime,3003) -2025-10-26 09:53:42 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.OffsetDateTime -> basicType@2(java.time.OffsetDateTime,3003) -2025-10-26 09:53:42 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.ZonedDateTimeType -> basicType@3(java.time.ZonedDateTime,3003) -2025-10-26 09:53:42 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZonedDateTime -> basicType@3(java.time.ZonedDateTime,3003) -2025-10-26 09:53:42 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.ZonedDateTime -> basicType@3(java.time.ZonedDateTime,3003) -2025-10-26 09:53:42 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.OffsetTimeType -> basicType@4(java.time.OffsetTime,3007) -2025-10-26 09:53:42 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTime -> basicType@4(java.time.OffsetTime,3007) -2025-10-26 09:53:42 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.OffsetTime -> basicType@4(java.time.OffsetTime,3007) -2025-10-26 09:53:42 [main] DEBUG o.h.type.spi.TypeConfiguration$Scope - Scoping TypeConfiguration [org.hibernate.type.spi.TypeConfiguration@1ba98508] to MetadataBuildingContext [org.hibernate.boot.internal.MetadataBuildingContextRootImpl@4b552b13] -2025-10-26 09:53:42 [main] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) -2025-10-26 09:53:42 [main] DEBUG o.h.type.spi.TypeConfiguration$Scope - Scoping TypeConfiguration [org.hibernate.type.spi.TypeConfiguration@1ba98508] to SessionFactoryImplementor [org.hibernate.internal.SessionFactoryImpl@17e7cc67] -2025-10-26 09:53:42 [main] DEBUG org.hibernate.SQL - - alter table if exists meetings - alter column description set data type TEXT -2025-10-26 09:53:42 [main] DEBUG org.hibernate.SQL - - alter table if exists meetings - alter column participants set data type TEXT -2025-10-26 09:53:42 [main] DEBUG org.hibernate.SQL - - alter table if exists minutes_sections - alter column content set data type TEXT -2025-10-26 09:53:42 [main] DEBUG org.hibernate.SQL - - alter table if exists templates - alter column description set data type TEXT -2025-10-26 09:53:42 [main] DEBUG org.hibernate.SQL - - alter table if exists templates - alter column sections set data type TEXT -2025-10-26 09:53:42 [main] DEBUG org.hibernate.SQL - - alter table if exists todos - alter column description set data type TEXT -2025-10-26 09:53:42 [main] TRACE o.h.type.spi.TypeConfiguration$Scope - Handling #sessionFactoryCreated from [org.hibernate.internal.SessionFactoryImpl@17e7cc67] for TypeConfiguration -2025-10-26 09:53:42 [main] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' -2025-10-26 09:53:42 [main] INFO o.s.d.j.r.query.QueryEnhancerFactory - Hibernate is in classpath; If applicable, HQL parser will be used. -2025-10-26 09:53:43 [main] INFO c.u.h.m.infra.config.RedisConfig - Redis Lettuce Client 설정 완료 - Standalone 모드 (Master-Replica 자동 탐색 비활성화) -2025-10-26 09:53:43 [main] INFO c.u.h.m.infra.config.RedisConfig - LettuceConnectionFactory 설정 완료 - Host: 20.249.177.114:6379, Database: 1 -2025-10-26 09:53:43 [main] ERROR i.n.r.d.DnsServerAddressStreamProviders - Unable to load io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider, fallback to system defaults. This may result in incorrect DNS resolutions on MacOS. Check whether you have a dependency on 'io.netty:netty-resolver-dns-native-macos'. Use DEBUG level to see the full stack: java.lang.UnsatisfiedLinkError: failed to load the required native library -2025-10-26 09:53:43 [main] INFO c.u.h.m.infra.config.RedisConfig - RedisTemplate 설정 완료 -2025-10-26 09:53:43 [main] INFO c.u.h.m.infra.cache.CacheConfig - ObjectMapper 설정 완료 -2025-10-26 09:53:43 [main] INFO c.u.h.m.infra.config.EventHubConfig - Initializing Azure EventHub configuration with hub name: hgzero-eventhub-name -2025-10-26 09:53:43 [main] INFO c.u.h.m.infra.config.EventHubConfig - Creating EventHub producer for hub: hgzero-eventhub-name -2025-10-26 09:53:43 [main] INFO c.a.m.e.EventHubClientBuilder - {"az.sdk.message":"Emitting a single connection.","connectionId":"MF_d16b84_1761440023504"} -2025-10-26 09:53:43 [main] INFO c.a.m.e.i.EventHubConnectionProcessor - {"az.sdk.message":"Setting next AMQP channel.","entityPath":"hgzero-eventhub-name"} -2025-10-26 09:53:43 [main] WARN o.s.b.a.o.j.JpaBaseConfiguration$JpaWebConfiguration - spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning -2025-10-26 09:53:43 [main] WARN o.s.b.a.s.s.UserDetailsServiceAutoConfiguration - - -Using generated security password: 3788735f-3bb7-4ee1-97a7-c83b3762790b - -This generated password is for development use only. Your security configuration must be updated before running your application in production. - -2025-10-26 09:53:43 [main] INFO o.s.s.c.a.a.c.InitializeUserDetailsBeanManagerConfigurer$InitializeUserDetailsManagerConfigurer - Global AuthenticationManager configured with UserDetailsService bean with name inMemoryUserDetailsManager -2025-10-26 09:53:43 [main] INFO c.u.h.m.infra.config.WebSocketConfig - WebSocket 핸들러 등록 완료 - endpoint: /ws/minutes/{minutesId} -2025-10-26 09:53:43 [main] INFO o.s.b.a.e.web.EndpointLinksResolver - Exposing 3 endpoints beneath base path '/actuator' -2025-10-26 09:53:43 [main] DEBUG o.s.s.web.DefaultSecurityFilterChain - Will secure any request with filters: DisableEncodeUrlFilter, WebAsyncManagerIntegrationFilter, SecurityContextHolderFilter, HeaderWriterFilter, CorsFilter, LogoutFilter, JwtAuthenticationFilter, RequestCacheAwareFilter, SecurityContextHolderAwareRequestFilter, AnonymousAuthenticationFilter, SessionManagementFilter, ExceptionTranslationFilter, AuthorizationFilter -2025-10-26 09:53:44 [main] WARN o.s.b.a.t.ThymeleafAutoConfiguration$DefaultTemplateResolverConfiguration - Cannot find template location: classpath:/templates/ (please add some templates, check your Thymeleaf configuration, or set spring.thymeleaf.check-template-location=false) -2025-10-26 09:53:44 [main] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port 8082 (http) with context path '/' -2025-10-26 09:53:44 [main] INFO c.u.h.meeting.MeetingApplication - Started MeetingApplication in 3.96 seconds (process running for 4.115) -2025-10-26 09:53:56 [http-nio-8082-exec-1] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' -2025-10-26 09:53:56 [http-nio-8082-exec-1] INFO o.s.web.servlet.DispatcherServlet - Initializing Servlet 'dispatcherServlet' -2025-10-26 09:53:56 [http-nio-8082-exec-1] INFO o.s.web.servlet.DispatcherServlet - Completed initialization in 1 ms -2025-10-26 09:53:56 [http-nio-8082-exec-1] DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/meetings -2025-10-26 09:53:56 [http-nio-8082-exec-1] DEBUG c.u.h.m.i.c.j.JwtAuthenticationFilter - 헤더 기반 인증된 사용자: dohyunjung (user-005) -2025-10-26 09:53:56 [http-nio-8082-exec-1] DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/meetings -2025-10-26 09:53:56 [http-nio-8082-exec-1] INFO c.u.hgzero.common.aop.LoggingAspect - [Controller] com.unicorn.hgzero.meeting.infra.controller.MeetingController.createMeeting 호출 - 파라미터: [user-005, dohyunjung, dohyun.jung@example.com, com.unicorn.hgzero.meeting.infra.dto.request.CreateMeetingRequest@2a71050c] -2025-10-26 09:53:56 [http-nio-8082-exec-1] INFO c.u.h.m.i.c.MeetingController - 회의 예약 요청 - userId: user-005, title: test 회의 -2025-10-26 09:53:56 [http-nio-8082-exec-1] INFO c.u.h.m.biz.service.MeetingService - Creating meeting: test 회의 -2025-10-26 09:53:56 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - - /* SELECT - COUNT(m) - FROM - MeetingEntity m - WHERE - m.organizerId = :organizerId - AND m.status IN ('SCHEDULED', 'IN_PROGRESS') - AND ( - ( - m.scheduledAt < :endTime - AND m.endTime > :startTime - ) - ) */ select - count(me1_0.meeting_id) - from - meetings me1_0 - where - me1_0.organizer_id=? - and me1_0.status in ('SCHEDULED', 'IN_PROGRESS') - and ( - ( - me1_0.scheduled_at? - ) - ) -2025-10-26 09:53:56 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - +2025-10-27 09:17:17 [http-nio-8082-exec-4] DEBUG c.u.h.m.biz.service.MeetingService - Meeting cache evicted: 5f9144ed-43db-479a-99bb-17b20a71fb1e +2025-10-27 09:17:17 [http-nio-8082-exec-4] DEBUG org.hibernate.SQL - select - me1_0.meeting_id, + me1_0.minutes_id, me1_0.created_at, - me1_0.description, - me1_0.end_time, - me1_0.ended_at, - me1_0.location, - me1_0.organizer_id, - me1_0.participants, - me1_0.purpose, - me1_0.scheduled_at, - me1_0.started_at, + me1_0.created_by, + me1_0.finalized_at, + me1_0.finalized_by, + me1_0.meeting_id, me1_0.status, - me1_0.template_id, me1_0.title, - me1_0.updated_at + me1_0.updated_at, + me1_0.version from - meetings me1_0 + minutes me1_0 where - me1_0.meeting_id=? -2025-10-26 09:53:56 [http-nio-8082-exec-1] DEBUG c.u.h.m.infra.cache.CacheService - 회의 정보 캐시 저장 - meetingId: 9e471863-3f0c-46d8-bbd6-820cc362bdc2 -2025-10-26 09:53:56 [http-nio-8082-exec-1] DEBUG c.u.h.m.biz.service.MeetingService - Meeting cached: meetingId=9e471863-3f0c-46d8-bbd6-820cc362bdc2 -2025-10-26 09:53:56 [http-nio-8082-exec-1] INFO c.a.c.a.i.ReactorConnection - {"az.sdk.message":"Creating and starting connection.","connectionId":"MF_d16b84_1761440023504","hostName":"hgzero-eventhub-ns.servicebus.windows.net","port":5671} -2025-10-26 09:53:56 [http-nio-8082-exec-1] INFO c.a.c.a.i.ReactorExecutor - {"az.sdk.message":"Starting reactor.","connectionId":"MF_d16b84_1761440023504"} -2025-10-26 09:53:56 [reactor-executor-1] INFO c.a.c.a.i.handler.ConnectionHandler - {"az.sdk.message":"onConnectionInit","connectionId":"MF_d16b84_1761440023504","hostName":"hgzero-eventhub-ns.servicebus.windows.net","namespace":"hgzero-eventhub-ns.servicebus.windows.net"} -2025-10-26 09:53:56 [reactor-executor-1] INFO c.a.c.a.i.handler.ReactorHandler - {"az.sdk.message":"reactor.onReactorInit","connectionId":"MF_d16b84_1761440023504"} -2025-10-26 09:53:56 [reactor-executor-1] INFO c.a.c.a.i.handler.ConnectionHandler - {"az.sdk.message":"onConnectionLocalOpen","connectionId":"MF_d16b84_1761440023504","errorCondition":null,"errorDescription":null,"hostName":"hgzero-eventhub-ns.servicebus.windows.net"} -2025-10-26 09:53:56 [reactor-executor-1] INFO c.a.c.a.i.handler.ConnectionHandler - {"az.sdk.message":"onConnectionBound","connectionId":"MF_d16b84_1761440023504","hostName":"hgzero-eventhub-ns.servicebus.windows.net","peerDetails":"hgzero-eventhub-ns.servicebus.windows.net:5671"} -2025-10-26 09:53:56 [reactor-executor-1] INFO c.a.c.a.i.handler.ConnectionHandler - {"az.sdk.message":"onConnectionRemoteOpen","connectionId":"MF_d16b84_1761440023504","hostName":"hgzero-eventhub-ns.servicebus.windows.net","remoteContainer":"075ba35328594c068746f9d96f6f4a63_G20"} -2025-10-26 09:53:56 [reactor-executor-1] INFO c.a.m.e.i.EventHubConnectionProcessor - {"az.sdk.message":"Channel is now active.","entityPath":"hgzero-eventhub-name"} -2025-10-26 09:53:56 [reactor-executor-1] INFO c.a.c.a.i.handler.SessionHandler - {"az.sdk.message":"onSessionRemoteOpen","connectionId":"MF_d16b84_1761440023504","sessionName":"hgzero-eventhub-name","sessionIncCapacity":0,"sessionOutgoingWindow":2147483647} -2025-10-26 09:53:56 [reactor-executor-1] INFO c.a.c.a.i.ReactorConnection - {"az.sdk.message":"Setting CBS channel.","connectionId":"MF_d16b84_1761440023504"} -2025-10-26 09:53:56 [reactor-executor-1] INFO c.a.c.a.i.handler.SessionHandler - {"az.sdk.message":"onSessionRemoteOpen","connectionId":"MF_d16b84_1761440023504","sessionName":"cbs-session","sessionIncCapacity":0,"sessionOutgoingWindow":2147483647} -2025-10-26 09:53:56 [reactor-executor-1] INFO c.a.c.a.i.ReactorConnection - {"az.sdk.message":"Emitting new response channel.","connectionId":"MF_d16b84_1761440023504","entityPath":"$cbs","linkName":"cbs"} -2025-10-26 09:53:56 [reactor-executor-1] INFO c.a.c.a.i.AmqpChannelProcessor - {"az.sdk.message":"Setting next AMQP channel.","connectionId":"MF_d16b84_1761440023504","entityPath":"$cbs"} -2025-10-26 09:53:56 [reactor-executor-1] INFO c.a.c.a.i.AmqpChannelProcessor - {"az.sdk.message":"Next AMQP channel received.","connectionId":"MF_d16b84_1761440023504","entityPath":"$cbs","subscriberId":"un_1f23d3_1761440036658"} -2025-10-26 09:53:56 [reactor-executor-1] INFO c.a.c.a.i.handler.SendLinkHandler - {"az.sdk.message":"onLinkRemoteOpen","connectionId":"MF_d16b84_1761440023504","linkName":"cbs:sender","entityPath":"$cbs","remoteTarget":"Target{address='$cbs', durable=NONE, expiryPolicy=SESSION_END, timeout=0, dynamic=false, dynamicNodeProperties=null, capabilities=null}"} -2025-10-26 09:53:56 [reactor-executor-1] INFO c.a.c.a.i.AmqpChannelProcessor - {"az.sdk.message":"Channel is now active.","connectionId":"MF_d16b84_1761440023504","entityPath":"$cbs"} -2025-10-26 09:53:56 [reactor-executor-1] INFO c.a.c.a.i.handler.ReceiveLinkHandler - {"az.sdk.message":"onLinkRemoteOpen","connectionId":"MF_d16b84_1761440023504","entityPath":"$cbs","linkName":"cbs:receiver","remoteSource":"Source{address='$cbs', durable=NONE, expiryPolicy=SESSION_END, timeout=0, dynamic=false, dynamicNodeProperties=null, distributionMode=null, filter=null, defaultOutcome=null, outcomes=null, capabilities=null}"} -2025-10-26 09:53:56 [reactor-executor-1] INFO c.a.c.a.i.ActiveClientTokenManager - {"az.sdk.message":"Scheduling refresh token task.","scopes":"amqp://hgzero-eventhub-ns.servicebus.windows.net/hgzero-eventhub-name"} -2025-10-26 09:53:56 [reactor-executor-1] INFO c.a.c.a.i.ReactorSession - {"az.sdk.message":"Creating a new send link.","connectionId":"MF_d16b84_1761440023504","linkName":"hgzero-eventhub-name","sessionName":"hgzero-eventhub-name"} -2025-10-26 09:53:56 [reactor-executor-1] INFO c.a.c.a.i.handler.SendLinkHandler - {"az.sdk.message":"onLinkRemoteOpen","connectionId":"MF_d16b84_1761440023504","linkName":"hgzero-eventhub-name","entityPath":"hgzero-eventhub-name","remoteTarget":"Target{address='hgzero-eventhub-name', durable=NONE, expiryPolicy=SESSION_END, timeout=0, dynamic=false, dynamicNodeProperties=null, capabilities=null}"} -2025-10-26 09:53:56 [http-nio-8082-exec-1] INFO c.u.h.m.i.e.p.EventHubPublisher - 이벤트 발행 완료: topic=notification, type=NOTIFICATION_REQUEST, partitionKey=daewoong.jeon@kt.com -2025-10-26 09:53:56 [http-nio-8082-exec-1] INFO c.u.h.m.i.e.p.EventHubPublisher - 이벤트 발행 완료: topic=notification, type=NOTIFICATION_REQUEST, partitionKey=du0928@gmail.com -2025-10-26 09:53:56 [http-nio-8082-exec-1] INFO c.u.h.m.i.e.p.EventHubPublisher - 회의 생성 알림 발행 완료 - meetingId: 9e471863-3f0c-46d8-bbd6-820cc362bdc2, participants count: 2 -2025-10-26 09:53:56 [http-nio-8082-exec-1] DEBUG c.u.h.m.biz.service.MeetingService - Meeting invitation events published: meetingId=9e471863-3f0c-46d8-bbd6-820cc362bdc2, participants=2 -2025-10-26 09:53:56 [http-nio-8082-exec-1] INFO c.u.h.m.biz.service.MeetingService - Meeting created successfully: 9e471863-3f0c-46d8-bbd6-820cc362bdc2 -2025-10-26 09:53:56 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - + me1_0.minutes_id=? +2025-10-27 09:17:17 [http-nio-8082-exec-4] DEBUG org.hibernate.SQL - + select + me1_0.minutes_id, + me1_0.created_at, + me1_0.created_by, + me1_0.finalized_at, + me1_0.finalized_by, + me1_0.meeting_id, + me1_0.status, + me1_0.title, + me1_0.updated_at, + me1_0.version, + s1_0.minutes_id, + s1_0.section_id, + s1_0.content, + s1_0.created_at, + s1_0.locked, + s1_0.locked_by, + s1_0."order", + s1_0.title, + s1_0.type, + s1_0.updated_at, + s1_0.verified + from + minutes me1_0 + left join + minutes_sections s1_0 + on me1_0.minutes_id=s1_0.minutes_id + where + me1_0.minutes_id=? +2025-10-27 09:17:17 [http-nio-8082-exec-4] DEBUG c.u.h.m.biz.service.MeetingService - Minutes draft created: minutesId=a5c8b779-e23f-499d-be5b-01274cc69d59, meetingId=5f9144ed-43db-479a-99bb-17b20a71fb1e +2025-10-27 09:17:17 [http-nio-8082-exec-4] INFO c.u.h.m.i.e.p.EventHubPublisher - 이벤트 발행 완료: topic=meeting, type=MEETING_STARTED, partitionKey=5f9144ed-43db-479a-99bb-17b20a71fb1e +2025-10-27 09:17:17 [http-nio-8082-exec-4] DEBUG c.u.h.m.biz.service.MeetingService - MeetingStarted event published: meetingId=5f9144ed-43db-479a-99bb-17b20a71fb1e, sessionId=3bee2b78-9a53-4a10-b652-78bc4cafad88 +2025-10-27 09:17:17 [http-nio-8082-exec-4] INFO c.u.h.m.biz.service.MeetingService - Meeting started successfully: meetingId=5f9144ed-43db-479a-99bb-17b20a71fb1e, sessionId=3bee2b78-9a53-4a10-b652-78bc4cafad88, minutesId=a5c8b779-e23f-499d-be5b-01274cc69d59 +2025-10-27 09:17:17 [http-nio-8082-exec-4] DEBUG org.hibernate.SQL - /* insert for - com.unicorn.hgzero.meeting.infra.gateway.entity.MeetingEntity */insert + com.unicorn.hgzero.meeting.infra.gateway.entity.SessionEntity */insert into - meetings (created_at, description, end_time, ended_at, location, organizer_id, participants, purpose, scheduled_at, started_at, status, template_id, title, updated_at, meeting_id) + sessions (created_at, ended_at, meeting_id, minutes_id, started_at, started_by, status, updated_at, session_id) values - (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) -2025-10-26 09:53:56 [http-nio-8082-exec-1] INFO c.u.h.m.i.c.MeetingController - 회의 예약 완료 - userId: user-005, meetingId: 9e471863-3f0c-46d8-bbd6-820cc362bdc2 -2025-10-26 09:53:56 [http-nio-8082-exec-1] INFO c.u.hgzero.common.aop.LoggingAspect - [Controller] com.unicorn.hgzero.meeting.infra.controller.MeetingController.createMeeting 완료 - 실행시간: 593ms + (?, ?, ?, ?, ?, ?, ?, ?, ?) +2025-10-27 09:17:17 [http-nio-8082-exec-4] DEBUG org.hibernate.SQL - + /* insert for + com.unicorn.hgzero.meeting.infra.gateway.entity.MinutesEntity */insert + into + minutes (created_at, created_by, finalized_at, finalized_by, meeting_id, status, title, updated_at, version, minutes_id) + values + (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +2025-10-27 09:17:18 [http-nio-8082-exec-4] DEBUG org.hibernate.SQL - + /* update + for com.unicorn.hgzero.meeting.infra.gateway.entity.MeetingEntity */update meetings + set + description=?, + end_time=?, + ended_at=?, + location=?, + organizer_id=?, + purpose=?, + scheduled_at=?, + started_at=?, + status=?, + template_id=?, + title=?, + updated_at=? + where + meeting_id=? +2025-10-27 09:17:18 [http-nio-8082-exec-4] DEBUG org.hibernate.SQL - + /* update + for com.unicorn.hgzero.meeting.infra.gateway.entity.SessionEntity */update sessions + set + ended_at=?, + meeting_id=?, + minutes_id=?, + started_at=?, + started_by=?, + status=?, + updated_at=? + where + session_id=? +2025-10-27 09:17:18 [http-nio-8082-exec-4] DEBUG org.hibernate.SQL - + /* delete for com.unicorn.hgzero.meeting.infra.gateway.entity.MeetingParticipantEntity */delete + from + meeting_participants + where + meeting_id=? + and user_id=? +2025-10-27 09:17:18 [http-nio-8082-exec-4] DEBUG org.hibernate.SQL - + /* delete for com.unicorn.hgzero.meeting.infra.gateway.entity.MeetingParticipantEntity */delete + from + meeting_participants + where + meeting_id=? + and user_id=? +2025-10-27 09:17:18 [http-nio-8082-exec-4] INFO c.u.h.m.i.c.MeetingController - 회의 시작 완료 - meetingId: 5f9144ed-43db-479a-99bb-17b20a71fb1e, sessionId: 3bee2b78-9a53-4a10-b652-78bc4cafad88 +2025-10-27 09:17:18 [http-nio-8082-exec-4] INFO c.u.hgzero.common.aop.LoggingAspect - [Controller] com.unicorn.hgzero.meeting.infra.controller.MeetingController.startMeeting 완료 - 실행시간: 1151ms +2025-10-27 09:21:54 [lettuce-nioEventLoop-6-1] INFO i.l.core.protocol.CommandHandler - null Unexpected exception during request: java.net.SocketException: Connection reset +java.net.SocketException: Connection reset + at java.base/sun.nio.ch.SocketChannelImpl.throwConnectionReset(SocketChannelImpl.java:401) + at java.base/sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:434) + at io.netty.buffer.PooledByteBuf.setBytes(PooledByteBuf.java:255) + at io.netty.buffer.AbstractByteBuf.writeBytes(AbstractByteBuf.java:1132) + at io.netty.channel.socket.nio.NioSocketChannel.doReadBytes(NioSocketChannel.java:356) + at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:151) + at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:788) + at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724) + at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650) + at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:562) + at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) + at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) + at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) + at java.base/java.lang.Thread.run(Thread.java:1583) +2025-10-27 09:21:54 [lettuce-eventExecutorLoop-1-2] INFO i.l.core.protocol.ConnectionWatchdog - Reconnecting, last destination was /20.249.177.114:6379 +2025-10-27 09:21:54 [lettuce-nioEventLoop-6-2] INFO i.l.c.protocol.ReconnectionHandler - Reconnected to 20.249.177.114/:6379 +2025-10-27 09:32:07 [parallel-2] INFO c.a.c.a.i.ActiveClientTokenManager - {"az.sdk.message":"Refreshing token.","scopes":"amqp://hgzero-eventhub-ns.servicebus.windows.net/hgzero-eventhub-name"} +2025-10-27 09:47:18 [reactor-executor-1] INFO c.a.c.a.i.handler.SendLinkHandler - {"az.sdk.message":"onLinkRemoteClose","connectionId":"MF_c2537e_1761523655847","errorCondition":"amqp:link:detach-forced","errorDescription":"Idle link tracker, link hgzero-eventhub-name has been idle for 1800000ms TrackingId:fb21957a-303a-488b-810b-d55917d07872_G28, SystemTracker:hgzero-eventhub-ns:EventHub:hgzero-eventhub-name, Timestamp:2025-10-27T00:47:17","linkName":"hgzero-eventhub-name","entityPath":"hgzero-eventhub-name"} +2025-10-27 09:47:18 [reactor-executor-1] INFO c.a.c.a.i.handler.SendLinkHandler - {"az.sdk.message":"Local link state is not closed.","connectionId":"MF_c2537e_1761523655847","linkName":"hgzero-eventhub-name","entityPath":"hgzero-eventhub-name","state":"ACTIVE"} +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.c.a.i.handler.SessionHandler - {"az.sdk.message":"onSessionRemoteClose","connectionId":"MF_c2537e_1761523655847","errorCondition":"amqp:connection:forced","errorDescription":"The connection was closed by container 'daf94f96845d4a4c8f204bc24deb4033_G28' because it did not have any active links in the past 300000 milliseconds. TrackingId:daf94f96845d4a4c8f204bc24deb4033_G28, SystemTracker:gateway5, Timestamp:2025-10-27T00:52:18","sessionName":"hgzero-eventhub-name"} +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.c.a.i.handler.SessionHandler - {"az.sdk.message":"onSessionRemoteClose closing a local session.","connectionId":"MF_c2537e_1761523655847","errorCondition":"amqp:connection:forced","errorDescription":"The connection was closed by container 'daf94f96845d4a4c8f204bc24deb4033_G28' because it did not have any active links in the past 300000 milliseconds. TrackingId:daf94f96845d4a4c8f204bc24deb4033_G28, SystemTracker:gateway5, Timestamp:2025-10-27T00:52:18","sessionName":"hgzero-eventhub-name"} +2025-10-27 09:52:18 [reactor-executor-1] ERROR reactor.core.publisher.Operators - Operator called default onErrorDropped +reactor.core.Exceptions$ErrorCallbackNotImplemented: com.azure.core.amqp.exception.AmqpException: onSessionRemoteClose connectionId[MF_c2537e_1761523655847], entityName[hgzero-eventhub-name] condition[Error{condition=amqp:connection:forced, description='The connection was closed by container 'daf94f96845d4a4c8f204bc24deb4033_G28' because it did not have any active links in the past 300000 milliseconds. TrackingId:daf94f96845d4a4c8f204bc24deb4033_G28, SystemTracker:gateway5, Timestamp:2025-10-27T00:52:18', info=null}], errorContext[NAMESPACE: hgzero-eventhub-ns.servicebus.windows.net. ERROR CONTEXT: N/A, PATH: hgzero-eventhub-name] +Caused by: com.azure.core.amqp.exception.AmqpException: onSessionRemoteClose connectionId[MF_c2537e_1761523655847], entityName[hgzero-eventhub-name] condition[Error{condition=amqp:connection:forced, description='The connection was closed by container 'daf94f96845d4a4c8f204bc24deb4033_G28' because it did not have any active links in the past 300000 milliseconds. TrackingId:daf94f96845d4a4c8f204bc24deb4033_G28, SystemTracker:gateway5, Timestamp:2025-10-27T00:52:18', info=null}], errorContext[NAMESPACE: hgzero-eventhub-ns.servicebus.windows.net. ERROR CONTEXT: N/A, PATH: hgzero-eventhub-name] + at com.azure.core.amqp.implementation.ExceptionUtil.toException(ExceptionUtil.java:85) + at com.azure.core.amqp.implementation.handler.SessionHandler.onSessionRemoteClose(SessionHandler.java:136) + at org.apache.qpid.proton.engine.BaseHandler.handle(BaseHandler.java:152) + at org.apache.qpid.proton.engine.impl.EventImpl.dispatch(EventImpl.java:108) + at org.apache.qpid.proton.reactor.impl.ReactorImpl.dispatch(ReactorImpl.java:324) + at org.apache.qpid.proton.reactor.impl.ReactorImpl.process(ReactorImpl.java:291) + at com.azure.core.amqp.implementation.ReactorExecutor.run(ReactorExecutor.java:91) + at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:68) + at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:28) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) + at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) + at java.base/java.lang.Thread.run(Thread.java:1583) +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.c.a.i.ReactorConnection - {"az.sdk.message":"Error occurred. Removing and disposing session","exception":"onSessionRemoteClose connectionId[MF_c2537e_1761523655847], entityName[hgzero-eventhub-name] condition[Error{condition=amqp:connection:forced, description='The connection was closed by container 'daf94f96845d4a4c8f204bc24deb4033_G28' because it did not have any active links in the past 300000 milliseconds. TrackingId:daf94f96845d4a4c8f204bc24deb4033_G28, SystemTracker:gateway5, Timestamp:2025-10-27T00:52:18', info=null}], errorContext[NAMESPACE: hgzero-eventhub-ns.servicebus.windows.net. ERROR CONTEXT: N/A, PATH: hgzero-eventhub-name]","connectionId":"MF_c2537e_1761523655847","sessionName":"hgzero-eventhub-name"} +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.c.a.i.handler.SendLinkHandler - {"az.sdk.message":"onLinkRemoteClose","connectionId":"MF_c2537e_1761523655847","errorCondition":"amqp:connection:forced","errorDescription":"The connection was closed by container 'daf94f96845d4a4c8f204bc24deb4033_G28' because it did not have any active links in the past 300000 milliseconds. TrackingId:daf94f96845d4a4c8f204bc24deb4033_G28, SystemTracker:gateway5, Timestamp:2025-10-27T00:52:18","linkName":"cbs:sender","entityPath":"$cbs"} +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.c.a.i.handler.SendLinkHandler - {"az.sdk.message":"Local link state is not closed.","connectionId":"MF_c2537e_1761523655847","linkName":"cbs:sender","entityPath":"$cbs","state":"ACTIVE"} +2025-10-27 09:52:18 [reactor-executor-1] WARN c.a.c.a.i.RequestResponseChannel - {"az.sdk.message":"Error in SendLinkHandler. Disposing unconfirmed sends.","exception":"The connection was closed by container 'daf94f96845d4a4c8f204bc24deb4033_G28' because it did not have any active links in the past 300000 milliseconds. TrackingId:daf94f96845d4a4c8f204bc24deb4033_G28, SystemTracker:gateway5, Timestamp:2025-10-27T00:52:18, errorContext[NAMESPACE: hgzero-eventhub-ns.servicebus.windows.net. ERROR CONTEXT: N/A, PATH: $cbs, REFERENCE_ID: cbs:sender, LINK_CREDIT: 98]","connectionId":"MF_c2537e_1761523655847","linkName":"cbs"} +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.c.a.i.AmqpChannelProcessor - {"az.sdk.message":"Transient error occurred. Retrying.","exception":"The connection was closed by container 'daf94f96845d4a4c8f204bc24deb4033_G28' because it did not have any active links in the past 300000 milliseconds. TrackingId:daf94f96845d4a4c8f204bc24deb4033_G28, SystemTracker:gateway5, Timestamp:2025-10-27T00:52:18, errorContext[NAMESPACE: hgzero-eventhub-ns.servicebus.windows.net. ERROR CONTEXT: N/A, PATH: $cbs, REFERENCE_ID: cbs:sender, LINK_CREDIT: 98]","connectionId":"MF_c2537e_1761523655847","entityPath":"$cbs","tryCount":0,"interval_ms":4511} +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.c.a.i.handler.ReceiveLinkHandler - {"az.sdk.message":"onLinkRemoteClose","connectionId":"MF_c2537e_1761523655847","errorCondition":"amqp:connection:forced","errorDescription":"The connection was closed by container 'daf94f96845d4a4c8f204bc24deb4033_G28' because it did not have any active links in the past 300000 milliseconds. TrackingId:daf94f96845d4a4c8f204bc24deb4033_G28, SystemTracker:gateway5, Timestamp:2025-10-27T00:52:18","linkName":"cbs:receiver","entityPath":"$cbs"} +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.c.a.i.handler.ReceiveLinkHandler - {"az.sdk.message":"Local link state is not closed.","connectionId":"MF_c2537e_1761523655847","linkName":"cbs:receiver","entityPath":"$cbs","state":"ACTIVE"} +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.c.a.i.handler.SessionHandler - {"az.sdk.message":"onSessionRemoteClose","connectionId":"MF_c2537e_1761523655847","errorCondition":"amqp:connection:forced","errorDescription":"The connection was closed by container 'daf94f96845d4a4c8f204bc24deb4033_G28' because it did not have any active links in the past 300000 milliseconds. TrackingId:daf94f96845d4a4c8f204bc24deb4033_G28, SystemTracker:gateway5, Timestamp:2025-10-27T00:52:18","sessionName":"cbs-session"} +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.c.a.i.handler.SessionHandler - {"az.sdk.message":"onSessionRemoteClose closing a local session.","connectionId":"MF_c2537e_1761523655847","errorCondition":"amqp:connection:forced","errorDescription":"The connection was closed by container 'daf94f96845d4a4c8f204bc24deb4033_G28' because it did not have any active links in the past 300000 milliseconds. TrackingId:daf94f96845d4a4c8f204bc24deb4033_G28, SystemTracker:gateway5, Timestamp:2025-10-27T00:52:18","sessionName":"cbs-session"} +2025-10-27 09:52:18 [reactor-executor-1] ERROR reactor.core.publisher.Operators - Operator called default onErrorDropped +reactor.core.Exceptions$ErrorCallbackNotImplemented: com.azure.core.amqp.exception.AmqpException: onSessionRemoteClose connectionId[MF_c2537e_1761523655847], entityName[cbs-session] condition[Error{condition=amqp:connection:forced, description='The connection was closed by container 'daf94f96845d4a4c8f204bc24deb4033_G28' because it did not have any active links in the past 300000 milliseconds. TrackingId:daf94f96845d4a4c8f204bc24deb4033_G28, SystemTracker:gateway5, Timestamp:2025-10-27T00:52:18', info=null}], errorContext[NAMESPACE: hgzero-eventhub-ns.servicebus.windows.net. ERROR CONTEXT: N/A, PATH: cbs-session] +Caused by: com.azure.core.amqp.exception.AmqpException: onSessionRemoteClose connectionId[MF_c2537e_1761523655847], entityName[cbs-session] condition[Error{condition=amqp:connection:forced, description='The connection was closed by container 'daf94f96845d4a4c8f204bc24deb4033_G28' because it did not have any active links in the past 300000 milliseconds. TrackingId:daf94f96845d4a4c8f204bc24deb4033_G28, SystemTracker:gateway5, Timestamp:2025-10-27T00:52:18', info=null}], errorContext[NAMESPACE: hgzero-eventhub-ns.servicebus.windows.net. ERROR CONTEXT: N/A, PATH: cbs-session] + at com.azure.core.amqp.implementation.ExceptionUtil.toException(ExceptionUtil.java:85) + at com.azure.core.amqp.implementation.handler.SessionHandler.onSessionRemoteClose(SessionHandler.java:136) + at org.apache.qpid.proton.engine.BaseHandler.handle(BaseHandler.java:152) + at org.apache.qpid.proton.engine.impl.EventImpl.dispatch(EventImpl.java:108) + at org.apache.qpid.proton.reactor.impl.ReactorImpl.dispatch(ReactorImpl.java:324) + at org.apache.qpid.proton.reactor.impl.ReactorImpl.process(ReactorImpl.java:291) + at com.azure.core.amqp.implementation.ReactorExecutor.run(ReactorExecutor.java:91) + at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:68) + at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:28) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) + at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) + at java.base/java.lang.Thread.run(Thread.java:1583) +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.c.a.i.ReactorConnection - {"az.sdk.message":"Error occurred. Removing and disposing session","exception":"onSessionRemoteClose connectionId[MF_c2537e_1761523655847], entityName[cbs-session] condition[Error{condition=amqp:connection:forced, description='The connection was closed by container 'daf94f96845d4a4c8f204bc24deb4033_G28' because it did not have any active links in the past 300000 milliseconds. TrackingId:daf94f96845d4a4c8f204bc24deb4033_G28, SystemTracker:gateway5, Timestamp:2025-10-27T00:52:18', info=null}], errorContext[NAMESPACE: hgzero-eventhub-ns.servicebus.windows.net. ERROR CONTEXT: N/A, PATH: cbs-session]","connectionId":"MF_c2537e_1761523655847","sessionName":"cbs-session"} +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.c.a.i.handler.ConnectionHandler - {"az.sdk.message":"onConnectionRemoteClose","connectionId":"MF_c2537e_1761523655847","errorCondition":"amqp:connection:forced","errorDescription":"The connection was closed by container 'daf94f96845d4a4c8f204bc24deb4033_G28' because it did not have any active links in the past 300000 milliseconds. TrackingId:daf94f96845d4a4c8f204bc24deb4033_G28, SystemTracker:gateway5, Timestamp:2025-10-27T00:52:18","hostName":"hgzero-eventhub-ns.servicebus.windows.net"} +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.c.a.i.handler.ConnectionHandler - {"az.sdk.message":"onConnectionLocalClose","connectionId":"MF_c2537e_1761523655847","errorCondition":null,"errorDescription":null,"hostName":"hgzero-eventhub-ns.servicebus.windows.net"} +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.c.a.i.handler.ConnectionHandler - {"az.sdk.message":"onConnectionUnbound","connectionId":"MF_c2537e_1761523655847","hostName":"hgzero-eventhub-ns.servicebus.windows.net","state":"CLOSED","remoteState":"CLOSED"} +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.c.a.i.ReactorConnection - {"az.sdk.message":"Disposing of ReactorConnection.","connectionId":"MF_c2537e_1761523655847","isTransient":false,"isInitiatedByClient":false,"shutdownMessage":"Connection handler closed."} +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.m.e.i.EventHubConnectionProcessor - {"az.sdk.message":"Channel is closed. Requesting upstream.","entityPath":"hgzero-eventhub-name"} +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.m.e.i.EventHubConnectionProcessor - {"az.sdk.message":"Connection not requested, yet. Requesting one.","entityPath":"hgzero-eventhub-name"} +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.m.e.EventHubClientBuilder - {"az.sdk.message":"Emitting a single connection.","connectionId":"MF_86ed40_1761526338133"} +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.m.e.i.EventHubConnectionProcessor - {"az.sdk.message":"Setting next AMQP channel.","entityPath":"hgzero-eventhub-name"} +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.c.a.i.handler.SendLinkHandler - {"az.sdk.message":"onLinkFinal","connectionId":"MF_c2537e_1761523655847","linkName":"hgzero-eventhub-name","entityPath":"hgzero-eventhub-name"} +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.c.a.i.handler.SessionHandler - {"az.sdk.message":"onSessionFinal.","connectionId":"MF_c2537e_1761523655847","errorCondition":"amqp:connection:forced","errorDescription":"The connection was closed by container 'daf94f96845d4a4c8f204bc24deb4033_G28' because it did not have any active links in the past 300000 milliseconds. TrackingId:daf94f96845d4a4c8f204bc24deb4033_G28, SystemTracker:gateway5, Timestamp:2025-10-27T00:52:18","sessionName":"hgzero-eventhub-name"} +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.c.a.i.handler.SendLinkHandler - {"az.sdk.message":"onLinkFinal","connectionId":"MF_c2537e_1761523655847","linkName":"cbs:sender","entityPath":"$cbs"} +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.c.a.i.handler.ReceiveLinkHandler - {"az.sdk.message":"onLinkFinal","connectionId":"MF_c2537e_1761523655847","linkName":"cbs:receiver","entityPath":"$cbs"} +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.c.a.i.handler.SessionHandler - {"az.sdk.message":"onSessionFinal.","connectionId":"MF_c2537e_1761523655847","errorCondition":"amqp:connection:forced","errorDescription":"The connection was closed by container 'daf94f96845d4a4c8f204bc24deb4033_G28' because it did not have any active links in the past 300000 milliseconds. TrackingId:daf94f96845d4a4c8f204bc24deb4033_G28, SystemTracker:gateway5, Timestamp:2025-10-27T00:52:18","sessionName":"cbs-session"} +2025-10-27 09:52:18 [reactor-executor-1] INFO c.a.c.a.i.handler.ConnectionHandler - {"az.sdk.message":"onConnectionFinal","connectionId":"MF_c2537e_1761523655847","errorCondition":null,"errorDescription":null,"hostName":"hgzero-eventhub-ns.servicebus.windows.net"} +2025-10-27 09:52:22 [parallel-7] INFO c.a.c.a.i.AmqpChannelProcessor - {"az.sdk.message":"Requesting from upstream.","connectionId":"MF_c2537e_1761523655847","entityPath":"$cbs","tryCount":0} +2025-10-27 09:52:22 [parallel-7] INFO c.a.c.a.i.AmqpChannelProcessor - {"az.sdk.message":"Connection not requested, yet. Requesting one.","connectionId":"MF_c2537e_1761523655847","entityPath":"$cbs"} +2025-10-27 09:52:22 [parallel-7] WARN c.a.c.a.i.AmqpChannelProcessor - {"az.sdk.message":"Retry attempts exhausted or exception was not retriable.","exception":"Cannot invoke \"java.util.List.add(Object)\" because \"this._sessions\" is null","connectionId":"MF_c2537e_1761523655847","entityPath":"$cbs","tryCount":1} +2025-10-27 09:52:22 [parallel-7] ERROR reactor.core.publisher.Operators - Operator called default onErrorDropped +reactor.core.Exceptions$ErrorCallbackNotImplemented: java.lang.NullPointerException: Cannot invoke "java.util.List.add(Object)" because "this._sessions" is null +Caused by: java.lang.NullPointerException: Cannot invoke "java.util.List.add(Object)" because "this._sessions" is null + at org.apache.qpid.proton.engine.impl.ConnectionImpl.session(ConnectionImpl.java:91) + at org.apache.qpid.proton.engine.impl.ConnectionImpl.session(ConnectionImpl.java:39) + at com.azure.core.amqp.implementation.ReactorConnection.lambda$createSession$13(ReactorConnection.java:282) + at java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1708) + at com.azure.core.amqp.implementation.ReactorConnection.lambda$createSession$14(ReactorConnection.java:279) + at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onNext(FluxMapFuseable.java:113) + at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.onNext(MonoPeekTerminal.java:180) + at reactor.core.publisher.FluxHide$SuppressFuseableSubscriber.onNext(FluxHide.java:137) + at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.request(MonoIgnoreThen.java:164) + at reactor.core.publisher.FluxHide$SuppressFuseableSubscriber.request(FluxHide.java:152) + at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.request(MonoPeekTerminal.java:139) + at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.request(FluxMapFuseable.java:171) + at reactor.core.publisher.MonoFlatMap$FlatMapMain.request(MonoFlatMap.java:194) + at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.request(FluxMapFuseable.java:171) + at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.request(FluxMapFuseable.java:171) + at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.request(FluxPeekFuseable.java:144) + at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.request(Operators.java:2331) + at com.azure.core.amqp.implementation.AmqpChannelProcessor.requestUpstream(AmqpChannelProcessor.java:317) + at com.azure.core.amqp.implementation.AmqpChannelProcessor.lambda$onError$4(AmqpChannelProcessor.java:213) + at reactor.core.publisher.LambdaMonoSubscriber.onNext(LambdaMonoSubscriber.java:171) + at reactor.core.publisher.MonoDelay$MonoDelayRunnable.propagateDelay(MonoDelay.java:270) + at reactor.core.publisher.MonoDelay$MonoDelayRunnable.run(MonoDelay.java:285) + at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:68) + at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:28) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) + at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) + at java.base/java.lang.Thread.run(Thread.java:1583) +2025-10-27 09:52:22 [parallel-7] INFO c.a.c.a.i.AmqpChannelProcessor - {"az.sdk.message":"Error in AMQP channel processor.","connectionId":"MF_c2537e_1761523655847","entityPath":"$cbs","subscriberId":"un_e23365_1761526338131"} diff --git a/meeting/logs/meeting-service.log.2025-10-26.0.gz b/meeting/logs/meeting-service.log.2025-10-26.0.gz new file mode 100644 index 0000000..82d2305 Binary files /dev/null and b/meeting/logs/meeting-service.log.2025-10-26.0.gz differ diff --git a/meeting/src/main/java/com/unicorn/hgzero/meeting/biz/service/MeetingService.java b/meeting/src/main/java/com/unicorn/hgzero/meeting/biz/service/MeetingService.java index 9d295a8..0513df2 100644 --- a/meeting/src/main/java/com/unicorn/hgzero/meeting/biz/service/MeetingService.java +++ b/meeting/src/main/java/com/unicorn/hgzero/meeting/biz/service/MeetingService.java @@ -45,6 +45,8 @@ public class MeetingService implements private final MinutesWriter minutesWriter; private final CacheService cacheService; private final EventPublisher eventPublisher; + private final com.unicorn.hgzero.meeting.biz.usecase.out.ParticipantWriter participantWriter; + private final com.unicorn.hgzero.meeting.biz.usecase.out.ParticipantReader participantReader; /** * 회의 생성 @@ -96,6 +98,12 @@ public class MeetingService implements // 5. 회의 저장 Meeting savedMeeting = meetingWriter.save(meeting); + // 5-1. 참석자 목록 저장 + if (command.participants() != null && !command.participants().isEmpty()) { + participantWriter.saveParticipants(meetingId, command.participants()); + log.debug("Participants saved: meetingId={}, count={}", meetingId, command.participants().size()); + } + // 6. 캐시 저장 (TTL: 10분) try { cacheService.cacheMeeting(meetingId, savedMeeting, 600); @@ -382,22 +390,19 @@ public class MeetingService implements } // 이미 참석자로 등록되었는지 확인 - if (meeting.getParticipants() != null && meeting.getParticipants().contains(command.email())) { + if (participantReader.existsParticipant(command.meetingId(), command.email())) { log.warn("Email {} is already a participant of meeting {}", command.email(), command.meetingId()); throw new BusinessException(ErrorCode.DUPLICATE_RESOURCE); } - // 참석자 목록에 추가 - meeting.addParticipant(command.email()); - - // 저장 - meetingWriter.save(meeting); + // 참석자 저장 + participantWriter.saveParticipant(command.meetingId(), command.email()); // TODO: 실제 이메일 발송 구현 필요 // 이메일 발송 서비스 호출 // emailService.sendInvitation(command.email(), meeting, command.frontendUrl()); // 현재는 로그만 남기고 성공으로 처리 - log.info("Invitation email would be sent to {} for meeting {} (Frontend URL: {})", + log.info("Invitation email would be sent to {} for meeting {} (Frontend URL: {})", command.email(), meeting.getTitle(), command.frontendUrl()); log.info("Participant invited successfully: {} to meeting {}", command.email(), command.meetingId()); diff --git a/meeting/src/main/java/com/unicorn/hgzero/meeting/biz/usecase/out/ParticipantReader.java b/meeting/src/main/java/com/unicorn/hgzero/meeting/biz/usecase/out/ParticipantReader.java new file mode 100644 index 0000000..30634c0 --- /dev/null +++ b/meeting/src/main/java/com/unicorn/hgzero/meeting/biz/usecase/out/ParticipantReader.java @@ -0,0 +1,24 @@ +package com.unicorn.hgzero.meeting.biz.usecase.out; + +import java.util.List; + +/** + * 참석자 조회 인터페이스 + */ +public interface ParticipantReader { + + /** + * 회의 ID로 참석자 목록 조회 + */ + List findParticipantsByMeetingId(String meetingId); + + /** + * 사용자 ID로 참여 회의 목록 조회 + */ + List findMeetingsByParticipant(String userId); + + /** + * 특정 회의에 특정 사용자가 참석자로 등록되어 있는지 확인 + */ + boolean existsParticipant(String meetingId, String userId); +} diff --git a/meeting/src/main/java/com/unicorn/hgzero/meeting/biz/usecase/out/ParticipantWriter.java b/meeting/src/main/java/com/unicorn/hgzero/meeting/biz/usecase/out/ParticipantWriter.java new file mode 100644 index 0000000..8943045 --- /dev/null +++ b/meeting/src/main/java/com/unicorn/hgzero/meeting/biz/usecase/out/ParticipantWriter.java @@ -0,0 +1,29 @@ +package com.unicorn.hgzero.meeting.biz.usecase.out; + +import java.util.List; + +/** + * 참석자 저장 인터페이스 + */ +public interface ParticipantWriter { + + /** + * 회의에 참석자 추가 + */ + void saveParticipant(String meetingId, String userId); + + /** + * 회의에 참석자 목록 일괄 저장 + */ + void saveParticipants(String meetingId, List userIds); + + /** + * 회의에서 참석자 삭제 + */ + void deleteParticipant(String meetingId, String userId); + + /** + * 회의의 모든 참석자 삭제 + */ + void deleteAllParticipants(String meetingId); +} diff --git a/meeting/src/main/java/com/unicorn/hgzero/meeting/infra/gateway/MeetingGateway.java b/meeting/src/main/java/com/unicorn/hgzero/meeting/infra/gateway/MeetingGateway.java index 4982cf1..a5037af 100644 --- a/meeting/src/main/java/com/unicorn/hgzero/meeting/infra/gateway/MeetingGateway.java +++ b/meeting/src/main/java/com/unicorn/hgzero/meeting/infra/gateway/MeetingGateway.java @@ -3,6 +3,7 @@ package com.unicorn.hgzero.meeting.infra.gateway; import com.unicorn.hgzero.meeting.biz.domain.Meeting; import com.unicorn.hgzero.meeting.biz.usecase.out.MeetingReader; import com.unicorn.hgzero.meeting.biz.usecase.out.MeetingWriter; +import com.unicorn.hgzero.meeting.biz.usecase.out.ParticipantReader; import com.unicorn.hgzero.meeting.infra.gateway.entity.MeetingEntity; import com.unicorn.hgzero.meeting.infra.gateway.repository.MeetingJpaRepository; import lombok.RequiredArgsConstructor; @@ -24,48 +25,72 @@ import java.util.stream.Collectors; public class MeetingGateway implements MeetingReader, MeetingWriter { private final MeetingJpaRepository meetingJpaRepository; + private final ParticipantReader participantReader; @Override public Optional findById(String meetingId) { return meetingJpaRepository.findById(meetingId) - .map(MeetingEntity::toDomain); + .map(this::enrichWithParticipants); } @Override public List findByOrganizerId(String organizerId) { return meetingJpaRepository.findByOrganizerId(organizerId).stream() - .map(MeetingEntity::toDomain) + .map(this::enrichWithParticipants) .collect(Collectors.toList()); } @Override public List findByStatus(String status) { return meetingJpaRepository.findByStatus(status).stream() - .map(MeetingEntity::toDomain) + .map(this::enrichWithParticipants) .collect(Collectors.toList()); } @Override public List findByOrganizerIdAndStatus(String organizerId, String status) { return meetingJpaRepository.findByOrganizerIdAndStatus(organizerId, status).stream() - .map(MeetingEntity::toDomain) + .map(this::enrichWithParticipants) .collect(Collectors.toList()); } @Override public List findByScheduledTimeBetween(LocalDateTime startTime, LocalDateTime endTime) { return meetingJpaRepository.findByScheduledAtBetween(startTime, endTime).stream() - .map(MeetingEntity::toDomain) + .map(this::enrichWithParticipants) .collect(Collectors.toList()); } @Override public List findByTemplateId(String templateId) { return meetingJpaRepository.findByTemplateId(templateId).stream() - .map(MeetingEntity::toDomain) + .map(this::enrichWithParticipants) .collect(Collectors.toList()); } + /** + * Meeting 엔티티를 도메인으로 변환하면서 participants 정보 추가 + */ + private Meeting enrichWithParticipants(MeetingEntity entity) { + Meeting meeting = entity.toDomain(); + List participants = participantReader.findParticipantsByMeetingId(entity.getMeetingId()); + return Meeting.builder() + .meetingId(meeting.getMeetingId()) + .title(meeting.getTitle()) + .purpose(meeting.getPurpose()) + .description(meeting.getDescription()) + .scheduledAt(meeting.getScheduledAt()) + .endTime(meeting.getEndTime()) + .location(meeting.getLocation()) + .startedAt(meeting.getStartedAt()) + .endedAt(meeting.getEndedAt()) + .status(meeting.getStatus()) + .organizerId(meeting.getOrganizerId()) + .participants(participants) + .templateId(meeting.getTemplateId()) + .build(); + } + @Override public Meeting save(Meeting meeting) { MeetingEntity entity = MeetingEntity.fromDomain(meeting); diff --git a/meeting/src/main/java/com/unicorn/hgzero/meeting/infra/gateway/ParticipantGateway.java b/meeting/src/main/java/com/unicorn/hgzero/meeting/infra/gateway/ParticipantGateway.java new file mode 100644 index 0000000..2fcb88d --- /dev/null +++ b/meeting/src/main/java/com/unicorn/hgzero/meeting/infra/gateway/ParticipantGateway.java @@ -0,0 +1,101 @@ +package com.unicorn.hgzero.meeting.infra.gateway; + +import com.unicorn.hgzero.meeting.biz.usecase.out.ParticipantReader; +import com.unicorn.hgzero.meeting.biz.usecase.out.ParticipantWriter; +import com.unicorn.hgzero.meeting.infra.gateway.entity.MeetingParticipantEntity; +import com.unicorn.hgzero.meeting.infra.gateway.repository.MeetingParticipantJpaRepository; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; +import java.util.stream.Collectors; + +/** + * 참석자 Gateway 구현체 + * ParticipantReader, ParticipantWriter 인터페이스 구현 + */ +@Slf4j +@Component +@RequiredArgsConstructor +public class ParticipantGateway implements ParticipantReader, ParticipantWriter { + + private final MeetingParticipantJpaRepository participantRepository; + + @Override + @Transactional(readOnly = true) + public List findParticipantsByMeetingId(String meetingId) { + return participantRepository.findByMeetingId(meetingId).stream() + .map(MeetingParticipantEntity::getUserId) + .collect(Collectors.toList()); + } + + @Override + @Transactional(readOnly = true) + public List findMeetingsByParticipant(String userId) { + return participantRepository.findByUserId(userId).stream() + .map(MeetingParticipantEntity::getMeetingId) + .collect(Collectors.toList()); + } + + @Override + @Transactional(readOnly = true) + public boolean existsParticipant(String meetingId, String userId) { + return participantRepository.existsByMeetingIdAndUserId(meetingId, userId); + } + + @Override + @Transactional + public void saveParticipant(String meetingId, String userId) { + if (!participantRepository.existsByMeetingIdAndUserId(meetingId, userId)) { + MeetingParticipantEntity participant = MeetingParticipantEntity.builder() + .meetingId(meetingId) + .userId(userId) + .invitationStatus("PENDING") + .attended(false) + .build(); + participantRepository.save(participant); + log.debug("Participant saved: meetingId={}, userId={}", meetingId, userId); + } else { + log.debug("Participant already exists: meetingId={}, userId={}", meetingId, userId); + } + } + + @Override + @Transactional + public void saveParticipants(String meetingId, List userIds) { + if (userIds == null || userIds.isEmpty()) { + return; + } + + List participants = userIds.stream() + .filter(userId -> !participantRepository.existsByMeetingIdAndUserId(meetingId, userId)) + .map(userId -> MeetingParticipantEntity.builder() + .meetingId(meetingId) + .userId(userId) + .invitationStatus("PENDING") + .attended(false) + .build()) + .collect(Collectors.toList()); + + if (!participants.isEmpty()) { + participantRepository.saveAll(participants); + log.debug("Participants saved: meetingId={}, count={}", meetingId, participants.size()); + } + } + + @Override + @Transactional + public void deleteParticipant(String meetingId, String userId) { + participantRepository.deleteById(new com.unicorn.hgzero.meeting.infra.gateway.entity.MeetingParticipantId(meetingId, userId)); + log.debug("Participant deleted: meetingId={}, userId={}", meetingId, userId); + } + + @Override + @Transactional + public void deleteAllParticipants(String meetingId) { + participantRepository.deleteByMeetingId(meetingId); + log.debug("All participants deleted: meetingId={}", meetingId); + } +} diff --git a/meeting/src/main/java/com/unicorn/hgzero/meeting/infra/gateway/entity/MeetingEntity.java b/meeting/src/main/java/com/unicorn/hgzero/meeting/infra/gateway/entity/MeetingEntity.java index 04e3596..28d7173 100644 --- a/meeting/src/main/java/com/unicorn/hgzero/meeting/infra/gateway/entity/MeetingEntity.java +++ b/meeting/src/main/java/com/unicorn/hgzero/meeting/infra/gateway/entity/MeetingEntity.java @@ -9,7 +9,7 @@ import lombok.Getter; import lombok.NoArgsConstructor; import java.time.LocalDateTime; -import java.util.Arrays; +import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; @@ -59,12 +59,16 @@ public class MeetingEntity extends BaseTimeEntity { @Column(name = "organizer_id", length = 50, nullable = false) private String organizerId; - @Column(name = "participants", columnDefinition = "TEXT") - private String participants; - @Column(name = "template_id", length = 50) private String templateId; + /** + * 회의 참석자 목록 (일대다 관계) + */ + @OneToMany(mappedBy = "meeting", cascade = CascadeType.ALL, orphanRemoval = true) + @Builder.Default + private List participants = new ArrayList<>(); + public Meeting toDomain() { return Meeting.builder() .meetingId(this.meetingId) @@ -78,7 +82,11 @@ public class MeetingEntity extends BaseTimeEntity { .endedAt(this.endedAt) .status(this.status) .organizerId(this.organizerId) - .participants(parseParticipants(this.participants)) + .participants(this.participants != null + ? this.participants.stream() + .map(MeetingParticipantEntity::getUserId) + .collect(Collectors.toList()) + : List.of()) .templateId(this.templateId) .build(); } @@ -96,7 +104,6 @@ public class MeetingEntity extends BaseTimeEntity { .endedAt(meeting.getEndedAt()) .status(meeting.getStatus()) .organizerId(meeting.getOrganizerId()) - .participants(formatParticipants(meeting.getParticipants())) .templateId(meeting.getTemplateId()) .build(); } @@ -110,18 +117,4 @@ public class MeetingEntity extends BaseTimeEntity { this.status = "COMPLETED"; this.endedAt = LocalDateTime.now(); } - - private static List parseParticipants(String participants) { - if (participants == null || participants.isEmpty()) { - return List.of(); - } - return Arrays.asList(participants.split(",")); - } - - private static String formatParticipants(List participants) { - if (participants == null || participants.isEmpty()) { - return ""; - } - return String.join(",", participants); - } } diff --git a/meeting/src/main/java/com/unicorn/hgzero/meeting/infra/gateway/entity/MeetingParticipantEntity.java b/meeting/src/main/java/com/unicorn/hgzero/meeting/infra/gateway/entity/MeetingParticipantEntity.java new file mode 100644 index 0000000..d82fd5b --- /dev/null +++ b/meeting/src/main/java/com/unicorn/hgzero/meeting/infra/gateway/entity/MeetingParticipantEntity.java @@ -0,0 +1,78 @@ +package com.unicorn.hgzero.meeting.infra.gateway.entity; + +import com.unicorn.hgzero.common.entity.BaseTimeEntity; +import jakarta.persistence.*; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Getter; +import lombok.NoArgsConstructor; + +/** + * 회의 참석자 Entity + * meeting_id와 user_id를 복합키로 사용하여 다대다 관계 표현 + */ +@Entity +@Table(name = "meeting_participants") +@IdClass(MeetingParticipantId.class) +@Getter +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class MeetingParticipantEntity extends BaseTimeEntity { + + /** + * 회의 ID (복합키) + */ + @Id + @Column(name = "meeting_id", length = 50) + private String meetingId; + + /** + * 사용자 ID (이메일) (복합키) + */ + @Id + @Column(name = "user_id", length = 100) + private String userId; + + /** + * 초대 상태 (PENDING, ACCEPTED, DECLINED) + */ + @Column(name = "invitation_status", length = 20) + @Builder.Default + private String invitationStatus = "PENDING"; + + /** + * 참석 여부 + */ + @Column(name = "attended") + @Builder.Default + private Boolean attended = false; + + /** + * 회의 엔티티와의 관계 + */ + @ManyToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "meeting_id", insertable = false, updatable = false) + private MeetingEntity meeting; + + /** + * 초대 수락 + */ + public void accept() { + this.invitationStatus = "ACCEPTED"; + } + + /** + * 초대 거절 + */ + public void decline() { + this.invitationStatus = "DECLINED"; + } + + /** + * 참석 처리 + */ + public void markAsAttended() { + this.attended = true; + } +} diff --git a/meeting/src/main/java/com/unicorn/hgzero/meeting/infra/gateway/entity/MeetingParticipantId.java b/meeting/src/main/java/com/unicorn/hgzero/meeting/infra/gateway/entity/MeetingParticipantId.java new file mode 100644 index 0000000..0e3c4a1 --- /dev/null +++ b/meeting/src/main/java/com/unicorn/hgzero/meeting/infra/gateway/entity/MeetingParticipantId.java @@ -0,0 +1,31 @@ +package com.unicorn.hgzero.meeting.infra.gateway.entity; + +import lombok.AllArgsConstructor; +import lombok.EqualsAndHashCode; +import lombok.Getter; +import lombok.NoArgsConstructor; + +import java.io.Serializable; + +/** + * 회의 참석자 복합키 + * meeting_id와 user_id를 복합키로 사용 + */ +@Getter +@EqualsAndHashCode +@NoArgsConstructor +@AllArgsConstructor +public class MeetingParticipantId implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 회의 ID + */ + private String meetingId; + + /** + * 사용자 ID (이메일) + */ + private String userId; +} diff --git a/meeting/src/main/java/com/unicorn/hgzero/meeting/infra/gateway/repository/MeetingParticipantJpaRepository.java b/meeting/src/main/java/com/unicorn/hgzero/meeting/infra/gateway/repository/MeetingParticipantJpaRepository.java new file mode 100644 index 0000000..072fa63 --- /dev/null +++ b/meeting/src/main/java/com/unicorn/hgzero/meeting/infra/gateway/repository/MeetingParticipantJpaRepository.java @@ -0,0 +1,45 @@ +package com.unicorn.hgzero.meeting.infra.gateway.repository; + +import com.unicorn.hgzero.meeting.infra.gateway.entity.MeetingParticipantEntity; +import com.unicorn.hgzero.meeting.infra.gateway.entity.MeetingParticipantId; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.data.jpa.repository.Modifying; +import org.springframework.data.jpa.repository.Query; +import org.springframework.data.repository.query.Param; +import org.springframework.stereotype.Repository; + +import java.util.List; + +/** + * 회의 참석자 JPA Repository + */ +@Repository +public interface MeetingParticipantJpaRepository extends JpaRepository { + + /** + * 회의 ID로 참석자 목록 조회 + */ + List findByMeetingId(String meetingId); + + /** + * 사용자 ID로 참여 회의 목록 조회 + */ + List findByUserId(String userId); + + /** + * 회의 ID와 초대 상태로 참석자 목록 조회 + */ + List findByMeetingIdAndInvitationStatus(String meetingId, String invitationStatus); + + /** + * 회의 ID로 참석자 전체 삭제 + */ + @Modifying + @Query("DELETE FROM MeetingParticipantEntity p WHERE p.meetingId = :meetingId") + void deleteByMeetingId(@Param("meetingId") String meetingId); + + /** + * 회의 ID와 사용자 ID로 참석자 존재 여부 확인 + */ + boolean existsByMeetingIdAndUserId(String meetingId, String userId); +} diff --git a/meeting/src/main/resources/db/migration/V2__create_meeting_participants_table.sql b/meeting/src/main/resources/db/migration/V2__create_meeting_participants_table.sql new file mode 100644 index 0000000..95e3cde --- /dev/null +++ b/meeting/src/main/resources/db/migration/V2__create_meeting_participants_table.sql @@ -0,0 +1,41 @@ +-- 회의 참석자 테이블 생성 +CREATE TABLE IF NOT EXISTS meeting_participants ( + meeting_id VARCHAR(50) NOT NULL, + user_id VARCHAR(100) NOT NULL, + invitation_status VARCHAR(20) DEFAULT 'PENDING', + attended BOOLEAN DEFAULT FALSE, + created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, + updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, + PRIMARY KEY (meeting_id, user_id), + CONSTRAINT fk_meeting_participants_meeting + FOREIGN KEY (meeting_id) REFERENCES meetings(meeting_id) + ON DELETE CASCADE +); + +-- 기존 meetings 테이블의 participants 데이터를 meeting_participants 테이블로 마이그레이션 +INSERT INTO meeting_participants (meeting_id, user_id, invitation_status, attended, created_at, updated_at) +SELECT + m.meeting_id, + TRIM(participant) as user_id, + 'PENDING' as invitation_status, + FALSE as attended, + m.created_at, + m.updated_at +FROM meetings m +CROSS JOIN LATERAL unnest(string_to_array(m.participants, ',')) AS participant +WHERE m.participants IS NOT NULL AND m.participants != ''; + +-- meetings 테이블에서 participants 컬럼 삭제 +ALTER TABLE meetings DROP COLUMN IF EXISTS participants; + +-- 인덱스 생성 +CREATE INDEX idx_meeting_participants_user_id ON meeting_participants(user_id); +CREATE INDEX idx_meeting_participants_invitation_status ON meeting_participants(invitation_status); +CREATE INDEX idx_meeting_participants_meeting_id_status ON meeting_participants(meeting_id, invitation_status); + +-- 코멘트 추가 +COMMENT ON TABLE meeting_participants IS '회의 참석자 정보'; +COMMENT ON COLUMN meeting_participants.meeting_id IS '회의 ID'; +COMMENT ON COLUMN meeting_participants.user_id IS '사용자 ID (이메일)'; +COMMENT ON COLUMN meeting_participants.invitation_status IS '초대 상태 (PENDING, ACCEPTED, DECLINED)'; +COMMENT ON COLUMN meeting_participants.attended IS '참석 여부';