From 2dc5ac22f75bc00ff9595420f46a28180e996828 Mon Sep 17 00:00:00 2001 From: kfilippopolitis <kostasfilippop@gmail.com> Date: Wed, 9 Jun 2021 04:59:53 -0700 Subject: [PATCH] Fixed the result of old experiments to be in the proper format and properly be shown in the UI --- .../migration/V7_0__NewDatabaseStructure.sql | 27 +++++++------------ 1 file changed, 10 insertions(+), 17 deletions(-) diff --git a/src/main/resources/db/migration/V7_0__NewDatabaseStructure.sql b/src/main/resources/db/migration/V7_0__NewDatabaseStructure.sql index c1732c9e9..3f9f7c0c6 100644 --- a/src/main/resources/db/migration/V7_0__NewDatabaseStructure.sql +++ b/src/main/resources/db/migration/V7_0__NewDatabaseStructure.sql @@ -1,8 +1,3 @@ -UPDATE experiment -SET algorithms = - ( - SELECT SUBSTR(algorithms, 2, LENGTH(algorithms) - 2) - ); UPDATE experiment SET workflowstatus = 'error' @@ -26,10 +21,16 @@ DROP COLUMN hasservererror, DROP COLUMN validations, DROP COLUMN model_slug; -ALTER TABLE experiment -RENAME algorithms TO algorithm; -ALTER TABLE experiment -ALTER COLUMN algorithm TYPE json USING algorithm::json; +ALTER TABLE experiment RENAME algorithms TO algorithm; +UPDATE experiment SET algorithm = (algorithm::json ->> 0); + +UPDATE experiment SET result = result::json #>>'{0,result}' WHERE (algorithm::json->>'type') <> 'workflow'; +UPDATE experiment SET result = (SELECT jsonb_agg(value -> 'result') FROM jsonb_array_elements(result::jsonb)) WHERE (algorithm::json->>'type') = 'workflow'; +UPDATE experiment SET result = (SELECT jsonb_agg(d.data) FROM jsonb_array_elements(result::jsonb) t, json_array_elements(t.value::json) d(data)) WHERE (algorithm::json->>'type') = 'workflow'; + +ALTER TABLE experiment ADD COLUMN algorithmId text; +UPDATE experiment SET algorithmId = (algorithm::json ->> 'name'); + ALTER TABLE experiment RENAME createdby_username TO created_by_username; ALTER TABLE experiment @@ -39,14 +40,6 @@ RENAME resultsviewed TO viewed; ALTER TABLE experiment RENAME workflowstatus TO status; -ALTER TABLE experiment -ADD COLUMN algorithmId text; - -UPDATE experiment -SET algorithmId = (algorithm ->> 'name'); - -ALTER TABLE experiment -ALTER COLUMN algorithm TYPE text; ALTER TABLE experiment ADD COLUMN updated timestamp without time zone; -- GitLab