Skip to content

Parser hangs on more complicated queries #1103

Description

@serge-rider

It is similar to the #1013

Our users found another queries which cause JSQLParser to hang (dbeaver/dbeaver#10680)
For example:

SELECT
ROUND(ROUND(ROUND(ROUND(ROUND(ROUND(ROUND(ROUND(
ROUND(ROUND(ROUND(ROUND(ROUND(ROUND(ROUND(ROUND(
ROUND(ROUND(ROUND(ROUND(ROUND(ROUND(ROUND(ROUND(
ROUND(ROUND(ROUND(ROUND(ROUND(ROUND(ROUND(ROUND(0
,0),0),0),0),0),0),0),0)
,0),0),0),0),0),0),0),0)
,0),0),0),0),0),0),0),0)
,0),0),0),0),0),0),0),0)

It cycles infinitely somewhere around

	  at net.sf.jsqlparser.parser.CCJSqlParser.jj_3R_RelObjectNameWithoutValue_1322_5_415(CCJSqlParser.java:19368)
	  at net.sf.jsqlparser.parser.CCJSqlParser.jj_3R_RelObjectName_1350_6_295(CCJSqlParser.java:19173)
	  at net.sf.jsqlparser.parser.CCJSqlParser.jj_3R_RelObjectName_1350_5_133(CCJSqlParser.java:19181)
	  at net.sf.jsqlparser.parser.CCJSqlParser.jj_3R_RelObjectNameExt_1380_7_308(CCJSqlParser.java:18983)
	  at net.sf.jsqlparser.parser.CCJSqlParser.jj_3R_RelObjectNameExt_1380_5_147(CCJSqlParser.java:19013)
	  at net.sf.jsqlparser.parser.CCJSqlParser.jj_3R_RelObjectNameList_1294_5_226(CCJSqlParser.java:19715)
	  at net.sf.jsqlparser.parser.CCJSqlParser.jj_3R_InternalFunction_3754_5_437(CCJSqlParser.java:22938)
	  at net.sf.jsqlparser.parser.CCJSqlParser.jj_3R_Function_3731_11_354(CCJSqlParser.java:22969)
	  at net.sf.jsqlparser.parser.CCJSqlParser.jj_3R_Function_3729_5_171(CCJSqlParser.java:22999)
	  at net.sf.jsqlparser.parser.CCJSqlParser.jj_3R_PrimaryExpression_3244_11_270(CCJSqlParser.java:25193)
	  at net.sf.jsqlparser.parser.CCJSqlParser.jj_3R_PrimaryExpression_3217_5_117(CCJSqlParser.java:25432)
	  at net.sf.jsqlparser.parser.CCJSqlParser.jj_3R_BitwiseXor_3187_5_184(CCJSqlParser.java:25612)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions