From 35fa97d9f22318f39d8ae48fda1359287796e4a6 Mon Sep 17 00:00:00 2001 From: Jacob Bijsterbosch Date: Thu, 2 Jul 2026 15:02:17 +0200 Subject: [PATCH 1/4] Remove (useless) hardcoded schema prefix The prefix has been removed to force the module to be loaded via `import_common_into_schema`. An error had now crept into Monitor, preventing the build from finding the `province_land_borders` table. --- .../src/data/sql/database-modules/build_grid/build.sql | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/modules/src/data/sql/database-modules/build_grid/build.sql b/source/modules/src/data/sql/database-modules/build_grid/build.sql index 10731fa..e75e74e 100644 --- a/source/modules/src/data/sql/database-modules/build_grid/build.sql +++ b/source/modules/src/data/sql/database-modules/build_grid/build.sql @@ -1,5 +1,5 @@ SELECT system.raise_notice('Build: geometry_of_interests @ ' || timeofday()); -BEGIN; SELECT grid.ae_build_geometry_of_interests(); COMMIT; +BEGIN; SELECT ae_build_geometry_of_interests(); COMMIT; SELECT system.raise_notice('Build: hexagons and receptors @ ' || timeofday()); -BEGIN; SELECT grid.ae_build_hexagons_and_receptors(); COMMIT; +BEGIN; SELECT ae_build_hexagons_and_receptors(); COMMIT; From 760a95732173a5ae26506d7b67c7726b184c6d33 Mon Sep 17 00:00:00 2001 From: Jacob Bijsterbosch Date: Thu, 2 Jul 2026 15:29:25 +0200 Subject: [PATCH 2/4] Refactor zoom-level build implementations For simplicity always use the multi-zoom-level structure and just don't export the zoom-level field for the single-zoom-level build. --- .../build-single-zoom-level.sql | 47 ------------------- .../store-as-single-zoom-level.sql | 47 +++++++++++++++++++ 2 files changed, 47 insertions(+), 47 deletions(-) delete mode 100644 source/modules/src/data/sql/database-modules/build_grid_receptors_to/build-single-zoom-level.sql create mode 100644 source/modules/src/data/sql/database-modules/build_grid_receptors_to/store-as-single-zoom-level.sql diff --git a/source/modules/src/data/sql/database-modules/build_grid_receptors_to/build-single-zoom-level.sql b/source/modules/src/data/sql/database-modules/build_grid_receptors_to/build-single-zoom-level.sql deleted file mode 100644 index 8c0533a..0000000 --- a/source/modules/src/data/sql/database-modules/build_grid_receptors_to/build-single-zoom-level.sql +++ /dev/null @@ -1,47 +0,0 @@ -SELECT system.raise_notice('Build: receptors_to_assessment_areas @ ' || timeofday()); - -{multithread on: SELECT assessment_area_id FROM nature.assessment_areas ORDER BY assessment_area_id} - - -- For the executed multi thread code execution the import_common_into_schema search path schema is not set. - -- This is the only way I could find to make this code work. - SET search_path TO 'grid', 'public'; - - INSERT INTO receptors_to_assessment_areas (receptor_id, assessment_area_id, surface) - SELECT - receptor_id, - assessment_area_id, - surface - - FROM build_receptors_to_assessment_areas_view - - WHERE assessment_area_id = {assessment_area_id} - ; - -{/multithread} - - -SELECT system.raise_notice('Build: receptors_to_critical_deposition_areas @ ' || timeofday()); - -{multithread on: SELECT assessment_area_id, critical_deposition_area_type FROM nature.assessment_areas CROSS JOIN (SELECT unnest(enum_range(null::public.critical_deposition_area_type)) AS critical_deposition_area_type) AS types ORDER BY assessment_area_id, critical_deposition_area_type } - - -- For the executed multi thread code execution the import_common_into_schema search path schema is not set. - -- This is the only way I could find to make this code work. - SET search_path TO 'grid', 'public'; - - INSERT INTO receptors_to_critical_deposition_areas (assessment_area_id, type, critical_deposition_area_id, receptor_id, surface, receptor_habitat_coverage) - SELECT - assessment_area_id, - type, - critical_deposition_area_id, - receptor_id, - surface, - receptor_habitat_coverage - - FROM build_receptors_to_critical_deposition_areas_view - - WHERE - assessment_area_id = {assessment_area_id} - AND type = '{critical_deposition_area_type}' - ; - -{/multithread} diff --git a/source/modules/src/data/sql/database-modules/build_grid_receptors_to/store-as-single-zoom-level.sql b/source/modules/src/data/sql/database-modules/build_grid_receptors_to/store-as-single-zoom-level.sql new file mode 100644 index 0000000..569174c --- /dev/null +++ b/source/modules/src/data/sql/database-modules/build_grid_receptors_to/store-as-single-zoom-level.sql @@ -0,0 +1,47 @@ +-- +-- Store Multi-zoom-level- as Single-zoom-level structure by exporting the data without the zoom-level field. +-- +SELECT system.store_query( + 'grid.receptors_to_assessment_areas', + $$ SELECT + receptor_id, + assessment_area_id, + surface + + FROM receptors_to_assessment_areas + + ORDER BY + receptor_id, + assessment_area_id, + surface + $$, + '{data_folder}/export/{tablename}_{datesuffix}.txt' +); + +SELECT system.store_query( + 'grid.receptors_to_critical_deposition_areas', + $$ SELECT + assessment_area_id, + type, + critical_deposition_area_id, + receptor_id, + surface, + receptor_habitat_coverage + + FROM receptors_to_critical_deposition_areas + + ORDER BY + assessment_area_id, + type, + critical_deposition_area_id, + receptor_id, + surface, + receptor_habitat_coverage + $$, + '{data_folder}/export/{tablename}_{datesuffix}.txt' +); + + +-- Store these files for Calculator as well, because it's not using MATERIALIZED VIEWS yet. +SELECT system.store_table('habitats', '{data_folder}/export/{tablename}_{datesuffix}.txt'); +SELECT system.store_table('relevant_habitats', '{data_folder}/export/{tablename}_{datesuffix}.txt'); From 8931e6b12e4653948c74b003dede68e69748d48f Mon Sep 17 00:00:00 2001 From: Jacob Bijsterbosch Date: Thu, 2 Jul 2026 16:37:55 +0200 Subject: [PATCH 3/4] Add missing schema prefix for store table --- .../build_grid_receptors_to/store-as-single-zoom-level.sql | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/modules/src/data/sql/database-modules/build_grid_receptors_to/store-as-single-zoom-level.sql b/source/modules/src/data/sql/database-modules/build_grid_receptors_to/store-as-single-zoom-level.sql index 569174c..3e862b9 100644 --- a/source/modules/src/data/sql/database-modules/build_grid_receptors_to/store-as-single-zoom-level.sql +++ b/source/modules/src/data/sql/database-modules/build_grid_receptors_to/store-as-single-zoom-level.sql @@ -43,5 +43,5 @@ SELECT system.store_query( -- Store these files for Calculator as well, because it's not using MATERIALIZED VIEWS yet. -SELECT system.store_table('habitats', '{data_folder}/export/{tablename}_{datesuffix}.txt'); -SELECT system.store_table('relevant_habitats', '{data_folder}/export/{tablename}_{datesuffix}.txt'); +SELECT system.store_table('nature.habitats', '{data_folder}/export/{tablename}_{datesuffix}.txt'); +SELECT system.store_table('nature.relevant_habitats', '{data_folder}/export/{tablename}_{datesuffix}.txt'); From b08bf6bf80dff015322487c55ed5dac9004bbd7b Mon Sep 17 00:00:00 2001 From: Jacob Bijsterbosch Date: Thu, 2 Jul 2026 20:46:39 +0200 Subject: [PATCH 4/4] Move storing the Calculator specific files to Monitor The code was not working because `store_table` doesn't work for materialized views. And this specific code doesn't belong to the `database-modules`. --- .../build_grid_receptors_to/store-as-single-zoom-level.sql | 5 ----- 1 file changed, 5 deletions(-) diff --git a/source/modules/src/data/sql/database-modules/build_grid_receptors_to/store-as-single-zoom-level.sql b/source/modules/src/data/sql/database-modules/build_grid_receptors_to/store-as-single-zoom-level.sql index 3e862b9..481c9a1 100644 --- a/source/modules/src/data/sql/database-modules/build_grid_receptors_to/store-as-single-zoom-level.sql +++ b/source/modules/src/data/sql/database-modules/build_grid_receptors_to/store-as-single-zoom-level.sql @@ -40,8 +40,3 @@ SELECT system.store_query( $$, '{data_folder}/export/{tablename}_{datesuffix}.txt' ); - - --- Store these files for Calculator as well, because it's not using MATERIALIZED VIEWS yet. -SELECT system.store_table('nature.habitats', '{data_folder}/export/{tablename}_{datesuffix}.txt'); -SELECT system.store_table('nature.relevant_habitats', '{data_folder}/export/{tablename}_{datesuffix}.txt');