diff --git a/.gitignore b/.gitignore index b05abb7e..1d90d6cb 100644 --- a/.gitignore +++ b/.gitignore @@ -54,3 +54,6 @@ out/ ### logstash logs/ /src/main/resources/logback-spring.xml + +### copilot +/copilot/* \ No newline at end of file diff --git a/src/main/java/org/example/tablenow/domain/store/service/StoreSearchService.java b/src/main/java/org/example/tablenow/domain/store/service/StoreSearchService.java index 34af57fc..f551bf12 100644 --- a/src/main/java/org/example/tablenow/domain/store/service/StoreSearchService.java +++ b/src/main/java/org/example/tablenow/domain/store/service/StoreSearchService.java @@ -68,7 +68,6 @@ public PageResponse getStoresV3(AuthUser authUser, int public void evictSearchCacheForNewStore(StoreDocument storeDocument) { Set keysToDelete = new HashSet<>(); keysToDelete.addAll(scanKeysByKeywordTokens(storeDocument.getName())); - keysToDelete.addAll(scanKeysByCategoryId(storeDocument.getCategoryId())); if (!keysToDelete.isEmpty()) { stringRedisTemplate.delete(keysToDelete); @@ -138,19 +137,17 @@ private Set scanKeysByKeywordTokens(String storeName) { Set keys = new HashSet<>(); Set tokens = storeTextAnalyzerService.analyzeText(STORE_INDEX, STORE_ANALYZER, storeName); + String emptyKeyword = StoreKeyGenerator.generateStoreKeyByPattern(STORE_SEARCH_KEY, "keyword", ""); + keys.addAll(scanKeys(emptyKeyword)); + for (String token : tokens) { - String pattern = StoreKeyGenerator.generateStoreKeyByPattern(STORE_SEARCH_KEY, "keyword", token); + String pattern = StoreKeyGenerator.generateStoreKeyByPattern(STORE_SEARCH_KEY, "keyword", "*" + token + "*"); keys.addAll(scanKeys(pattern)); } return keys; } - private Set scanKeysByCategoryId(Long categoryId) { - String pattern = StoreKeyGenerator.generateStoreKeyByPattern(STORE_SEARCH_KEY, "categoryId", String.valueOf(categoryId)); - return scanKeys(pattern); - } - private Set scanKeys(String pattern) { Set keys = new HashSet<>(); ScanOptions options = ScanOptions.scanOptions().match(pattern).count(500).build(); diff --git a/src/main/java/org/example/tablenow/domain/store/util/StoreKeyGenerator.java b/src/main/java/org/example/tablenow/domain/store/util/StoreKeyGenerator.java index cd12b4c2..2716f580 100644 --- a/src/main/java/org/example/tablenow/domain/store/util/StoreKeyGenerator.java +++ b/src/main/java/org/example/tablenow/domain/store/util/StoreKeyGenerator.java @@ -19,7 +19,7 @@ public static String generateStoreListKey(int page, int size, String sort, Strin } public static String generateStoreKeyByPattern(String header, String parameter, String keyword) { - String key = String.format("*%s*%s=%s*", header, parameter, keyword); + String key = String.format("*%s*%s=%s", header, parameter, keyword); log.info("[Radis 패턴 생성] {}", key); return key; }