Elasti c Search- Java: невозможно удалить индекс снова после удаления этого индекса - PullRequest
1 голос
/ 10 января 2020

Я пытаюсь воссоздать индекс после удаления индекса XYZ, но через странное исключение.

Постановка задачи: Есть два индекса AB C с поля как:

{...
    "internalId": {
                  "store": false,
                  "type": "integer"
              },
    ...}

И для других XYZ с полями как:

{...
"internalId": {
              "store": false,
              "type": "keyword"
          },
...}

Теперь, когда это пытается создать индекс XYZ с помощью кода

private void saveEsXYZ(EsXYZ esxyz){
    try {

        if (recreateIndex) {
            esXYZRepo.deleteIndex();  ---- There is no problem with this code.
            esXYZRepo.createIndex();  ---- When trying to create then throw IllegalArgumentException
        }
            glLogger.info("indexing xyz for id : {}", esxyz.getId());
            esXYZRepo.index(esxyz);
        glLogger.info("updated  records ");
    }catch (Exception ex) {
        glLogger.info("Exception occoured in EsXYZ ", ex);
    }
}

, затем выдает: 10-Jan-2020 12: 09: 29.462 ОШИБКА localhost-startStop-1 org.springframework.web.context.ContextLoader - инициализация контекста не удалась org.springframework.beans.factory.BeanCreationException: Ошибка создания бина с именем 'scopedTarget.esXYZRepo', определенного в URL [jar: file: / path /apache-tomcat-8.0.36/webapps/xyz/WEB-INF/lib /xyzRepo-1.0.jar!/com/xyz/sky30/es/repo/XYZRepo.class]: Ошибка вызова метода init; вложенное исключение: java .lang.IllegalArgumentException: преобразователь [internalId] не может быть изменен с типа [целое число] на [ключевое слово] в org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBeanFeanFean. Bean () *: 1634. spring-beans-4.3.18.RELEASE.j ar: 4.3.18.RELEASE] в org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean (AbstractAutowireCapableBeanFactory. java: 483-4.3-Spring). 18.RELEASE.jar: 4.3.18.RELEASE] at org.springframework.beans.factory.support.AbstractBeanFactory $ 1.getObject (AbstractBeanFactory. java: 312) ~ [spring-beans-4.3.18.RELEASE.jar: 4.3.18.RELEASE] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton (DefaultSingletonBeanRegistry. java: 230) ~ [s pring-beans-4.3.18.RELEASE.jar: 4.3.18.RE LEASE] в org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean (AbstractBeanFactory. java: 308) ~ [spring-beans-4.3. 18.RELEASE.jar: 4.3.18.RELEASE] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean (AbstractBeanFactory. java: 197) ~ [spring-beans-4.3.18.RELEASE.jar: 4.3 .18.RELEASE] at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons (DefaultListableBeanFactory. java: 761) ~ [spring-beans-4.3.18.RELEASE.jar: 4 .3.18.RELE] .springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization (AbstractApplicationContext. java: 867) ~ [spring-context-4.3.18.RELEASE.ja r: 4.3.18.RELEASE] в org.springframework.conppAbtext.su .refre sh (AbstractApplicationContext. java: 543) ~ [spring-context-4.3.18.RELEASE.jar: 4.3.18.RELEASE] в org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext (Cont extLoader. java: 443) ~ [spring-web-4.3.18.RELEASE.jar: 4.3.18.RELEASE] at org.springframework.web.context.ContextLoader.initWebApplicationContext (ContextLoader. java: 325) [ spring-web-4.3.18.RELEASE.jar: 4.3.18.RELEASE] at org.springframework.web.context.ContextLoaderListener.contextInitialized (ContextLoaderListener. java: 107) [spring-web-4.3.18.RELEASE. jar: 4.3.18.RELEASE] в орг. apache .catalina.core.StandardContext.listenerStart (StandardContext. java: 4842) [catalina.jar: 8.0.36] в орг. apache .catalina.core .StandardContext.startInternal (StandardContext. java: 5303) [catalina.jar: 8.0.36] в org. apache .catalina.util.LifecycleBase.start (LifecycleBase. java: 147) [catalina.jar: 8.0.36] в орг. apache .catalina.core.ContainerBase.addChildInternal (ContainerBase. java: 725) [catalina.jar: 8.0.36] в орг. apache .catalina.core.ContainerBase.addChild (ContainerBase. java: 701) [catalina.jar: 8.0.36] в орг. apache .catalina.core.StandardHost.addChild (StandardHost. java: 717) [catalina.jar: 8.0.36] в орг. apache .catalina.startup.HostConfig.deployWAR (HostConfig. java: 940) [catalina.jar: 8.0.36] в орг. apache .catalina.startup.HostConfig $ DeployWar.run (HostConfig . java: 1816) [catalina.jar: 8.0.36] в java .util.concurrent.Executors $ RunnableAdapter.call (Executors. java: 511) [?: 1.8.0_191] в java .util.concurrent.FutureTask.run (FutureTask. java: 266) [?: 1.8.0_191] в java .util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor. java: 1149) [?: 1.8. 0_191] в java .util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor. java: 624) [?: 1.8.0_191] в java .lang.Thread.run (Thread. java: 748 ) [?: 1.8.0_191] Причина: java .lang.IllegalArgumentException: mapper [internalId] нельзя изменить с типа [целое число] на [ключевое слово] в org.elasticsearch.index.mapper. MappedFieldType.checkTypeName (MappedFieldType. java: 147) ~ [asticsearch-5.5.0.jar: 5.5.0] в org.elasticsearch.index.mapper.MappedFieldType.checkCompatibility (MappedFieldType. java :astic [159) -5.5.0.jar: 5.5.0] в org.elasticsearch.index.mapper.FieldTypeLookup.checkCompatibility (FieldTypeLookup. java: 128) ~ [asticsearch-5.5.0.jar: 5.5.0] в org.elasticsearch .index.mapper. 398) ~ [asticsearch-5.5.0.jar: 5.5.0] в org.elasticsearch.index.mapper.MapperService.internalMerge (MapperService. java: 334) ~ [asticsearch-5.5.0.jar: 5.5.0 ] в org.elasticsearch.index.mapper.MapperService.merge (MapperService. java: 258) ~ [asticsearch-5.5.0.jar: 5.5.0] в org.elasticsearch.cluster.metadata.MetaDataCreateIndexService $ 1.execute ( MetaDataCreateIndexService. java: 371) ~ [asticsearch-5.5.0.jar: 5.5.0] в org.elasticsearch.cluster.ClusterStateUpdateTask.execute (ClusterStateUpdateTask. java: 45) ~ [asticsearch-5.5.0. ~ : 5.5.0] at org.elasticsearch.cluster.service.ClusterService.executeTasks (ClusterService. java: 633) ~ [elast icsearch-5.5.0.jar: 5.5.0] в org.elasticsearch.cluster.service.ClusterService.calculateTaskOutputs (ClusterService. java: 611) ~ [asticsearch-5.5.0.jar: 5.5.0] в орг. asticsearch.cluster.service.ClusterService.runTasks (ClusterService. java: 570) ~ [asticsearch-5.5.0.jar: 5.5.0] по адресу org.elasticsearch.cluster.service.ClusterService $ ClusterServiceTask *Batcher.run (Cluster 1087 *: 262) ~ [asticsearch-5.5.0.jar: 5.5.0] в org.elasticsearch.cluster.service.TaskBatcher.runIfNotProcessed (TaskBatcher. java: 150) ~ [asticsearch-5.5.0.jar: 5.5.0] at org.elasticsearch.cluster.service.TaskBatcher $ BatchedTask.run (TaskBatcher. java: 188) ~ [asticsearch-5.5.0.jar: 5.5.0]

Любые ответы будут Будьте очень заметны.

Спасибо ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...