Elasticsearch 1.4.3(1.4.x 대도 다 그런 것 같다..) 부터는 아래 설정을 사용할 수 없다. (데이터가 이미 1.4.3 이하라면 내부적으로 변경이 되지만, 처음부터 아래 설정을 사용할 때는 에러가 발생한다.)


index.fielddata.cache: soft

  


자세한 내용은 아래를 참조한다. 

https://github.com/elastic/elasticsearch/blob/1.4/src/main/java/org/elasticsearch/index/fielddata/IndexFieldDataService.java




만약 사용하게 되면, 다음과 같은 에러가 발생한다. 

ElasticsearchIllegalArgumentException[cache type not supported [soft] for field [type]]; 



=> 아래와 같이 수정해야 한다. 


index.fielddata.cache: node




--- Stack Trace 

Parse Failure [Failed to parse source [{"query":{"filtered":{"query":{"match_all":{}}}},"aggregations":{"aggs":{"terms":{"field":"type","size":500}}}}]]]; nested: ElasticsearchIllegalArgumentException[cache type not supported [soft] for field [type]]; }
     at org.elasticsearch.action.search.type.TransportSearchTypeAction$BaseAsyncAction.onFirstPhaseResult(TransportSearchTypeAction.java:233)
     at org.elasticsearch.action.search.type.TransportSearchTypeAction$BaseAsyncAction$1.onFailure(TransportSearchTypeAction.java:179)
     at org.elasticsearch.search.action.SearchServiceTransportAction$6.handleException(SearchServiceTransportAction.java:249)
     at org.elasticsearch.transport.netty.MessageChannelHandler.handleException(MessageChannelHandler.java:185)
     at org.elasticsearch.transport.netty.MessageChannelHandler.handlerResponseError(MessageChannelHandler.java:175)
     at org.elasticsearch.transport.netty.MessageChannelHandler.messageReceived(MessageChannelHandler.java:125)
     at org.elasticsearch.common.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:70)
     at org.elasticsearch.common.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564)
     at org.elasticsearch.common.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:791)
     at org.elasticsearch.common.netty.channel.Channels.fireMessageReceived(Channels.java:296)
     at org.elasticsearch.common.netty.handler.codec.frame.FrameDecoder.unfoldAndFireMessageReceived(FrameDecoder.java:462)
     at org.elasticsearch.common.netty.handler.codec.frame.FrameDecoder.callDecode(FrameDecoder.java:443)
     at org.elasticsearch.common.netty.handler.codec.frame.FrameDecoder.messageReceived(FrameDecoder.java:310)
     at org.elasticsearch.common.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:70)
     at org.elasticsearch.common.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564)
     at org.elasticsearch.common.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:559)
     at org.elasticsearch.common.netty.channel.Channels.fireMessageReceived(Channels.java:268)
     at org.elasticsearch.common.netty.channel.Channels.fireMessageReceived(Channels.java:255)
     at org.elasticsearch.common.netty.channel.socket.nio.NioWorker.read(NioWorker.java:88)
     at org.elasticsearch.common.netty.channel.socket.nio.AbstractNioWorker.process(AbstractNioWorker.java:108)
     at org.elasticsearch.common.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:318)
     at org.elasticsearch.common.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:89)
     at org.elasticsearch.common.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178)
     at org.elasticsearch.common.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108)
     at org.elasticsearch.common.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42)
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
     at java.lang.Thread.run(Thread.java:745)

Posted by '김용환'
,