Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FIX] on delete cascade되도록 flyway 스크립트 추가 #289 #293

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

Zena0128
Copy link
Contributor

🌍 이슈 번호

📝 구현 내용

  • flyway에서 timeline이 on delete cascade로 삭제되도록 새로운 스크립트 추가

🍀 확인해야 할 부분

  • flyway를 첨 써봐서... 일케 그냥 실행하고 싶은 구문 적는 것이 맞는지..

@Zena0128 Zena0128 requested review from hodadako and Jin409 November 27, 2024 07:31
@Zena0128 Zena0128 self-assigned this Nov 27, 2024
Copy link
Contributor

@Jin409 Jin409 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. 게임이 삭제되면 타임라인도 삭제되고
  2. 교체 라인업 플레이어가 삭제되면 타임라인도 삭제되고
  3. 득점 선수가 삭제되면 타임라인도 삭제되는거죠?

이렇게 되면 타임라인 정합성이 깨지지 않을까 조금 걱정이 되네요.. 만약 매니저가 라인업을 삭제하게 되면 타임라인도 결국 삭제되니까..!

@Zena0128
Copy link
Contributor Author

Zena0128 commented Nov 28, 2024

  1. 게임이 삭제되면 타임라인도 삭제되고
  2. 교체 라인업 플레이어가 삭제되면 타임라인도 삭제되고
  3. 득점 선수가 삭제되면 타임라인도 삭제되는거죠?

이렇게 되면 타임라인 정합성이 깨지지 않을까 조금 걱정이 되네요.. 만약 매니저가 라인업을 삭제하게 되면 타임라인도 결국 삭제되니까..!

@Jin409
흐으음.. 근데 먼가 라인업에 있는 특정 선수가 삭제되는 경우에는 해당 선수와 관련된 타임라인들도 자동으로 삭제되는 게 맞지 않을까요??? 만약 선수 정보가 잘못 등록된 거라면 그건 그거대로 삭제 후 다시 올려야 하니까..!

아니면.. 실수로 선수를 삭제하는 문제가 걱정인 거라면 라인업 선수 삭제를 논리 삭제로 가는 방법이 있을 것 같은디.. 이게 나으려나요?
(근데 논리 삭제로 가버리면 게임 만들었다가 실수해서 게임 삭제하면 불필요한 라인업 선수 데이터가 무더기로 쌓여있을지도..)

@Jin409
Copy link
Contributor

Jin409 commented Nov 29, 2024

@Jin409 흐으음.. 근데 먼가 라인업에 있는 특정 선수가 삭제되는 경우에는 해당 선수와 관련된 타임라인들도 자동으로 삭제되는 게 맞지 않을까요??? 만약 선수 정보가 잘못 등록된 거라면 그건 그거대로 삭제 후 다시 올려야 하니까..!

아니면.. 실수로 선수를 삭제하는 문제가 걱정인 거라면 라인업 선수 삭제를 논리 삭제로 가는 방법이 있을 것 같은디.. 이게 나으려나요? (근데 논리 삭제로 가버리면 게임 만들었다가 실수해서 게임 삭제하면 불필요한 라인업 선수 데이터가 무더기로 쌓여있을지도..)

흐음.... 그러게요 아니면 타임라인에서 연관관계를 끊고 생 문자열로 저장하던가.. 이거 저번에도 논의했던 것 같은데 타임라인 자체를 완전히 문서로 볼 것인가에 대해.... 고민이네요

@hodadako
Copy link
Member

hodadako commented Dec 2, 2024

  1. 게임이 삭제되면 타임라인도 삭제되고
  2. 교체 라인업 플레이어가 삭제되면 타임라인도 삭제되고
  3. 득점 선수가 삭제되면 타임라인도 삭제되는거죠?

이렇게 되면 타임라인 정합성이 깨지지 않을까 조금 걱정이 되네요.. 만약 매니저가 라인업을 삭제하게 되면 타임라인도 결국 삭제되니까..!

@Jin409 흐으음.. 근데 먼가 라인업에 있는 특정 선수가 삭제되는 경우에는 해당 선수와 관련된 타임라인들도 자동으로 삭제되는 게 맞지 않을까요??? 만약 선수 정보가 잘못 등록된 거라면 그건 그거대로 삭제 후 다시 올려야 하니까..!

아니면.. 실수로 선수를 삭제하는 문제가 걱정인 거라면 라인업 선수 삭제를 논리 삭제로 가는 방법이 있을 것 같은디.. 이게 나으려나요? (근데 논리 삭제로 가버리면 게임 만들었다가 실수해서 게임 삭제하면 불필요한 라인업 선수 데이터가 무더기로 쌓여있을지도..)

라인업 선수 데이터가 무더기로 쌓여있는걸 걱정해야할만큼 실제로 라인업 선수를 지우는 일이 많을까..?

@Zena0128
Copy link
Contributor Author

Zena0128 commented Dec 11, 2024

  1. 게임이 삭제되면 타임라인도 삭제되고
  2. 교체 라인업 플레이어가 삭제되면 타임라인도 삭제되고
  3. 득점 선수가 삭제되면 타임라인도 삭제되는거죠?

이렇게 되면 타임라인 정합성이 깨지지 않을까 조금 걱정이 되네요.. 만약 매니저가 라인업을 삭제하게 되면 타임라인도 결국 삭제되니까..!

@Jin409 흐으음.. 근데 먼가 라인업에 있는 특정 선수가 삭제되는 경우에는 해당 선수와 관련된 타임라인들도 자동으로 삭제되는 게 맞지 않을까요??? 만약 선수 정보가 잘못 등록된 거라면 그건 그거대로 삭제 후 다시 올려야 하니까..!
아니면.. 실수로 선수를 삭제하는 문제가 걱정인 거라면 라인업 선수 삭제를 논리 삭제로 가는 방법이 있을 것 같은디.. 이게 나으려나요? (근데 논리 삭제로 가버리면 게임 만들었다가 실수해서 게임 삭제하면 불필요한 라인업 선수 데이터가 무더기로 쌓여있을지도..)

라인업 선수 데이터가 무더기로 쌓여있는걸 걱정해야할만큼 실제로 라인업 선수를 지우는 일이 많을까..?

저 다단계 cascade delete가 발생하는 궁극적인 이유는 게임 삭제 시 연관된 객체들 줄줄이 삭제하는 거라
"게임을 삭제하고 싶어!"
게임 삭제 -> 게임과 연관된 라인업 선수 삭제 -> 라인업 선수와 연관된 타임라인 삭제
요 로직으로 cascade되는 거거든유

근데 지금 같이 고민하고 있는 부분은 저 중에서도
"게임의 특정 라인업 선수를 삭제하고 싶어!"
라인업 선수 삭제 -> 라인업 선수와 연관된 타임라인 삭제

이건데

그러면 게임 삭제 시에는 연관된 애들 줄줄이 삭제하고
게임과는 관련 없이, 단순히 특정 라인업 선수를 삭제하고 싶은 경우는 논리 삭제로 진행하면 되지 않을까여? 그러면 타임라인도 잘 남아있게 되니까!
(지금 아직 라인업 수정 혹은 삭제는 구현 안 된 상황이니까 나중에 라인업 수정 및 삭제 구현하면서 그렇게 구현하면 되지 않을까 하는 ,,)

현재는 게임을 만들면 수정이 안 되는 상황이라 수정사항 생기면 무조건 삭제 후 다시 만들어야 해서 만약 전체 논리 삭제로 가게 되면 불필요한 라인업 플레이어 레코드가 한게임에 최소 20개씩 생기게 되는 게 조곰 비효율적이라고 생각이 들기는 해여

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[FIX] 타임라인 존재 시에도 경기 삭제 가능
3 participants