Skip to content

Conversation

@ggamnunq
Copy link
Contributor

@ggamnunq ggamnunq commented Aug 31, 2025

Summary by CodeRabbit

  • Refactor
    • 장소 목록 조회 시 좋아요와 사용자 정보를 한 번에 가져오도록 데이터 접근을 최적화했습니다. 목록/상세 화면 로딩이 더 빨라지고 스크롤 시 끊김이 줄며, 대규모 목록에서도 안정적인 반응 속도를 제공합니다.
    • 좋아요 수 계산과 내가 누른 좋아요 표시가 더 일관되게 반영되어, 간헐적인 지연이나 미표시 현상이 감소합니다.

@coderabbitai
Copy link

coderabbitai bot commented Aug 31, 2025

Caution

Review failed

The pull request is closed.

Walkthrough

PlaceLikeRepository의 다건 조회 메서드를 JOIN FETCH로 대체하여 User를 즉시 로딩하도록 변경했고, PlaceQueryService는 해당 새 메서드를 사용하도록 수정되었습니다. 그 외 로직과 반환 타입은 동일합니다.

Changes

Cohort / File(s) Summary
Repository: fetch join for likes
src/main/kotlin/busanVibe/busan/domain/place/repository/PlaceLikeRepository.kt
기존 findAllByPlaceIn(...) 제거. @Query와 JOIN FETCH(pl.user)를 사용하는 findAllByPlaceInFetchUser(@Param("placeList") ...) 추가. 기존 findLikeByPlace는 변경 없음.
Service: method rename usage
src/main/kotlin/busanVibe/busan/domain/place/service/PlaceQueryService.kt
getPlaceList에서 레포 메서드 호출을 findAllByPlaceIn(...)findAllByPlaceInFetchUser(...)로 교체. 나머지 집계/판단 로직은 동일.

Sequence Diagram(s)

sequenceDiagram
  autonumber
  participant C as Controller/Caller
  participant S as PlaceQueryService
  participant R as PlaceLikeRepository
  participant DB as DB

  C->>S: getPlaceList(placeList)
  S->>R: findAllByPlaceInFetchUser(placeList)
  R->>DB: JPQL: SELECT pl JOIN FETCH pl.user WHERE pl.place IN :placeList
  DB-->>R: List<PlaceLike> (User eager-loaded)
  R-->>S: List<PlaceLike>
  S-->>C: Place list with like counts/user-like flags
Loading

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Poem

당근 같은 귀로 퐁퐁, 깡총깡총 뛰며 말해요 🥕
좋아요 찾기, 이제 한 번에 척!
사용자도 함께 데려오는 춤사위
지연 없이 척척, 캐시처럼 똑딱
부산의 바이브, 조인으로 반짝!


📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Free

💡 Knowledge Base configuration:

  • Jira integration is disabled
  • Linear integration is disabled

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between 45033d2 and ed45592.

📒 Files selected for processing (2)
  • src/main/kotlin/busanVibe/busan/domain/place/repository/PlaceLikeRepository.kt (1 hunks)
  • src/main/kotlin/busanVibe/busan/domain/place/service/PlaceQueryService.kt (1 hunks)

Note

🎁 Summarized by CodeRabbit Free

Your organization is on the Free plan. CodeRabbit will generate a high-level summary and a walkthrough for each pull request. For a comprehensive line-by-line review, please upgrade your subscription to CodeRabbit Pro by visiting https://app.coderabbit.ai/login.

🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.

Support

Need help? Join our Discord community for assistance with any issues or questions.

CodeRabbit Commands (Invoked using PR/Issue comments)

Type @coderabbitai help to get the list of available commands.

Other keywords and placeholders

  • Add @coderabbitai ignore or @coderabbit ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Status, Documentation and Community

  • Visit our Status Page to check the current availability of CodeRabbit.
  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@ggamnunq ggamnunq merged commit 9067479 into main Aug 31, 2025
1 of 2 checks passed
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.

2 participants