[
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)