Skip to content

Bug : 첫번째 데이터에서 SaveAndFlush 로 아이디를 정상 호출 후에 발생한 문제 #26

@Ppajingae

Description

@Ppajingae

상황

  • RealEstate 테이블에서 데이터를 SaveAndFlush로 정상 호출한 상황에서 다음 테이블인 RealEstateAttribute 테이블에 RealEstate 아이디를 맵핑해야하는 상황에서 아이디가 맵핑이 되지 않는 상황
  • ERROR: null value in column "id" of relation "real_estate_attribute" violates not-null constraint 발생

예측 원인

  • 코틀린 내부에 JPA 와 생성자 간에 충돌
  • DB에서 Auto_inclement 정상 작동 안함

원인

  • DB에서 Auto_inclement 정상 작동 안함
  • DB 확인 시에 id 값이 Int 값이고 auto_inclement 가 걸리지 않는 점 확인

과정

  1. ALTER TABLE real_estate_attribute ALTER COLUMN id TYPE BIGINT; 로 타입 변경
  2. CREATE SEQUENCE real_estate_attribute_id_seq; 로 auto_inclement 가 될 수 있게끔 시퀀스 변경
  3. ALTER TABLE real_estate_attribute ALTER COLUMN id SET DEFAULT nextval('real_estate_attribute_id_seq'); 만든 시퀀스 적용
  4. ALTER TABLE real_estate_attribute ADD PRIMARY KEY (id); PK 설정 ( 이미 설정 되어있는 점 확인 )

결과

정상 작동 확인

Metadata

Metadata

Assignees

Labels

버그버그 상황

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions