Uploaded image for project: 'Apache Cassandra'
  1. Apache Cassandra
  2. CASSANDRA-909

unclosed brackets and string literals cause cli exceptions

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Low
    • Resolution: Duplicate
    • None
    • None
    • Low

    Description

      As of r925353 (but also in 0.5.1) it seems that the AST is not complete

      For example in 0.5.1
      cassandra> get Messages_test.Messages['twitter.com:10731838401
      line 1:51 mismatched character '<EOF>' expecting '''
      line 0:-1 mismatched input '<EOF>' expecting StringLiteral
      Exception in thread "main" java.lang.AssertionError
      at org.apache.cassandra.cli.CliClient.executeGet(CliClient.java:279)
      at org.apache.cassandra.cli.CliClient.executeCLIStmt(CliClient.java:57)
      at org.apache.cassandra.cli.CliMain.processCLIStmt(CliMain.java:131)
      at org.apache.cassandra.cli.CliMain.main(CliMain.java:172)

      A little debug added in trunk shows that ANTLR is emitting "mismatched token" nodes:

      cassandra> get Messages_test.Conversations[f
      line 1:32 mismatched input 'f' expecting StringLiteral
      (NODE_THRIFT_GET <mismatched token: [@-1,0:0='<no text>',<-1>,0:-1], resync=Messages_test.Conversations[f>)
      0
      Exception in thread "main" java.lang.AssertionError
      at org.apache.cassandra.cli.CliClient.executeGet(CliClient.java:312)
      at org.apache.cassandra.cli.CliClient.executeCLIStmt(CliClient.java:60)
      at org.apache.cassandra.cli.CliMain.processCLIStmt(CliMain.java:213)
      at org.apache.cassandra.cli.CliMain.main(CliMain.java:270)

      thus the assertion is correct in complaining that it did not get a NODE_COLUMN_ACCESS but it should probably be handled instead of crashing.

      but sadly, I can't really understand where this happens, as I'm no expert of antlr, but I wonder if it could be just instructed to fail fast without reaching the ast walking?

      Attachments

        Activity

          People

            Unassigned Unassigned
            riffraff gabriele renzi
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: