Loading transfer_service/db_connector.py +2 −21 Original line number Diff line number Diff line Loading @@ -241,27 +241,8 @@ class DbConnector(object): conn = self.getConnection() cursor = conn.cursor(cursor_factory = RealDictCursor) cursor.execute(""" WITH RECURSIVE all_nodes AS ( SELECT node_id, name, os_name, relative_path, parent_relative_path FROM node UNION SELECT node_id, name, os_name, path(parent_relative_path, node_id) AS relative_path, parent_relative_path FROM deleted_node ), del AS ( SELECT COALESCE(os_name, name) AS os_name, 1 AS level, node_id AS deleted_node_id, path(parent_relative_path, node_id) AS relative_path, parent_relative_path FROM deleted_node WHERE phy_deleted_on IS NULL UNION ALL SELECT COALESCE(n.os_name, n.name), d.level + 1, d.deleted_node_id, n.relative_path, n.parent_relative_path FROM all_nodes n JOIN del d ON n.relative_path = d.parent_relative_path WHERE n.parent_relative_path IS NOT NULL ), paths_to_delete AS (SELECT deleted_node_id, '/' || STRING_AGG(os_name, '/' ORDER BY LEVEL DESC) AS os_path FROM del GROUP BY deleted_node_id) SELECT base_path || '/' || creator_id as os_base_path, os_path AS os_rel_path, deleted_on, d.node_id FROM paths_to_delete p JOIN deleted_node d ON d.node_id = p.deleted_node_id SELECT base_path as os_base_path, '/' || fs_path AS os_rel_path, deleted_on, d.node_id FROM deleted_node d JOIN location l ON d.location_id = l.location_id JOIN storage s ON s.storage_id = l.storage_src_id; """) Loading Loading
transfer_service/db_connector.py +2 −21 Original line number Diff line number Diff line Loading @@ -241,27 +241,8 @@ class DbConnector(object): conn = self.getConnection() cursor = conn.cursor(cursor_factory = RealDictCursor) cursor.execute(""" WITH RECURSIVE all_nodes AS ( SELECT node_id, name, os_name, relative_path, parent_relative_path FROM node UNION SELECT node_id, name, os_name, path(parent_relative_path, node_id) AS relative_path, parent_relative_path FROM deleted_node ), del AS ( SELECT COALESCE(os_name, name) AS os_name, 1 AS level, node_id AS deleted_node_id, path(parent_relative_path, node_id) AS relative_path, parent_relative_path FROM deleted_node WHERE phy_deleted_on IS NULL UNION ALL SELECT COALESCE(n.os_name, n.name), d.level + 1, d.deleted_node_id, n.relative_path, n.parent_relative_path FROM all_nodes n JOIN del d ON n.relative_path = d.parent_relative_path WHERE n.parent_relative_path IS NOT NULL ), paths_to_delete AS (SELECT deleted_node_id, '/' || STRING_AGG(os_name, '/' ORDER BY LEVEL DESC) AS os_path FROM del GROUP BY deleted_node_id) SELECT base_path || '/' || creator_id as os_base_path, os_path AS os_rel_path, deleted_on, d.node_id FROM paths_to_delete p JOIN deleted_node d ON d.node_id = p.deleted_node_id SELECT base_path as os_base_path, '/' || fs_path AS os_rel_path, deleted_on, d.node_id FROM deleted_node d JOIN location l ON d.location_id = l.location_id JOIN storage s ON s.storage_id = l.storage_src_id; """) Loading