Skip to content

[후속 작업] 신규 메뉴 sortOrder=0 하드코딩으로 인한 정렬 비결정성 및 동시성 이슈 #274

@coderabbitai

Description

@coderabbitai

문제 설명

  • nowait-app-admin-api/src/main/java/com/nowait/applicationadmin/menu/dto/MenuCreateRequest.java 의 toEntity()에서 sortOrder가 0L로 하드코딩되어 있습니다.

현재 동작

  • 동일 storeId에서 신규 메뉴가 여러 개 생성될 경우, 모두 sortOrder=0 상태로 저장됩니다.

영향

  • 목록 정렬이 sortOrder 기준일 때 결과가 비결정적일 수 있으며, 동시에 생성되는 경우 경쟁 상태로 인해 순서가 불안정할 수 있습니다.
  • 관리자/사용자 화면에서 메뉴 순서가 예측 불가능하게 보일 수 있습니다.

재현 방법

  1. 동일 매장(storeId)에 대해 빠르게 2개 이상의 메뉴를 연속 생성합니다.
  2. 메뉴 목록을 조회하면 호출/저장 타이밍에 따라 순서가 달라질 수 있습니다.

기대 결과

  • 신규 메뉴 생성 시 동일 매장 내에서 정렬의 결정성이 보장되고, 동시에 생성되는 경우에도 안정적인 초기 sortOrder가 부여됩니다.

범위

  • nowait-app-admin-api: MenuCreateRequest, MenuService, MenuRepository
  • nowait-domain: Menu 엔티티

참고

요청자: @Jjiggu
비고: 본 PR(273) 범위를 벗어나므로 후속 작업으로 처리합니다.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions