elasticsearch,Ruby On Rails,Ruby,Ruby On Rails 3,elasticsearch" /> elasticsearch,Ruby On Rails,Ruby,Ruby On Rails 3,elasticsearch" />

Ruby on rails Rails弹性搜索错误“;指定的堆栈大小太小,请指定至少160k错误:无法创建Java虚拟机&引用;

Ruby on rails Rails弹性搜索错误“;指定的堆栈大小太小,请指定至少160k错误:无法创建Java虚拟机&引用;,ruby-on-rails,ruby,ruby-on-rails-3,elasticsearch,Ruby On Rails,Ruby,Ruby On Rails 3,elasticsearch,我正在使用Elasticsearch和Tire进行Rails3项目。安装弹性搜索后,当我尝试运行它时,会出现以下错误: The stack size specified is too small, Specify at least 160k Error: Could not create the Java Virtual Machine. Error: A fatal exception has occurred. Program will exit. 我有Java7,我的操作系统是Ubunt

我正在使用Elasticsearch和Tire进行Rails3项目。安装弹性搜索后,当我尝试运行它时,会出现以下错误:

The stack size specified is too small, Specify at least 160k
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
我有Java7,我的操作系统是Ubuntu12.04。如何解决此错误


我需要安装Java 6吗?如果需要,我该如何安装?

旧版本的elasticsearch(0.19.0)也有同样的问题。 安装了0.19.8,它又能工作了。 你可以在这里找到它:

祝你好运


事实上,java 1.7和早期版本的es似乎存在问题。

或者,在控制台上启动elasticsearch时,您可以发送堆栈大小选项并将其设置为大于160k的值

sudo ./bin/elasticsearch -Xss194k

将堆栈大小增加到大于160k的量

在第34行编辑文件
elasticsearch-0.xx.x/bin/elasticsearch.in.sh
,并将-Xss增加到更大的值,例如
-Xss256k

# reduce the per-thread stack size
JAVA_OPTS="$JAVA_OPTS -Xss256k"