This is an automated email from the ASF dual-hosted git repository.

borinquenkid pushed a commit to branch 8.0.x-hibernate7
in repository https://gitbox.apache.org/repos/asf/grails-core.git

commit 96e7eb86a89024b3c1d2a5e36edd45d17a347ace
Author: Walter Duque de Estrada <[email protected]>
AuthorDate: Fri Feb 27 08:33:07 2026 -0600

    Fix PMD issues in OrderByClauseBuilder
---
 grails-data-hibernate7/PMD.md                                  | 10 +++++-----
 .../hibernate/cfg/domainbinding/util/OrderByClauseBuilder.java |  6 ++++--
 2 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/grails-data-hibernate7/PMD.md b/grails-data-hibernate7/PMD.md
index 7b1341b9e4..706ea7301d 100644
--- a/grails-data-hibernate7/PMD.md
+++ b/grails-data-hibernate7/PMD.md
@@ -74,11 +74,11 @@ 
DataflowAnomalyAnalysis,org.grails.orm.hibernate.cfg.domainbinding.util.ForeignK
 
DataflowAnomalyAnalysis,org.grails.orm.hibernate.cfg.domainbinding.util.ForeignKeyColumnCountCalculator,38,YES
 
DataflowAnomalyAnalysis,org.grails.orm.hibernate.cfg.domainbinding.util.ForeignKeyColumnCountCalculator,41,YES
 
LoggerIsNotStaticFinal,org.grails.orm.hibernate.cfg.domainbinding.util.LogCascadeMapping,30,YES
-DataflowAnomalyAnalysis,org.grails.orm.hibernate.cfg.domainbinding.util.OrderByClauseBuilder,57,
-UseLocaleWithCaseConversions,org.grails.orm.hibernate.cfg.domainbinding.util.OrderByClauseBuilder,68,
-DataflowAnomalyAnalysis,org.grails.orm.hibernate.cfg.domainbinding.util.OrderByClauseBuilder,95,
-DataflowAnomalyAnalysis,org.grails.orm.hibernate.cfg.domainbinding.util.OrderByClauseBuilder,96,
-CompareObjectsWithEquals,org.grails.orm.hibernate.cfg.domainbinding.util.OrderByClauseBuilder,106,
+DataflowAnomalyAnalysis,org.grails.orm.hibernate.cfg.domainbinding.util.OrderByClauseBuilder,57,YES
+UseLocaleWithCaseConversions,org.grails.orm.hibernate.cfg.domainbinding.util.OrderByClauseBuilder,68,YES
+DataflowAnomalyAnalysis,org.grails.orm.hibernate.cfg.domainbinding.util.OrderByClauseBuilder,95,YES
+DataflowAnomalyAnalysis,org.grails.orm.hibernate.cfg.domainbinding.util.OrderByClauseBuilder,96,YES
+CompareObjectsWithEquals,org.grails.orm.hibernate.cfg.domainbinding.util.OrderByClauseBuilder,106,YES
 
DataflowAnomalyAnalysis,org.grails.orm.hibernate.cfg.domainbinding.util.TableForManyCalculator,56,
 
DataflowAnomalyAnalysis,org.grails.orm.hibernate.cfg.domainbinding.util.TableForManyCalculator,59,
 
DataflowAnomalyAnalysis,org.grails.orm.hibernate.cfg.domainbinding.util.TableForManyCalculator,61,
diff --git 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/util/OrderByClauseBuilder.java
 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/util/OrderByClauseBuilder.java
index 4001e52919..6303bc814b 100644
--- 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/util/OrderByClauseBuilder.java
+++ 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/util/OrderByClauseBuilder.java
@@ -20,6 +20,7 @@ package org.grails.orm.hibernate.cfg.domainbinding.util;
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Locale;
 import java.util.stream.Collectors;
 import java.util.stream.StreamSupport;
 import org.grails.datastore.mapping.model.DatastoreConfigurationException;
@@ -30,6 +31,7 @@ import org.hibernate.mapping.Selectable;
 import org.hibernate.mapping.SingleTableSubclass;
 
 /** Utility class to build SQL order by clauses from HQL-style order by 
strings. */
+@SuppressWarnings("PMD.DataflowAnomalyAnalysis")
 public class OrderByClauseBuilder {
 
   public String buildOrderByClause(
@@ -65,7 +67,7 @@ public class OrderByClauseBuilder {
           throw new DatastoreConfigurationException(
               "Error while parsing sort clause: " + hqlOrderBy + " (" + role + 
")");
         }
-        currentEntry.direction = token.toLowerCase();
+        currentEntry.direction = token.toLowerCase(Locale.ROOT);
       } else {
         if (currentEntry != null && currentEntry.direction == null) {
           currentEntry.direction = "asc";
@@ -103,7 +105,7 @@ public class OrderByClauseBuilder {
   private String getTablePrefix(Property p, PersistentClass associatedClass) {
     PersistentClass pc = p.getPersistentClass();
     if (pc == null
-        || pc == associatedClass
+        || pc.equals(associatedClass)
         || (associatedClass instanceof SingleTableSubclass
             && 
pc.getMappedClass().isAssignableFrom(associatedClass.getMappedClass()))) {
       return "";

Reply via email to