Skip to content
Snippets Groups Projects
Commit 54615f18 authored by Shinsuke Sugaya's avatar Shinsuke Sugaya
Browse files

update upgrade process

parent bbfe9f1a
Branches
Tags
No related merge requests found
...@@ -35,8 +35,6 @@ import org.codelibs.fess.es.config.exbhv.RoleTypeBhv; ...@@ -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.WebConfigBhv;
import org.codelibs.fess.es.config.exbhv.WebConfigToRoleBhv; import org.codelibs.fess.es.config.exbhv.WebConfigToRoleBhv;
import org.codelibs.fess.es.user.exbhv.RoleBhv; 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.codelibs.fess.util.UpgradeUtil;
import org.elasticsearch.action.ActionListener; import org.elasticsearch.action.ActionListener;
import org.elasticsearch.action.support.IndicesOptions; import org.elasticsearch.action.support.IndicesOptions;
...@@ -213,7 +211,7 @@ public class AdminUpgradeAction extends FessAdminAction { ...@@ -213,7 +211,7 @@ public class AdminUpgradeAction extends FessAdminAction {
// update mapping // update mapping
if (UpgradeUtil.addFieldMapping(indicesClient, searchLogIndex, "search_log", "virtualHost", if (UpgradeUtil.addFieldMapping(indicesClient, searchLogIndex, "search_log", "virtualHost",
"{\"properties\":{\"virtualHost\":{\"type\":\"keyword\"}}}")) { "{\"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\"}}}"// + "{\"search_fields\": {\"path_match\": \"searchField.*\",\"mapping\": {\"type\": \"keyword\"}}}"//
+ "]}"); + "]}");
} }
...@@ -232,31 +230,11 @@ public class AdminUpgradeAction extends FessAdminAction { ...@@ -232,31 +230,11 @@ public class AdminUpgradeAction extends FessAdminAction {
private void upgradeFromAll() { private void upgradeFromAll() {
final IndicesAdminClient indicesClient = fessEsClient.admin().indices(); final IndicesAdminClient indicesClient = fessEsClient.admin().indices();
final String crawlerIndex = fessConfig.getIndexDocumentCrawlerIndex(); final String crawlerIndex = fessConfig.getIndexDocumentCrawlerIndex();
final String suggestIndex = ComponentUtil.getComponent(SuggestHelper.class).suggester().getIndex();
// .crawler // .crawler
if (UpgradeUtil.existsIndex(indicesClient, crawlerIndex, IndicesOptions.fromOptions(false, true, true, true))) { if (UpgradeUtil.existsIndex(indicesClient, crawlerIndex, IndicesOptions.fromOptions(false, true, true, true))) {
UpgradeUtil.deleteIndex(indicesClient, crawlerIndex, response -> {}); 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) { private boolean startReindex(final boolean replaceAliases) {
... ...
......
...@@ -30,6 +30,7 @@ import org.elasticsearch.action.admin.indices.exists.indices.IndicesExistsRespon ...@@ -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;
import org.elasticsearch.action.admin.indices.mapping.get.GetFieldMappingsResponse.FieldMappingMetaData; 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.get.GetMappingsResponse;
import org.elasticsearch.action.admin.indices.mapping.put.PutMappingRequestBuilder;
import org.elasticsearch.action.admin.indices.mapping.put.PutMappingResponse; import org.elasticsearch.action.admin.indices.mapping.put.PutMappingResponse;
import org.elasticsearch.action.index.IndexRequest; import org.elasticsearch.action.index.IndexRequest;
import org.elasticsearch.action.support.IndicesOptions; import org.elasticsearch.action.support.IndicesOptions;
...@@ -147,9 +148,16 @@ public final class UpgradeUtil { ...@@ -147,9 +148,16 @@ public final class UpgradeUtil {
} }
public static boolean putMapping(final IndicesAdminClient indicesClient, final String index, final String source) { 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 { try {
final PutMappingResponse pmResponse = final PutMappingRequestBuilder builder = indicesClient.preparePutMapping(index).setSource(source, XContentType.JSON);
indicesClient.preparePutMapping(index).setSource(source, XContentType.JSON).execute().actionGet(); if (type != null) {
builder.setType(type);
}
final PutMappingResponse pmResponse = builder.execute().actionGet();
if (!pmResponse.isAcknowledged()) { if (!pmResponse.isAcknowledged()) {
logger.warn("Failed to update " + index + " settings."); logger.warn("Failed to update " + index + " settings.");
} else { } else {
... ...
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment