我在试着管理Cassandra。但是,我得到了一个错误:
[root@SudeepMangu bin]# ./cassandra -f
xss = -ea -javaagent:/home/sudeep/apache-cassandra-1.2.5-src/lib/jamm-0.2.5.jar-
XX:+UseThreadPriorities -XX:ThreadPriorityPolicy=42 -Xms930M -Xmx930M -Xmn200M -
XX:+HeapDumpOnOutOfMemoryError -Xss160k
Error occurred during initialization of VM Could not reserve enough space for object heap
我试过设置 JAVA_OPTS
到最大尺寸没有影响。
4条答案
按热度按时间vjhs03f71#
Cassandra没有足够的空间。你必须在里面改变一个值
cassandra-env.sh
文件打开cassandra-env.sh文件
在文档中您将看到
JVM_OPTS="$JVM_OPTS -Xss180k"
将块大小增加到250到300之间c9x0cxw02#
在cassandra-env.sh中将堆栈大小设置为256k。
u59ebvdq3#
可能是因为32位的java版本。通过以下步骤,我将java\u home变量更改为64位版本:
1) 按下两个“windows+r”键并输入:sysdm.cpl
2) 在“系统属性”中,我按下了“环境变量”按钮
3) 在文本区域“环境变量”中,我选择了javau home并点击了“编辑”
4.a)在“变量值”中,我取出了路径
(看起来是这样的:c:\ProgramFiles(x86)\java\jdk1.8.0\U 192)
4.b)我输入了64位路径
现在看起来是这样的:c:\program files\java\jdk1.8.0\u 73
就这样。然后我看着Cassandra的服务器在。。。
堆内存问题消失了!
fhg3lkii4#
看看我的答案,https://stackoverflow.com/a/14447535/92463 它描述了增加堆栈段大小。编辑
conf/cassandra-env.sh
配置脚本,在185行左右,并更改-Xss180k
更高的值。我建议从
-Xss200k
以20k的增量递增。我发现使用-Xss280k
在ubuntu服务器上运行成功。