Application 재시작 때마다 hibernate에서 table update 이슈

2023. 10. 18. 03:33

문제 상황

스프링 부트 재시작 때마다 hibernate에서 특정 datatype의 칼럼이 변경되었다는 쿼리가 나옴

[Hibernate] 
    alter table chat_messages 
       modify column last_message_time  datetime(6)
[Hibernate] 
    alter table chat_rooms 
       modify column last_message_time  datetime(6)
[Hibernate] 
    alter table companies 
       modify column created_on  datetime(6)
[Hibernate] 
    alter table companies 
       modify column modified_on  datetime(6)
[Hibernate] 
    alter table customers 
       modify column created_on  datetime(6)
[Hibernate] 
    alter table customers 
       modify column modified_on  datetime(6)
[Hibernate] 
    alter table files 
       modify column created_on  datetime(6)
[Hibernate] 
    alter table files 
       modify column modified_on  datetime(6)
[Hibernate] 
    alter table items 
       modify column created_on  datetime(6)
[Hibernate] 
    alter table items 
       modify column modified_on  datetime(6)
[Hibernate] 
    alter table planner_profiles 
       modify column created_on  datetime(6)
[Hibernate] 
    alter table planner_profiles 
       modify column modified_on  datetime(6)
[Hibernate] 
    alter table planners 
       modify column created_on  datetime(6)
[Hibernate] 
    alter table planners 
       modify column modified_on  datetime(6)
[Hibernate] 
    alter table portfolios 
       modify column created_on  datetime(6)
[Hibernate] 
    alter table portfolios 
       modify column modified_on  datetime(6)
[Hibernate] 
    alter table user_likes 
       modify column like_type  enum ('company','item','planner','portfolio') not null
[Hibernate] 
    alter table users 
       modify column created_on  datetime(6)
[Hibernate] 
    alter table users 
       modify column modified_on  datetime(6)
[Hibernate] 
    alter table users 
       modify column account_status  enum ('BANNED','NORMAL','SUSPENDED','WITHDRAW') not null
[Hibernate] 
    alter table users 
       modify column auth_provider  enum ('KAKAO') not null
[Hibernate] 
    alter table users 
       modify column register_status  enum ('CUSTOMER','PLANNER','UNREGISTERED') not null

발생 원인

무엇을 하려고 했는지 상세히 설명
어떤 버튼을 클릭했는지, 어떤 입력을 했는지 등의 과정 설명
발생한 에러에 대한 행동/반응

구글링 결과 Spring Data JPA 3.0.x to 3.1.x., hibernate 6.2.0.Final to 6.2.7.Final 버전에서 발생하는 weird/rare and ancient issue라고 함😢

해결 방법

어떠한 조치를 시도했고, 어떤 결과가 나왔는지 작성
스크린샷(선택 사항)
@Temporal(TemporalType.DATE) 으로 명시적으로 쿼리 타입 지정했지만 실패

개선 방안

jpa 버전 다운그레이드 혹은 ddl-auto: update에서 ddl-auto: none으로 변경하여 사용해야 해결 가능

링크

hibernate.org
stackoverflow.com

BELATED ARTICLES

more