Ошибка при запуске 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 на максимальный размер, но безрезультатно.


person Mahesh Muni    schedule 30.05.2013    source источник


Ответы (4)


См. Мой ответ здесь, https://stackoverflow.com/a/14447535/92463, в котором описывается увеличение размера сегмента стека. Отредактируйте сценарий конфигурации conf/cassandra-env.sh примерно в строке 185 и измените -Xss180k на более высокое значение.

if [ "`uname`" = "Linux" ] ; then
  # reduce the per-thread stack size to minimize the impact of Thrift
  # thread-per-client.  (Best practice is for client connections to
  # be pooled anyway.) Only do so on Linux where it is known to be
  # supported.
  # u34 and greater need 180k
  JVM_OPTS="$JVM_OPTS -Xss180k"
fi
echo "xss = $JVM_OPTS"

Я предлагаю проверять значения, начиная с -Xss200k и увеличиваясь с шагом 20k. Я обнаружил, что использование -Xss280k на серверах Ubuntu работает успешно.

person grkvlt    schedule 09.07.2013

Вероятно, это из-за 32-битной версии java. Я изменил свою переменную JAVA_HOME на 64-битную версию, выполнив следующие действия:
1) Нажал обе клавиши «Windows + R» и ввел: sysdm.cpl
2) В «Свойствах системы» я нажал ' Кнопка «Переменные среды»
3) В текстовой области «Переменные среды» я выбрал JAVA_HOME и щелкнул «Изменить»
4.a) В «Значение переменной» вытащил путь
(он выглядит так: C: \ Program Files (x86) \ Java \ jdk1.8.0_192)
4.b) Вместо этого я ввел 64-битный путь
Теперь это выглядит так: C: \ Program Files \ Java \ jdk1.8.0_73
Вот и все. Затем я просто наблюдал, как проходят скрипты сервера cassandra ...

И проблема с кучей памяти исчезла!

person Paulo Costa    schedule 12.06.2019
comment
Чтобы избежать риска гниения ссылок, возьмите соответствующую информацию из источника, на который вы ссылаетесь, и включите ее в свой ответ. - person chb; 12.06.2019

Не хватает места для кассандры. Вы должны изменить значение внутри cassandra-env.sh файла

откройте файл cassandra-env.sh

sudo vi cassandra-env.sh

В документе вы увидите JVM_OPTS="$JVM_OPTS -Xss180k"

Увеличьте размер блока с 250 до 300

person ravi ranjan    schedule 11.06.2014

Установите размер стека 256 КБ в cassandra-env.sh.

person akshat thakar    schedule 24.09.2014