Ravi Nori has uploaded a new change for review.

Change subject: core : Drop user_flat_groups view
......................................................................

core : Drop user_flat_groups view

Modify all views to use engine_session_user_flat_groups
instead of user_flat_groups view and drop
the unused view.

Change-Id: I0af3e75dce6851d95f0d6fb98a8181872d3a817d
Bug-Url: https://bugzilla.redhat.com/1092744
Signed-off-by: Ravi Nori <[email protected]>
---
M packaging/dbscripts/create_views.sql
M packaging/dbscripts/quota_sp.sql
2 files changed, 16 insertions(+), 29 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/66/35766/1

diff --git a/packaging/dbscripts/create_views.sql 
b/packaging/dbscripts/create_views.sql
index 4678b58..e551802 100644
--- a/packaging/dbscripts/create_views.sql
+++ b/packaging/dbscripts/create_views.sql
@@ -1294,19 +1294,6 @@
 -- Query Permissions
 ----------------------------------------------
 
--- Flatten all the objects a user can get permissions on them
-CREATE OR REPLACE VIEW user_flat_groups
-AS
-SELECT users.user_id AS user_id, fnSplitterUuid(users.group_ids) AS granted_id
-FROM   users
-UNION ALL
--- The user itself
-SELECT user_id, user_id FROM users
-UNION ALL
--- user is also member of 'Everyone'
-SELECT user_id, 'EEE00000-0000-0000-0000-123456789EEE'
-FROM   users;
-
 CREATE OR REPLACE VIEW engine_session_user_flat_groups
 AS
 SELECT id AS id, user_id AS user_id, fnSplitterUuid(engine_sessions.group_ids) 
AS granted_id
@@ -1347,7 +1334,7 @@
 AS
 SELECT       DISTINCT entity_id, user_id
 FROM         user_vds_groups_permissions_view_base
-NATURAL JOIN user_flat_groups;
+NATURAL JOIN engine_session_user_flat_groups;
 
 
 -- Permissions view for Data Center
@@ -1385,7 +1372,7 @@
 AS
 SELECT       DISTINCT entity_id, user_id
 FROM         user_storage_pool_permissions_view_base
-NATURAL JOIN user_flat_groups;
+NATURAL JOIN engine_session_user_flat_groups;
 
 
 -- Permissions for Storage Domains
@@ -1429,7 +1416,7 @@
 AS
 SELECT       DISTINCT entity_id, user_id
 FROM         user_storage_domain_permissions_view_base
-NATURAL JOIN user_flat_groups;
+NATURAL JOIN engine_session_user_flat_groups;
 
 
 -- Permissions on Hosts
@@ -1456,7 +1443,7 @@
 AS
 SELECT       DISTINCT entity_id, user_id
 FROM         user_vds_permissions_view_base
-NATURAL JOIN user_flat_groups;
+NATURAL JOIN engine_session_user_flat_groups;
 
 
 -- Permissions on VM Pools
@@ -1493,7 +1480,7 @@
 AS
 SELECT       DISTINCT entity_id, user_id
 FROM         user_vm_pool_permissions_view_base
-NATURAL JOIN user_flat_groups;
+NATURAL JOIN engine_session_user_flat_groups;
 
 
 -- Permissions on Templates
@@ -1527,7 +1514,7 @@
 AS
 SELECT       DISTINCT entity_id, user_id
 FROM         user_vm_template_permissions_view_base
-NATURAL JOIN user_flat_groups;
+NATURAL JOIN engine_session_user_flat_groups;
 
 
 -- Permissions on VMs
@@ -1559,7 +1546,7 @@
 AS
 SELECT       DISTINCT entity_id, user_id
 FROM         user_vm_permissions_view_base
-NATURAL JOIN user_flat_groups;
+NATURAL JOIN engine_session_user_flat_groups;
 
 -- Permissions on disk
 -- The user has permissions on the disk directly
@@ -1604,21 +1591,21 @@
 AS
 SELECT       DISTINCT entity_id, user_id
 FROM         user_disk_permissions_view_base
-NATURAL JOIN user_flat_groups;
+NATURAL JOIN engine_session_user_flat_groups;
 
 -- Permissions on permissions
 CREATE OR REPLACE VIEW user_permissions_permissions_view (entity_id, user_id)
 AS
-SELECT       DISTINCT id, user_id
+SELECT       DISTINCT internal_permissions_view.id, user_id
 FROM         internal_permissions_view
-JOIN         user_flat_groups ON granted_id = ad_element_id;
+JOIN         engine_session_user_flat_groups ON granted_id = ad_element_id;
 
 -- Direct permissions assigned to user
 CREATE OR REPLACE VIEW user_object_permissions_view AS
- SELECT DISTINCT permissions.object_id AS entity_id, user_flat_groups.user_id
+ SELECT DISTINCT permissions.object_id AS entity_id, 
engine_session_user_flat_groups.user_id
    FROM permissions
    JOIN roles ON permissions.role_id = roles.id
-   JOIN user_flat_groups ON user_flat_groups.granted_id = 
permissions.ad_element_id
+   JOIN engine_session_user_flat_groups ON 
engine_session_user_flat_groups.granted_id = permissions.ad_element_id
    WHERE permissions.ad_element_id != getGlobalIds('everyone');
 
 -- Permissions to view users in db
@@ -1684,7 +1671,7 @@
 AS
 SELECT       DISTINCT entity_id, user_id
 FROM         user_vnic_profile_permissions_view_base
-NATURAL JOIN user_flat_groups;
+NATURAL JOIN engine_session_user_flat_groups;
 
 -- Permissions on Networks
 CREATE OR REPLACE VIEW user_network_permissions_view_base (entity_id, 
granted_id)
@@ -1699,7 +1686,7 @@
 AS
 SELECT       DISTINCT entity_id, user_id
 FROM         user_network_permissions_view_base
-NATURAL JOIN user_flat_groups;
+NATURAL JOIN engine_session_user_flat_groups;
 
 CREATE OR REPLACE VIEW gluster_volumes_view
 AS
diff --git a/packaging/dbscripts/quota_sp.sql b/packaging/dbscripts/quota_sp.sql
index 3280577..652adfd 100644
--- a/packaging/dbscripts/quota_sp.sql
+++ b/packaging/dbscripts/quota_sp.sql
@@ -215,7 +215,7 @@
                WHERE  storage_id = v_storage_id)))
    AND (NOT v_is_filtered OR
           EXISTS (SELECT 1 FROM permissions p
-                  JOIN user_flat_groups u ON
+                  JOIN engine_session_user_flat_groups u ON
                   u.granted_id = p.ad_element_id WHERE
                   u.user_id = v_user_id AND
                   p.object_type_id = 17 AND -- quota object
@@ -249,7 +249,7 @@
                WHERE  vds_group_id = v_vds_group_id)))
    AND (NOT v_is_filtered OR
           EXISTS (SELECT 1 FROM permissions p
-                  JOIN user_flat_groups u ON
+                  JOIN engine_session_user_flat_groups u ON
                   u.granted_id = p.ad_element_id WHERE
                   u.user_id = v_user_id AND
                   p.object_type_id = 17 AND -- quota object


-- 
To view, visit http://gerrit.ovirt.org/35766
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I0af3e75dce6851d95f0d6fb98a8181872d3a817d
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Ravi Nori <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to