Skip to content

Commit 2d94489

Browse files
claude[bot]github-actions[bot]claude
authored
Maintenance: Recommendation Service - Improve exception handling safety (#109)
Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com> Co-authored-by: Claude <[email protected]>
1 parent b3296c9 commit 2d94489

File tree

2 files changed

+5
-3
lines changed

2 files changed

+5
-3
lines changed

src/main/java/spring/memewikibe/application/RecommendationService.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -105,8 +105,8 @@ public List<MemeRecommendationResponse> searchWithReasons(String query, Long use
105105
// 확장된 키워드 토큰들로 OR 조건 검색을 수행
106106
log.info("Performing keyword search with OR conditions for tokens: {}", keywordTokens);
107107
kwCandidates = memeRepository.findKeywordCandidatesAcrossFields(keywordTokens, of(useKwTopK));
108-
} catch (Throwable t2) {
109-
log.error("Custom keyword search failed, falling back to simple containing search.", t2);
108+
} catch (Exception e) {
109+
log.error("Custom keyword search failed, falling back to simple containing search.", e);
110110
kwCandidates = memeRepository.findByTitleOrHashtagsContainingOrderByIdDesc(normKeywordQuery, of(useKwTopK));
111111
}
112112
}

src/main/java/spring/memewikibe/application/SafeFullTextSearchExecutor.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,9 @@ public class SafeFullTextSearchExecutor {
2626
public List<Meme> tryFullText(String query, int limit) {
2727
try {
2828
return memeRepository.findCandidatesByFullTextSearch(query, limit);
29-
} catch (Throwable ignored) {
29+
} catch (Exception ignored) {
30+
// Catch database-related exceptions (e.g., SQL syntax errors on H2)
31+
// but let Error types (OutOfMemoryError, etc.) propagate
3032
return emptyList();
3133
}
3234
}

0 commit comments

Comments
 (0)