From 54615f18b1a272b29caa4d07cb4d98ee4a6b4b45 Mon Sep 17 00:00:00 2001 From: Shinsuke Sugaya <shinsuke@apache.org> Date: Sat, 12 Aug 2017 14:46:48 +0900 Subject: [PATCH] update upgrade process --- .../web/admin/upgrade/AdminUpgradeAction.java | 24 +------------------ .../org/codelibs/fess/util/UpgradeUtil.java | 12 ++++++++-- 2 files changed, 11 insertions(+), 25 deletions(-) diff --git a/src/main/java/org/codelibs/fess/app/web/admin/upgrade/AdminUpgradeAction.java b/src/main/java/org/codelibs/fess/app/web/admin/upgrade/AdminUpgradeAction.java index fbd54102e..2267fe20d 100644 --- a/src/main/java/org/codelibs/fess/app/web/admin/upgrade/AdminUpgradeAction.java +++ b/src/main/java/org/codelibs/fess/app/web/admin/upgrade/AdminUpgradeAction.java @@ -35,8 +35,6 @@ import org.codelibs.fess.es.config.exbhv.RoleTypeBhv; import org.codelibs.fess.es.config.exbhv.WebConfigBhv; import org.codelibs.fess.es.config.exbhv.WebConfigToRoleBhv; import org.codelibs.fess.es.user.exbhv.RoleBhv; -import org.codelibs.fess.helper.SuggestHelper; -import org.codelibs.fess.util.ComponentUtil; import org.codelibs.fess.util.UpgradeUtil; import org.elasticsearch.action.ActionListener; import org.elasticsearch.action.support.IndicesOptions; @@ -213,7 +211,7 @@ public class AdminUpgradeAction extends FessAdminAction { // update mapping if (UpgradeUtil.addFieldMapping(indicesClient, searchLogIndex, "search_log", "virtualHost", "{\"properties\":{\"virtualHost\":{\"type\":\"keyword\"}}}")) { - UpgradeUtil.putMapping(indicesClient, searchLogIndex, "{\"dynamic_templates\": [" + UpgradeUtil.putMapping(indicesClient, searchLogIndex, "search_log", "{\"dynamic_templates\": [" + "{\"search_fields\": {\"path_match\": \"searchField.*\",\"mapping\": {\"type\": \"keyword\"}}}"// + "]}"); } @@ -232,31 +230,11 @@ public class AdminUpgradeAction extends FessAdminAction { private void upgradeFromAll() { final IndicesAdminClient indicesClient = fessEsClient.admin().indices(); final String crawlerIndex = fessConfig.getIndexDocumentCrawlerIndex(); - final String suggestIndex = ComponentUtil.getComponent(SuggestHelper.class).suggester().getIndex(); // .crawler if (UpgradeUtil.existsIndex(indicesClient, crawlerIndex, IndicesOptions.fromOptions(false, true, true, true))) { UpgradeUtil.deleteIndex(indicesClient, crawlerIndex, response -> {}); } - - // fess.suggest - if (UpgradeUtil.existsIndex(indicesClient, suggestIndex, IndicesOptions.fromOptions(false, true, true, true))) { - UpgradeUtil.deleteIndex(indicesClient, suggestIndex, response -> { - scheduledJobService.getScheduledJob("suggest_indexer").ifPresent(entity -> { - if (!entity.isEnabled() || entity.isRunning()) { - logger.warn("suggest_indexer job is running."); - return; - } - try { - entity.start(); - } catch (final Exception e) { - logger.warn("Failed to start suggest_indexer job.", e); - } - }).orElse(() -> { - logger.warn("No suggest_indexer job."); - }); - }); - } } private boolean startReindex(final boolean replaceAliases) { diff --git a/src/main/java/org/codelibs/fess/util/UpgradeUtil.java b/src/main/java/org/codelibs/fess/util/UpgradeUtil.java index d5d8d231d..15f532347 100644 --- a/src/main/java/org/codelibs/fess/util/UpgradeUtil.java +++ b/src/main/java/org/codelibs/fess/util/UpgradeUtil.java @@ -30,6 +30,7 @@ import org.elasticsearch.action.admin.indices.exists.indices.IndicesExistsRespon import org.elasticsearch.action.admin.indices.mapping.get.GetFieldMappingsResponse; import org.elasticsearch.action.admin.indices.mapping.get.GetFieldMappingsResponse.FieldMappingMetaData; import org.elasticsearch.action.admin.indices.mapping.get.GetMappingsResponse; +import org.elasticsearch.action.admin.indices.mapping.put.PutMappingRequestBuilder; import org.elasticsearch.action.admin.indices.mapping.put.PutMappingResponse; import org.elasticsearch.action.index.IndexRequest; import org.elasticsearch.action.support.IndicesOptions; @@ -147,9 +148,16 @@ public final class UpgradeUtil { } public static boolean putMapping(final IndicesAdminClient indicesClient, final String index, final String source) { + return putMapping(indicesClient, index, null, source); + } + + public static boolean putMapping(final IndicesAdminClient indicesClient, final String index, final String type, final String source) { try { - final PutMappingResponse pmResponse = - indicesClient.preparePutMapping(index).setSource(source, XContentType.JSON).execute().actionGet(); + final PutMappingRequestBuilder builder = indicesClient.preparePutMapping(index).setSource(source, XContentType.JSON); + if (type != null) { + builder.setType(type); + } + final PutMappingResponse pmResponse = builder.execute().actionGet(); if (!pmResponse.isAcknowledged()) { logger.warn("Failed to update " + index + " settings."); } else { -- GitLab