Skip to content

Commit 680709b

Browse files
SweetWuXiaoMeiliubao68
authored andcommitted
HHH-19365 - Solve gaussdb function support
1 parent 9c9ef69 commit 680709b

File tree

3 files changed

+13
-39
lines changed

3 files changed

+13
-39
lines changed

hibernate-core/src/main/java/org/hibernate/dialect/GaussDBDialect.java

Lines changed: 12 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -565,37 +565,19 @@ public void initializeFunctionRegistry(FunctionContributions functionContributio
565565
functionFactory.array_gaussdb();
566566
functionFactory.arrayAggregate();
567567
functionFactory.arrayRemoveIndex_gaussdb();
568-
functionFactory.arrayLength_cardinality();
569568
functionFactory.arrayConcat_gaussdb();
570569
functionFactory.arrayPrepend_gaussdb();
571570
functionFactory.arrayAppend_gaussdb();
572571
functionFactory.arrayContains_gaussdb();
573572
functionFactory.arrayIntersects_gaussdb();
574-
functionFactory.arrayGet_bracket();
575573
functionFactory.arrayRemove_gaussdb();
576574
functionFactory.arraySlice_operator();
577575
functionFactory.arrayReplace_gaussdb();
578576
functionFactory.arraySet_gaussdb();
579-
functionFactory.arrayTrim_gaussdb();
580577
functionFactory.arrayFill_gaussdb();
581-
functionFactory.arrayPosition_gaussdb();
582578

583-
functionFactory.jsonValue_gaussdb(true);
584-
functionFactory.jsonQuery_gaussdb();
585-
functionFactory.jsonExists_gaussdb();
586-
functionFactory.jsonArray();
587579
functionFactory.jsonObject_gaussdb();
588-
functionFactory.jsonArrayAgg_gaussdb( true );
589580
functionFactory.jsonObjectAgg_gaussdb( true );
590-
functionFactory.jsonTable();
591-
592-
functionFactory.jsonSet_gaussdb();
593-
functionFactory.jsonRemove_gaussdb();
594-
functionFactory.jsonReplace_gaussdb();
595-
functionFactory.jsonInsert_gaussdb();
596-
functionFactory.jsonArray_gaussdb();
597-
functionFactory.jsonMergepatch_gaussdb();
598-
functionFactory.jsonArrayInsert_gauss();
599581

600582
functionFactory.xmlelement();
601583
functionFactory.xmlcomment();
@@ -605,7 +587,6 @@ public void initializeFunctionRegistry(FunctionContributions functionContributio
605587
functionFactory.xmlquery_gaussdb();
606588
functionFactory.xmlexists();
607589
functionFactory.xmlagg();
608-
functionFactory.xmltable( true );
609590

610591
functionFactory.makeDateTimeTimestamp();
611592
// Note that GaussDB doesn't support the OVER clause for ordered set-aggregate functions
@@ -633,8 +614,6 @@ public void initializeFunctionRegistry(FunctionContributions functionContributio
633614
functionContributions.getFunctionRegistry().registerAlternateKey( "truncate", "trunc" );
634615
functionFactory.dateTrunc();
635616

636-
functionFactory.unnest( null, "ordinality" );
637-
638617
functionFactory.hex( "encode(?1, 'hex')" );
639618
functionFactory.sha( "sha256(?1)" );
640619
functionFactory.md5( "decode(md5(?1), 'hex')" );
@@ -1057,6 +1036,11 @@ public IdentityColumnSupport getIdentityColumnSupport() {
10571036
return GaussDBIdentityColumnSupport.INSTANCE;
10581037
}
10591038

1039+
@Override
1040+
public boolean supportsExpectedLobUsagePattern() {
1041+
return false;
1042+
}
1043+
10601044
@Override
10611045
public NationalizationSupport getNationalizationSupport() {
10621046
return NationalizationSupport.IMPLICIT;
@@ -1127,7 +1111,7 @@ public String translateExtractField(TemporalUnit unit) {
11271111

11281112
@Override
11291113
public AggregateSupport getAggregateSupport() {
1130-
return GaussDBAggregateSupport.valueOf( this );
1114+
return null;
11311115
}
11321116

11331117
@Override
@@ -1327,7 +1311,12 @@ public boolean supportsLateral() {
13271311

13281312
@Override
13291313
public boolean supportsRecursiveCTE() {
1330-
return true;
1314+
return false;
1315+
}
1316+
1317+
@Override
1318+
public boolean supportsOrderByInSubquery() {
1319+
return false;
13311320
}
13321321

13331322
@Override

hibernate-core/src/main/java/org/hibernate/dialect/function/CommonFunctionFactory.java

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2768,7 +2768,6 @@ public void arrayContains_postgresql() {
27682768
* GaussDB array contains operator
27692769
*/
27702770
public void arrayContains_gaussdb() {
2771-
functionRegistry.register( "array_contains", new GaussDBArrayContainsOperatorFunction( false, typeConfiguration ) );
27722771
functionRegistry.register( "array_contains_nullable", new GaussDBArrayContainsOperatorFunction( true, typeConfiguration ) );
27732772
functionRegistry.register( "array_includes", new ArrayIncludesOperatorFunction( false, typeConfiguration ) );
27742773
functionRegistry.register( "array_includes_nullable", new ArrayIncludesOperatorFunction( true, typeConfiguration ) );
@@ -2859,13 +2858,6 @@ public void arrayPosition_postgresql() {
28592858
functionRegistry.register( "array_position", new PostgreSQLArrayPositionFunction( typeConfiguration ) );
28602859
}
28612860

2862-
/**
2863-
* GaussDB array_position() function
2864-
*/
2865-
public void arrayPosition_gaussdb() {
2866-
functionRegistry.register( "array_position", new GaussDBArrayPositionFunction( typeConfiguration ) );
2867-
}
2868-
28692861
/**
28702862
* H2 array_position() function
28712863
*/
@@ -3345,13 +3337,6 @@ public void arrayTrim_oracle() {
33453337
functionRegistry.register( "array_trim", new OracleArrayTrimFunction() );
33463338
}
33473339

3348-
/**
3349-
* GaussDB array_trim() emulation for versions before 14
3350-
*/
3351-
public void arrayTrim_gaussdb() {
3352-
functionRegistry.register( "array_trim", new GaussDBArrayTrimFunction() );
3353-
}
3354-
33553340
/**
33563341
* H2 array_fill() function
33573342
*/

hibernate-core/src/main/java/org/hibernate/dialect/identity/GaussDBIdentityColumnSupport.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ public class GaussDBIdentityColumnSupport extends IdentityColumnSupportImpl {
1616
public static final GaussDBIdentityColumnSupport INSTANCE = new GaussDBIdentityColumnSupport();
1717
@Override
1818
public boolean supportsIdentityColumns() {
19-
return true;
19+
return false;
2020
}
2121

2222
@Override

0 commit comments

Comments
 (0)