Skip to content

NEW as a part of a state field path expression in JPQL. #3128

Closed
@wilx

Description

@wilx

We have updated from 2022.0.6 to 2023.0.2 and we are getting BadJpqlGrammarException on the following query:

SELECT j FROM AgentUpdateTask j WHERE j.creationTimestamp < :date AND (j.status=com.ca.apm.acc.configserver.core.domain.jobs.AgentUpdateTaskStatus.NEW OR      j.status=com.ca.apm.acc.configserver.core.domain.jobs.AgentUpdateTaskStatus.STARTED OR      j.status=com.ca.apm.acc.configserver.core.domain.jobs.AgentUpdateTaskStatus.QUEUED) ORDER BY j.id

It does not seem to like the j.creationTimestamp < :date. The same query worked fine before the update.

The tail of the exception trace:

Caused by: org.springframework.data.jpa.repository.query.BadJpqlGrammarException: Line 1:61 no viable alternative at input 'j.creationTimestamp<:date'; Bad JPQL grammar [SELECT j FROM AgentUpdateTask j WHERE j.creationTimestamp < :date AND (j.status=com.ca.apm.acc.configserver.core.domain.jobs.AgentUpdateTaskStatus.NEW OR      j.status=com.ca.apm.acc.configserver.core.domain.jobs.AgentUpdateTaskStatus.STARTED OR      j.status=com.ca.apm.acc.configserver.core.domain.jobs.AgentUpdateTaskStatus.QUEUED) ORDER BY j.id]
	at org.springframework.data.jpa.repository.query.BadJpqlGrammarErrorListener.syntaxError(BadJpqlGrammarErrorListener.java:39)
	at org.antlr.v4.runtime.ProxyErrorListener.syntaxError(ProxyErrorListener.java:41)
	at org.antlr.v4.runtime.Parser.notifyErrorListeners(Parser.java:543)
	at org.antlr.v4.runtime.DefaultErrorStrategy.reportNoViableAlternative(DefaultErrorStrategy.java:310)
	at org.antlr.v4.runtime.DefaultErrorStrategy.reportError(DefaultErrorStrategy.java:136)
	at org.springframework.data.jpa.repository.query.JpqlParser.comparison_expression(JpqlParser.java:6148)
	at org.springframework.data.jpa.repository.query.JpqlParser.simple_cond_expression(JpqlParser.java:4704)
	at org.springframework.data.jpa.repository.query.JpqlParser.conditional_primary(JpqlParser.java:4622)
	at org.springframework.data.jpa.repository.query.JpqlParser.conditional_factor(JpqlParser.java:4571)
	at org.springframework.data.jpa.repository.query.JpqlParser.conditional_term(JpqlParser.java:4490)
	at org.springframework.data.jpa.repository.query.JpqlParser.conditional_expression(JpqlParser.java:4406)
	at org.springframework.data.jpa.repository.query.JpqlParser.where_clause(JpqlParser.java:3103)
	at org.springframework.data.jpa.repository.query.JpqlParser.select_statement(JpqlParser.java:397)
	at org.springframework.data.jpa.repository.query.JpqlParser.ql_statement(JpqlParser.java:310)
	at org.springframework.data.jpa.repository.query.JpqlParser.start(JpqlParser.java:254)
	at org.springframework.data.jpa.repository.query.JpqlQueryParser.parseQuery(JpqlQueryParser.java:53)
	at org.springframework.data.jpa.repository.query.JpqlQueryParser.parse(JpqlQueryParser.java:64)
	at org.springframework.data.jpa.repository.query.JpaQueryParserSupport$ParseState.lambda$new$0(JpaQueryParserSupport.java:182)
	at org.springframework.data.util.Lazy.getNullable(Lazy.java:245)
	at org.springframework.data.util.Lazy.get(Lazy.java:114)
	at org.springframework.data.jpa.repository.query.JpaQueryParserSupport$ParseState.getContext(JpaQueryParserSupport.java:194)
	at org.springframework.data.jpa.repository.query.JpaQueryParserSupport.renderSortedQuery(JpaQueryParserSupport.java:54)
	... 101 common frames omitted

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions