-
Bug
-
Resolution: Done
-
Major
-
4.6.0.Final
-
None
-
ModeShape 4.6.0 Final, ElasticSearch 2.2.1
ElasticSearch index provider cannot work under load because of http/socket limitations
Configuration:
EditableDocument indexProviders = editor.getOrCreateDocument(FieldName.INDEX_PROVIDERS);
indexProviders.getOrCreateDocument("local")
.set("directory", "/modeshape/index")
.set("classname", "org.modeshape.jcr.index.elasticsearch.EsIndexProvider")
.set("host", "localhost")
.set("port", "9200")
.set("cacheLRUEnable", true)
.set("mmapFileEnable", true)
.set("commitFileSyncDisable", true)
.set("transactionDisable", true)
.set("asyncWrite", true)
.set("cacheSize", 1000000);
Under some load (many session.save calls) the exception occurs:
org.modeshape.jcr.index.elasticsearch.EsIndexException: java.net.BindException: Address already in use: connect at org.modeshape.jcr.index.elasticsearch.EsIndex.commit(EsIndex.java:249) ...