0

I am trying to implement titan graph database on cassandra for one of my applications. As per documentation, I have downloaded and extracted titan-cassandra-0.3.2 and when it trying to run titan.sh with titan-server-rexster.xml andtitan-server-cassandra.properties as arguments I am facing below error:

In below stack trace it says "Cannot locate /opt/isv/app/pkgs/titan-cassandra-0.3.2/config/cassandra.yaml" but I do have that file in that location. Could anyone please help?

WARN  org.apache.cassandra.utils.CLibrary  - Unable to lock JVM memory (ENOMEM). This can result in part of the JVM being swapped out, especially with mmapped I/O enabled. Increase RLIMIT_MEMLOCK or run Cassandra as root.
72   [pool-1-thread-1] ERROR org.apache.cassandra.config.DatabaseDescriptor  - Fatal configuration error
org.apache.cassandra.exceptions.ConfigurationException: Cannot locate /opt/isv/app/pkgs/titan-cassandra-0.3.2/config/cassandra.yaml
        at org.apache.cassandra.config.DatabaseDescriptor.getStorageConfigURL(DatabaseDescriptor.java:113)
        at org.apache.cassandra.config.DatabaseDescriptor.loadYaml(DatabaseDescriptor.java:130)
        at org.apache.cassandra.config.DatabaseDescriptor.<clinit>(DatabaseDescriptor.java:122)
        at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:150)
        at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:366)
        at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:409)
        at com.thinkaurelius.titan.diskstorage.cassandra.embedded.CassandraDaemonWrapper$CassandraStarter.run(CassandraDaemonWrapper.java:64)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
        at java.util.concurrent.FutureTask.run(FutureTask.java:138)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:619)
Cannot locate /opt/isv/app/pkgs/titan-cassandra-0.3.2/config/cassandra.yaml
Fatal configuration error; unable to start server.  See log for stacktrace.
AdrieanKhisbe
  • 3,899
  • 8
  • 37
  • 45
user2611221
  • 99
  • 3
  • 11
  • Is your cassandra.yaml readable by the user you're running the server as? – jbellis Oct 08 '13 at 03:16
  • Yes it is readable. However, I was running titan server from bin folder. I have specified argument file paths correctly though. I tried starting from outside bin folder and Titan server was successfully restarted. Not sure why there Titan was throwing an error related to JVM memory. Thanks for the reply!! – user2611221 Oct 08 '13 at 19:00
  • It's not clear to me if there is still a problem here or not. Is everything working as expected now? – stephen mallette Oct 10 '13 at 18:53

1 Answers1

0

A complete walkthrough for ENOMEM is here

http://docs.datastax.com/en/archived/cassandra/2.0/cassandra/troubleshooting/trblshootInsufficientResources_r.html also do not forget

Basically edit /etc/security/limits.conf file appending the following

memlock unlimited
nofile 100000
nproc 32768
as unlimited

and then run sysctl -p

Kuzeko
  • 1,545
  • 16
  • 39