You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Sylvain Lebresne (JIRA)" <ji...@apache.org> on 2016/03/17 15:54:33 UTC

[jira] [Commented] (CASSANDRA-10649) Improve field-checking and error reporting in cassandra.yaml

    [ https://issues.apache.org/jira/browse/CASSANDRA-10649?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15199652#comment-15199652 ] 

Sylvain Lebresne commented on CASSANDRA-10649:
----------------------------------------------

Dealing with an empty file better is certainly a nice addition, though checking the line of the stack in the description on 2.1.11 shows that this is related to the the client encryption configuration, and indeed, if you have this in the yaml:
{noformat}
client_encryption_options:
    #    enabled: false
    #    # If enabled and optional is set to true encrypted and unencrypted connections are handled.
    #    optional: false
    #    keystore: conf/.keystore
    #    keystore_password: cassandra
{noformat}
that is, you declare {{client_encryption_options}} but everything else is commented, you do get a server side NPE with nothing returned to the client (it's in {{NativeTransportService}} on trunk but this still reproduce). We should try to fix that (either by complaining or by assuming {{enabled: false}} if it's not there).

Another nit that the comments above make me thing of regarding yaml error reporting is that when you add an unknown property, we exit with a stack. We, devs, reads stack trace as a 2nd nature so it's fine, but some of our user may not even be that familiar with JAVA and getting a full stack when the only problem is you've typoed a property in the yaml is scary and not super user friendly. In general, I think that if we a {{ConfigurationException}} at startup, we should probably just print the message of the error to stderr and exit, rather than letting the exception escape. Would be cool if we could use that ticket for that too.


> Improve field-checking and error reporting in cassandra.yaml
> ------------------------------------------------------------
>
>                 Key: CASSANDRA-10649
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-10649
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Configuration
>         Environment: Linux: Fedora-16 64 bit
>            Reporter: sandeep thakur
>            Assignee: Benjamin Lerer
>            Priority: Minor
>             Fix For: 2.2.6, 3.0.5, 3.5
>
>         Attachments: 10649-2.2.txt, 10649-3.0.txt, cassandra.yaml
>
>
> I am trying to setup cassandra single node cluster. i've downloaded below build:
> apache-cassandra-2.1.11-bin.tar.gz
> I've upgraded Java to 1.8 as well, as earlier it was throwing errors related to Java version.
> {code}
> [root@localhost cassandra]# java -version
> java version "1.8.0_60"
> Java(TM) SE Runtime Environment (build 1.8.0_60-b27)
> Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)
> {code}
> I've also verified the cassandra.yaml file from "http://www.yamllint.com/" as well. But while starting cassandra, I am getting vague exception as below:
> {code}
> INFO  15:52:11 Compacting [SSTableReader(path='/home/sandeep/bck_up/data/cassandra/data/system/local-7ad54392bcdd35a684174e047860b377/system-local-ka-18-Data.db'), SSTableReader(path='/home/sandeep/bck_up/data/cassandra/data/system/local-7ad54392bcdd35a684174e047860b377/system-local-ka-17-Data.db'), SSTableReader(path='/home/sandeep/bck_up/data/cassandra/data/system/local-7ad54392bcdd35a684174e047860b377/system-local-ka-20-Data.db'), SSTableReader(path='/home/sandeep/bck_up/data/cassandra/data/system/local-7ad54392bcdd35a684174e047860b377/system-local-ka-19-Data.db')]
> INFO  15:52:11 Node localhost/127.0.0.1 state jump to normal
> INFO  15:52:11 Netty using native Epoll event loop
> ERROR 15:52:11 Exception encountered during startup
> java.lang.NullPointerException: null
>         at org.apache.cassandra.transport.Server.run(Server.java:171) ~[apache-cassandra-2.1.11.jar:2.1.11]
>         at org.apache.cassandra.transport.Server.start(Server.java:117) ~[apache-cassandra-2.1.11.jar:2.1.11]
>         at org.apache.cassandra.service.CassandraDaemon.start(CassandraDaemon.java:492) [apache-cassandra-2.1.11.jar:2.1.11]
>         at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:575) [apache-cassandra-2.1.11.jar:2.1.11]
>         at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:651) [apache-cassandra-2.1.11.jar:2.1.11]
> java.lang.NullPointerException
>         at org.apache.cassandra.transport.Server.run(Server.java:171)
>         at org.apache.cassandra.transport.Server.start(Server.java:117)
>         at org.apache.cassandra.service.CassandraDaemon.start(CassandraDaemon.java:492)
>         at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:575)
>         at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:651)
> Exception encountered during startup: null
> INFO  15:52:11 Announcing shutdown
> INFO  15:52:11 Node localhost/127.0.0.1 state jump to normal
> INFO  15:52:11 Compacted 4 sstables to [/home/sandeep/bck_up/data/cassandra/data/system/local-7ad54392bcdd35a684174e047860b377/system-local-ka-21,].  11,427 bytes to 5,749 (~50% of original) in 199ms = 0.027551MB/s.  4 total partitions merged to 1.  Partition merge counts were {4:1, }
> INFO  15:52:13 Waiting for messaging service to quiesce
> INFO  15:52:13 MessagingService has terminated the accept() thread
> [root@localhost server]#
> {code}
> I've also posted the issue on stack overflow as well:
> http://stackoverflow.com/questions/33514745/cassandra-startup-failed-with-exception-exception-encountered-during-startup
> Request some one to assist on this issue.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)