You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by fm...@apache.org on 2018/12/10 13:37:33 UTC

[syncope] branch 2_0_X updated: [SYNCOPE-1412] changes in order to avoid null_attr views

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

fmartelli pushed a commit to branch 2_0_X
in repository https://gitbox.apache.org/repos/asf/syncope.git


The following commit(s) were added to refs/heads/2_0_X by this push:
     new 4253fe0  [SYNCOPE-1412] changes in order to avoid null_attr views
4253fe0 is described below

commit 4253fe0749cb7f15f398d0f04bb5a7f6a6d09425
Author: fmartelli <fa...@gmail.com>
AuthorDate: Mon Dec 10 14:37:22 2018 +0100

    [SYNCOPE-1412] changes in order to avoid null_attr views
---
 .../core/persistence/jpa/dao/JPAAnySearchDAO.java        | 16 ++++++++++------
 1 file changed, 10 insertions(+), 6 deletions(-)

diff --git a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPAAnySearchDAO.java b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPAAnySearchDAO.java
index 90e5fd0..725d6b7 100644
--- a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPAAnySearchDAO.java
+++ b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPAAnySearchDAO.java
@@ -176,6 +176,8 @@ public class JPAAnySearchDAO extends AbstractAnySearchDAO {
                     append(filter.getLeft()).
                     append(buildOrderBy(obs));
 
+            System.out.println("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA " + queryString.toString());
+            
             // 3. prepare the search query
             Query query = entityManager().createNativeQuery(queryString.toString());
 
@@ -796,15 +798,17 @@ public class JPAAnySearchDAO extends AbstractAnySearchDAO {
         StringBuilder query = new StringBuilder("SELECT DISTINCT any_id FROM ");
         switch (cond.getType()) {
             case ISNOTNULL:
-                query.append(svs.field().name).
-                        append(" WHERE any_id NOT IN (SELECT any_id FROM ").
-                        append(svs.nullAttr().name).
-                        append(" WHERE schema_id='").append(checked.getLeft().getKey()).append("')");
+                query.append(svs.attr().name).append(" WHERE schema_id=").
+                        append("'").append(checked.getLeft().getKey()).append("'");
                 break;
 
             case ISNULL:
-                query.append(svs.nullAttr().name).
-                        append(" WHERE schema_id='").append(checked.getLeft().getKey()).append("'");
+                query.append(svs.field().name).
+                        append(" WHERE any_id NOT IN ").
+                        append("(").
+                        append("SELECT DISTINCT any_id FROM ").append(svs.attr().name).append(" WHERE schema_id=").
+                        append("'").append(checked.getLeft().getKey()).append("'").
+                        append(")");
                 break;
 
             default: