@@ -168,10 +168,10 @@ WITH selected_dataset_versions AS (
168168 FROM selected_dataset_versions dv
169169 LEFT JOIN runs_input_mapping rim
170170 ON rim.dataset_version_uuid = dv.uuid
171- ), selected_dataset_version_events AS (
172- SELECT dv.uuid, dv.dataset_name, dv.namespace_name, dv.run_uuid, le.event_time, le.event
171+ ), selected_dataset_version_facets AS (
172+ SELECT dv.uuid, dv.dataset_name, dv.namespace_name, dv.run_uuid, df.lineage_event_time, df.facet
173173 FROM selected_dataset_version_runs dv
174- LEFT JOIN lineage_events le ON le .run_uuid = dv.run_uuid
174+ LEFT JOIN dataset_facets_view df ON df.dataset_uuid = dv.dataset_uuid AND df .run_uuid = dv.run_uuid
175175 )
176176 SELECT d.type, d.name, d.physical_name, d.namespace_name, d.source_name, d.description, dv.lifecycle_state,\s
177177 dv.created_at, dv.version, dv.fields, dv.run_uuid AS createdByRunUuid, sv.schema_location,
@@ -186,14 +186,10 @@ SELECT ARRAY_AGG(t.name) AS tags, m.dataset_uuid
186186 GROUP BY m.dataset_uuid
187187 ) t ON t.dataset_uuid = dv.dataset_uuid
188188 LEFT JOIN (
189- SELECT dve.uuid AS dataset_uuid, JSONB_AGG(ds->'facets' ORDER BY event_time ASC) AS facets
190- FROM selected_dataset_version_events dve,
191- jsonb_array_elements(coalesce(dve.event -> 'inputs', '[]'::jsonb) || coalesce(dve.event -> 'outputs', '[]'::jsonb)) AS ds
192- WHERE dve.run_uuid = dve.run_uuid
193- AND ds -> 'facets' IS NOT NULL
194- AND ds ->> 'name' = dve.dataset_name
195- AND ds ->> 'namespace' = dve.namespace_name
196- GROUP BY dve.uuid
189+ SELECT dvf.uuid AS dataset_uuid, JSONB_AGG(dvf.facet ORDER BY dvf.lineage_event_time ASC) AS facets
190+ FROM selected_dataset_version_facets dvf
191+ WHERE dvf.run_uuid = dvf.run_uuid
192+ GROUP BY dvf.uuid
197193 ) f ON f.dataset_uuid = dv.uuid""" )
198194 Optional <DatasetVersion > findBy (UUID version );
199195
@@ -211,10 +207,10 @@ WITH selected_dataset_versions AS (
211207 FROM selected_dataset_versions dv
212208 LEFT JOIN runs_input_mapping rim
213209 ON rim.dataset_version_uuid = dv.uuid
214- ), selected_dataset_version_events AS (
215- SELECT dv.uuid, dv.dataset_name, dv.namespace_name, dv.run_uuid, le.event_time, le.event
210+ ), selected_dataset_version_facets AS (
211+ SELECT dv.uuid, dv.dataset_name, dv.namespace_name, dv.run_uuid, df.lineage_event_time, df.facet
216212 FROM selected_dataset_version_runs dv
217- LEFT JOIN lineage_events le ON le .run_uuid = dv.run_uuid
213+ LEFT JOIN dataset_facets_view df ON df.dataset_uuid = dv.dataset_uuid AND df .run_uuid = dv.run_uuid
218214 )
219215 SELECT d.type, d.name, d.physical_name, d.namespace_name, d.source_name, d.description, dv.lifecycle_state,\s
220216 dv.created_at, dv.version, dv.fields, dv.run_uuid AS createdByRunUuid, sv.schema_location,
@@ -229,14 +225,10 @@ SELECT ARRAY_AGG(t.name) AS tags, m.dataset_uuid
229225 GROUP BY m.dataset_uuid
230226 ) t ON t.dataset_uuid = dv.dataset_uuid
231227 LEFT JOIN (
232- SELECT dve.uuid AS dataset_uuid, JSONB_AGG(ds->'facets' ORDER BY event_time ASC) AS facets
233- FROM selected_dataset_version_events dve,
234- jsonb_array_elements(coalesce(dve.event -> 'inputs', '[]'::jsonb) || coalesce(dve.event -> 'outputs', '[]'::jsonb)) AS ds
235- WHERE dve.run_uuid = dve.run_uuid
236- AND ds -> 'facets' IS NOT NULL
237- AND ds ->> 'name' = dve.dataset_name
238- AND ds ->> 'namespace' = dve.namespace_name
239- GROUP BY dve.uuid
228+ SELECT dvf.uuid AS dataset_uuid, JSONB_AGG(dvf.facet ORDER BY dvf.lineage_event_time ASC) AS facets
229+ FROM selected_dataset_version_facets dvf
230+ WHERE dvf.run_uuid = dvf.run_uuid
231+ GROUP BY dvf.uuid
240232 ) f ON f.dataset_uuid = dv.uuid""" )
241233 Optional <DatasetVersion > findByUuid (UUID uuid );
242234
@@ -283,10 +275,10 @@ WITH selected_dataset_versions AS (
283275 FROM selected_dataset_versions dv
284276 LEFT JOIN runs_input_mapping rim
285277 ON rim.dataset_version_uuid = dv.uuid
286- ), selected_dataset_version_events AS (
287- SELECT dv.uuid, dv.dataset_name, dv.namespace_name, dv.run_uuid, le.event_time, le.event
278+ ), selected_dataset_version_facets AS (
279+ SELECT dv.uuid, dv.dataset_name, dv.namespace_name, dv.run_uuid, df.lineage_event_time, df.facet
288280 FROM selected_dataset_version_runs dv
289- LEFT JOIN lineage_events le ON le .run_uuid = dv.run_uuid
281+ LEFT JOIN dataset_facets_view df ON df.dataset_uuid = dv.dataset_uuid AND df .run_uuid = dv.run_uuid
290282 )
291283 SELECT d.type, d.name, d.physical_name, d.namespace_name, d.source_name, d.description, dv.lifecycle_state,
292284 dv.created_at, dv.version, dv.fields, dv.run_uuid AS createdByRunUuid, sv.schema_location,
@@ -301,14 +293,10 @@ SELECT ARRAY_AGG(t.name) AS tags, m.dataset_uuid
301293 GROUP BY m.dataset_uuid
302294 ) t ON t.dataset_uuid = dv.dataset_uuid
303295 LEFT JOIN (
304- SELECT dve.uuid AS dataset_uuid, JSONB_AGG(ds->'facets' ORDER BY event_time ASC) AS facets
305- FROM selected_dataset_version_events dve,
306- jsonb_array_elements(coalesce(dve.event -> 'inputs', '[]'::jsonb) || coalesce(dve.event -> 'outputs', '[]'::jsonb)) AS ds
307- WHERE dve.run_uuid = dve.run_uuid
308- AND ds -> 'facets' IS NOT NULL
309- AND ds ->> 'name' = dve.dataset_name
310- AND ds ->> 'namespace' = dve.namespace_name
311- GROUP BY dve.uuid
296+ SELECT dvf.uuid AS dataset_uuid, JSONB_AGG(dvf.facet ORDER BY dvf.lineage_event_time ASC) AS facets
297+ FROM selected_dataset_version_facets dvf
298+ WHERE dvf.run_uuid = dvf.run_uuid
299+ GROUP BY dvf.uuid
312300 ) f ON f.dataset_uuid = dv.uuid
313301 ORDER BY dv.created_at DESC""" )
314302 List <DatasetVersion > findAll (String namespaceName , String datasetName , int limit , int offset );
0 commit comments