Can't start Cassandra after OS patch up

天大地大妈咪最大 提交于 2019-11-28 08:26:21

This seems to relate to an upgrade to the JDK to 8u161 which was released 2 days ago.

A ticket has been opened on the Cassandra Jira

There is no published work-around that I can find. You might have to go back to an earlier version of the JDK or wait for Cassandra 3.11.2 which fixes the issue.

Edit: Its worth pointing out that this has now been resolved in 3.11.2 which has been released, so you can simply upgrade to this version to resolve the problem.

To get Cassandra running I had to install JDK 8u152. Using brew cask install java8 it wasn't possible. I tried using an old version of the cassandra.rb formula but that just got:

Error: Download failed on Cask 'java8' with message: Download failed: http://download.oracle.com/otn-pub/java/jdk/8u152-b16/aa0333dd3019491ca4f6ddbe78cdb6d0/jdk-8u152-macosx-x64.dmg

I had to go here and log in to be able to download the DMG: http://www.oracle.com/technetwork/java/javase/downloads/java-archive-javase8-2177648.html

Protip: To still be able to install java8 using homebrew I downloaded the dmg myself, and started a server in the downloads directory:

cd ~/Downloads
php -S 0.0.0.0:3333

And changed the download URL (line 6) in the formula to:

url "http://0.0.0.0:3333/jdk-8u152-macosx-x64.dmg",

Then was able to run:

brew cask install java8

Now Cassandra is running again.

James Jithin

You may download the source and add the changed method, compile and add the modified class to the apache-cassandra.jar. You can do the following:

  1. Download org.tar containing the only class to be replaced.
  2. Untar the file using tar -xvf org.tar and you should get org directory
  3. Copy the apache-cassandra jar file. e.g. cp /usr/share/cassandra/apache-cassandra-3.11.1.jar .
  4. Make a backup of the jar before you update. cp apache-cassandra-3.11.1.jar apache-cassandra-3.11.1.jar_backup.
  5. Expecting the current directory contains the following files: apache-cassandra-3.11.1.jar apache-cassandra-3.11.1.jar_backup org org.tar
  6. Execute the following command to update the jar:

    jar uf apache-cassandra-3.11.1.jar org

  7. Replace the file to installation location:

    mv apache-cassandra-3.11.1.jar /usr/share/cassandra

  8. Restart cassandra service

Revert Cask formula to 2017 version.

wget https://github.com/caskroom/homebrew-versions/blob/a98da98a7e4d87e9b614b3aa25af9c6c21a753c6/Casks/java8.rb -O /usr/local/Homebrew/Library/Taps/caskroom/homebrew-cask/Casks/java8.rb

change line 6 URL as suggested url "http://127.0.0.1:3333/jdk-8u152-macosx-x64.dmg",

brew cask reinstall java8

should work.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!