Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HHH-19260 Move supportsXXX methods from the SqlAstTranslator and its base impl to the Dialect class #9870

Merged
merged 26 commits into from
Mar 20, 2025
Merged
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
8271bd1
HHH-19260 - Move supportsFilterClause() from SqlAstTranslator to Dialect
jrenaat Mar 17, 2025
2008837
HHH-19260 - Move supportsRowConstructor() from AbstractSqlAstTranslat…
jrenaat Mar 17, 2025
2719111
HHH-19260 - Move supportsArrayConstructor() from AbstractSqlAstTransl…
jrenaat Mar 17, 2025
d233cac
HHH-19260 - Remove supportsDistinctFromPredicate() from AbstractSqlAs…
jrenaat Mar 17, 2025
6727c4f
HHH-19260 - Exclude tests for MySQL dialects
jrenaat Mar 18, 2025
60bcb3b
HHH-19260 - Move supportsDuplicateSelectItemsInQueryGroup() from Abst…
jrenaat Mar 17, 2025
cc92585
HHH-19260 - Move supportsIntersect() from AbstractSqlAstTranslator to…
jrenaat Mar 17, 2025
d4f9ca6
HHH-19260 - Move supportsJoinInMutationStatementSubquery() from Abstr…
jrenaat Mar 17, 2025
51a9126
HHH-19260 - Move supportsJoinsInDelete() from AbstractSqlAstTranslato…
jrenaat Mar 17, 2025
39d7edf
HHH-19260 - Move supportsNestedSubqueryCorrelation() from AbstractSql…
jrenaat Mar 17, 2025
e5dceda
HHH-19260 - Remove supportsNullPrecedence() from AbstractSqlAstTransl…
jrenaat Mar 17, 2025
e058423
HHH-19260 - Remove supportsQuantifiedPredicates() from AbstractSqlAst…
jrenaat Mar 17, 2025
cc9e544
HHH-19260 - Move supportsRecursiveCycleClause() from AbstractSqlAstTr…
jrenaat Mar 17, 2025
2f34e98
HHH-19260 - Move supportsRecursiveCycleUsingClause() from AbstractSql…
jrenaat Mar 17, 2025
9d0efee
HHH-19260 - Move supportsRecursiveSearchClause() to Dialect
jrenaat Mar 17, 2025
add318c
HHH-19260 - Move supportsSimpleQueryGrouping() to Dialect
jrenaat Mar 17, 2025
37cd706
HHH-19260 - Move supportsRowValueConstructorSyntax() to Dialect
jrenaat Mar 19, 2025
7baa92d
HHH-19260 - Remove unsused supportsRowValueConstructorSyntaxInSet() m…
jrenaat Mar 19, 2025
67b2c57
HHH-19260 - Move supportsRowValueConstructorGtLtSyntax() to Dialect
jrenaat Mar 19, 2025
ff546d4
HHH-19260 - Move supportsRowValueConstructorDistinctFromSyntax() to D…
jrenaat Mar 19, 2025
028f215
HHH-19260 - Move supportsWithClause() to Dialect
jrenaat Mar 19, 2025
e1b6d0d
HHH-19260 - Move supportsWithClauseInSubquery() to Dialect
jrenaat Mar 19, 2025
0f195ef
HHH-19260 - Move supportsNestedWithClause() to Dialect
jrenaat Mar 19, 2025
7a47386
HHH-19260 - Move supportsRowValueConstructorSyntaxInQuantifiedPredica…
jrenaat Mar 19, 2025
a6c395d
HHH-19260 - Move supportsRowValueConstructorSyntaxInInList() to Dialect
jrenaat Mar 19, 2025
cb2a8ff
HHH-19260 - Move supportsRowValueConstructorSyntaxInInSubQuery() to D…
jrenaat Mar 19, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -718,4 +718,24 @@ public String getFromDualForSelectOnly() {
return " from " + getDual();
}

@Override
public boolean supportsJoinsInDelete() {
return true;
}

@Override
public boolean supportsSimpleQueryGrouping() {
return false;
}

@Override
public boolean supportsWithClauseInSubquery() {
return false;
}

@Override
public boolean supportsRowValueConstructorSyntaxInQuantifiedPredicates() {
return false;
}

}
Original file line number Diff line number Diff line change
@@ -223,24 +223,4 @@ protected boolean needsRecursiveKeywordInWithClause() {
return false;
}

@Override
protected boolean supportsRowValueConstructorSyntaxInQuantifiedPredicates() {
return false;
}

@Override
protected boolean supportsWithClauseInSubquery() {
return false;
}

@Override
protected boolean supportsJoinsInDelete() {
return true;
}

@Override
protected boolean supportsSimpleQueryGrouping() {
return false;
}

}
Original file line number Diff line number Diff line change
@@ -527,4 +527,19 @@ public String getFromDualForSelectOnly() {
return " from " + getDual();
}

@Override
public boolean supportsRowValueConstructorSyntax() {
return false;
}

@Override
public boolean supportsRowValueConstructorSyntaxInQuantifiedPredicates() {
return false;
}

@Override
public boolean supportsRowValueConstructorSyntaxInInList() {
return false;
}

}
Original file line number Diff line number Diff line change
@@ -62,19 +62,4 @@ else if ( expression instanceof Summarization ) {
expression.accept( this );
}
}

@Override
protected boolean supportsRowValueConstructorSyntax() {
return false;
}

@Override
protected boolean supportsRowValueConstructorSyntaxInInList() {
return false;
}

@Override
protected boolean supportsRowValueConstructorSyntaxInQuantifiedPredicates() {
return false;
}
}
Original file line number Diff line number Diff line change
@@ -435,4 +435,19 @@ public void appendDatetimeFormat(SqlAppender appender, String format) {
appender.appendSql( OracleDialect.datetimeFormat( format, false, false ).result() );
}

@Override
public boolean supportsRowValueConstructorSyntax() {
return false;
}

@Override
public boolean supportsRowValueConstructorSyntaxInQuantifiedPredicates() {
return false;
}

@Override
public boolean supportsRowValueConstructorSyntaxInInList() {
return false;
}

}
Original file line number Diff line number Diff line change
@@ -105,19 +105,4 @@ else if ( expression instanceof Summarization ) {
expression.accept( this );
}
}

@Override
protected boolean supportsRowValueConstructorSyntax() {
return false;
}

@Override
protected boolean supportsRowValueConstructorSyntaxInInList() {
return false;
}

@Override
protected boolean supportsRowValueConstructorSyntaxInQuantifiedPredicates() {
return false;
}
}
Original file line number Diff line number Diff line change
@@ -1248,4 +1248,20 @@ public DmlTargetColumnQualifierSupport getDmlTargetColumnQualifierSupport() {
public boolean supportsFromClauseInUpdate() {
return true;
}

@Override
public boolean supportsRowConstructor() {
return true;
}

@Override
public boolean supportsArrayConstructor() {
return true;
}

@Override
public boolean supportsRowValueConstructorSyntaxInQuantifiedPredicates() {
return false;
}

}
Original file line number Diff line number Diff line change
@@ -129,16 +129,6 @@ protected void renderMaterializationHint(CteMaterialization materialization) {
}
}

@Override
protected boolean supportsRowConstructor() {
return true;
}

@Override
protected boolean supportsArrayConstructor() {
return true;
}

@Override
protected String getForShare(int timeoutMillis) {
return " for share";
@@ -244,11 +234,6 @@ public void visitLikePredicate(LikePredicate likePredicate) {
}
}

@Override
protected boolean supportsRowValueConstructorSyntaxInQuantifiedPredicates() {
return false;
}

@Override
public void visitInArrayPredicate(InArrayPredicate inArrayPredicate) {
inArrayPredicate.getTestExpression().accept( this );
Original file line number Diff line number Diff line change
@@ -1306,4 +1306,25 @@ public String getDual() {
public String getFromDualForSelectOnly() {
return " from " + getDual();
}

@Override
public boolean supportsRowValueConstructorSyntax() {
return false;
}

@Override
public boolean supportsWithClauseInSubquery() {
return false;
}

@Override
public boolean supportsRowValueConstructorSyntaxInQuantifiedPredicates() {
return false;
}

@Override
public boolean supportsRowValueConstructorSyntaxInInList() {
return false;
}

}
Original file line number Diff line number Diff line change
@@ -74,11 +74,6 @@ protected boolean needsRecursiveKeywordInWithClause() {
return false;
}

@Override
protected boolean supportsWithClauseInSubquery() {
return false;
}

@Override
protected void renderTableReferenceJoins(TableGroup tableGroup, int swappedJoinIndex, boolean forceLeftJoin) {
// When we are in a recursive CTE, we can't render joins on DB2...
@@ -623,21 +618,6 @@ else if ( expression instanceof Summarization ) {
}
}

@Override
protected boolean supportsRowValueConstructorSyntax() {
return false;
}

@Override
protected boolean supportsRowValueConstructorSyntaxInInList() {
return false;
}

@Override
protected boolean supportsRowValueConstructorSyntaxInQuantifiedPredicates() {
return false;
}

@Override
protected void visitReturningColumns(List<ColumnReference> returningColumns) {
// For DB2 we use #renderReturningClause to render a wrapper around the DML statement
Original file line number Diff line number Diff line change
@@ -1072,4 +1072,29 @@ public String getFromDualForSelectOnly() {
return " from " + getDual() + " dual";
}

@Override
public boolean supportsJoinInMutationStatementSubquery() {
return false;
}

@Override
public boolean supportsRowValueConstructorSyntax() {
return false;
}

@Override
public boolean supportsWithClause() {
return false;
}

@Override
public boolean supportsRowValueConstructorSyntaxInQuantifiedPredicates() {
return false;
}

@Override
public boolean supportsRowValueConstructorSyntaxInInList() {
return false;
}

}
Original file line number Diff line number Diff line change
@@ -1077,4 +1077,30 @@ public String getDual() {
public String getFromDualForSelectOnly() {
return " from " + getDual() + " dual";
}

@Override
public boolean supportsJoinInMutationStatementSubquery() {
return false;
}

@Override
public boolean supportsRowValueConstructorSyntax() {
return false;
}

@Override
public boolean supportsWithClause() {
return false;
}

@Override
public boolean supportsRowValueConstructorSyntaxInQuantifiedPredicates() {
return false;
}

@Override
public boolean supportsRowValueConstructorSyntaxInInList() {
return false;
}

}
Original file line number Diff line number Diff line change
@@ -105,11 +105,6 @@ protected void renderDmlTargetTableExpression(NamedTableReference tableReference
}
}

@Override
protected boolean supportsWithClause() {
return false;
}

@Override
protected void renderExpressionAsClauseItem(Expression expression) {
expression.accept( this );
@@ -283,21 +278,6 @@ public void visitInListPredicate(InListPredicate inListPredicate) {
}
}

@Override
protected boolean supportsRowValueConstructorSyntax() {
return false;
}

@Override
protected boolean supportsRowValueConstructorSyntaxInInList() {
return false;
}

@Override
protected boolean supportsRowValueConstructorSyntaxInQuantifiedPredicates() {
return false;
}

@Override
protected boolean needsRowsToSkip() {
return !supportsOffsetFetchClause();
@@ -317,11 +297,6 @@ private boolean supportsOffsetFetchClause() {
return getDialect().getVersion().isSameOrAfter( 10, 5 );
}

@Override
protected boolean supportsJoinInMutationStatementSubquery() {
return false;
}

@Override
protected void visitArithmeticOperand(Expression expression) {
render( expression, SqlAstNodeRenderingMode.NO_PLAIN_PARAMETER );
Original file line number Diff line number Diff line change
@@ -105,11 +105,6 @@ protected void renderDmlTargetTableExpression(NamedTableReference tableReference
}
}

@Override
protected boolean supportsWithClause() {
return false;
}

@Override
protected void renderExpressionAsClauseItem(Expression expression) {
expression.accept( this );
@@ -283,21 +278,6 @@ public void visitInListPredicate(InListPredicate inListPredicate) {
}
}

@Override
protected boolean supportsRowValueConstructorSyntax() {
return false;
}

@Override
protected boolean supportsRowValueConstructorSyntaxInInList() {
return false;
}

@Override
protected boolean supportsRowValueConstructorSyntaxInQuantifiedPredicates() {
return false;
}

@Override
protected boolean needsRowsToSkip() {
return !supportsOffsetFetchClause();
@@ -317,11 +297,6 @@ private boolean supportsOffsetFetchClause() {
return true;
}

@Override
protected boolean supportsJoinInMutationStatementSubquery() {
return false;
}

@Override
protected void visitArithmeticOperand(Expression expression) {
render( expression, SqlAstNodeRenderingMode.NO_PLAIN_PARAMETER );
Loading