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

Berenguer Blasi commented on CASSANDRA-12598:
---------------------------------------------

{{recoverFromMismatchedSet}} is marked indeed as not used anymore indeed 
[link|http://www.antlr3.org/api/Java/org/antlr/runtime/BaseRecognizer.html#recoverFromMismatchedSet(org.antlr.runtime.IntStream,%20org.antlr.runtime.RecognitionException,%20org.antlr.runtime.BitSet)]
 but doesn't mention any deprecation. Makes me wonder if it'll ever be used 
again...

This approach works for me too +1. Thanks [~blerer] for looking into this.

> BailErrorStragery alike for ANTLR grammar parsing
> -------------------------------------------------
>
>                 Key: CASSANDRA-12598
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-12598
>             Project: Cassandra
>          Issue Type: Bug
>          Components: CQL
>            Reporter: Berenguer Blasi
>            Assignee: Berenguer Blasi
>             Fix For: 3.x
>
>
> CQL parsing is missing a mechanism similar to 
> http://www.antlr.org/api/Java/org/antlr/v4/runtime/BailErrorStrategy.html
> This solves:
> - Stopping parsing instead of continuing when we've got already an error 
> which is wasteful.
> - Any skipped java code tied to 'recovered' missing tokens might later cause 
> java exceptions (think non-init variables, non incremented integers (div by 
> zero), etc.) which will bubble up directly and will hide properly formatted 
> error messages to the user with no indication on what went wrong at all. Just 
> a cryptic NPE i.e



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

Reply via email to