diff --git a/volumes/miovision/sql/function/function-aggregate_volumes_daily.sql b/volumes/miovision/sql/function/function-aggregate_volumes_daily.sql index 1a5b3290f..eac6b7e94 100644 --- a/volumes/miovision/sql/function/function-aggregate_volumes_daily.sql +++ b/volumes/miovision/sql/function/function-aggregate_volumes_daily.sql @@ -19,7 +19,7 @@ BEGIN WITH deleted AS ( DELETE FROM miovision_api.volumes_daily_unfiltered - WHERE + WHERE dt >= start_date AND dt < end_date AND intersection_uid = ANY(target_intersections) @@ -107,13 +107,15 @@ BEGIN END; $BODY$; -COMMENT ON FUNCTION miovision_api.aggregate_volumes_daily +COMMENT ON FUNCTION miovision_api.aggregate_volumes_daily(date, date, integer []) IS 'Function for inserting daily volumes into miovision_api.volumes_daily_unfiltered. Contains an optional intersection parameter.'; -ALTER FUNCTION miovision_api.aggregate_volumes_daily OWNER TO miovision_admins; +ALTER FUNCTION miovision_api.aggregate_volumes_daily(date, date, integer []) +OWNER TO miovision_admins; -GRANT EXECUTE ON FUNCTION miovision_api.aggregate_volumes_daily +GRANT EXECUTE ON FUNCTION miovision_api.aggregate_volumes_daily(date, date, integer []) TO miovision_api_bot; -REVOKE ALL ON FUNCTION miovision_api.aggregate_volumes_daily FROM public; +REVOKE ALL ON FUNCTION miovision_api.aggregate_volumes_daily(date, date, integer []) +FROM public; \ No newline at end of file diff --git a/volumes/miovision/sql/function/function-find_gaps.sql b/volumes/miovision/sql/function/function-find_gaps.sql index 2c1c668d1..0b3a96d24 100644 --- a/volumes/miovision/sql/function/function-find_gaps.sql +++ b/volumes/miovision/sql/function/function-find_gaps.sql @@ -178,8 +178,14 @@ BEGIN END; $BODY$; -COMMENT ON FUNCTION miovision_api.find_gaps +COMMENT ON FUNCTION miovision_api.find_gaps(timestamp, timestamp, integer []) IS 'Function to identify gaps in miovision_api.volumes data and insert into miovision_api.unacceptable_gaps table. gap_tolerance set using 60 day lookback avg volumes and thresholds defined in miovision_api.gapsize_lookup. -Contains optional intersection parameter.'; \ No newline at end of file +Contains optional intersection parameter.'; + +ALTER FUNCTION miovision_api.find_gaps(timestamp, timestamp, integer []) +OWNER TO miovision_admins; + +GRANT EXECUTE ON FUNCTION miovision_api.find_gaps(timestamp, timestamp, integer []) +TO miovision_api_bot; \ No newline at end of file diff --git a/volumes/miovision/sql/function/function-gapsize_lookup_insert.sql b/volumes/miovision/sql/function/function-gapsize_lookup_insert.sql index 07e662a29..56e53f560 100644 --- a/volumes/miovision/sql/function/function-gapsize_lookup_insert.sql +++ b/volumes/miovision/sql/function/function-gapsize_lookup_insert.sql @@ -15,7 +15,7 @@ AS $BODY$ WHERE dt >= start_date AND dt < end_date - AND intersection_uid = ANY(intersections); + AND intersection_uid = ANY(gapsize_lookup_insert.intersections); WITH study_dates AS ( SELECT @@ -45,7 +45,7 @@ AS $BODY$ WHERE v.datetime_bin >= start_date - interval '60 days' AND v.datetime_bin < end_date - AND v.intersection_uid = ANY(intersections) + AND v.intersection_uid = ANY(gapsize_lookup_insert.intersections) GROUP BY dates.dt, v.intersection_uid, @@ -72,7 +72,7 @@ AS $BODY$ UNION SELECT NULL::integer --represents all classifications ) AS classifications CROSS JOIN generate_series(0, 23, 1) AS hours(hour_bin) - WHERE intersection_uid = ANY(intersections) + WHERE intersection_uid = ANY(gapsize_lookup_insert.intersections) ), lookback_avgs AS ( @@ -130,13 +130,13 @@ AS $BODY$ END; $BODY$; -ALTER FUNCTION miovision_api.gapsize_lookup_insert +ALTER FUNCTION miovision_api.gapsize_lookup_insert(timestamp, timestamp, integer []) OWNER TO miovision_admins; -GRANT EXECUTE ON FUNCTION miovision_api.gapsize_lookup_insert +GRANT EXECUTE ON FUNCTION miovision_api.gapsize_lookup_insert(timestamp, timestamp, integer []) TO miovision_api_bot; -COMMENT ON FUNCTION miovision_api.gapsize_lookup_insert +COMMENT ON FUNCTION miovision_api.gapsize_lookup_insert(timestamp, timestamp, integer []) IS 'Determine the average volumes for each hour/intersection/daytype/classification based on a 60 day lookback. Uses GROUPING SETS to identify both volume for individual classifications and total interseciton volumes (classification_uid IS NULL). diff --git a/volumes/miovision/sql/function/function-identify-zero-counts.sql b/volumes/miovision/sql/function/function-identify-zero-counts.sql index 26bbbab85..4be0c9875 100644 --- a/volumes/miovision/sql/function/function-identify-zero-counts.sql +++ b/volumes/miovision/sql/function/function-identify-zero-counts.sql @@ -149,11 +149,11 @@ END; $BODY$; -ALTER FUNCTION miovision_api.identify_zero_counts(date) +ALTER FUNCTION miovision_api.identify_zero_counts(date, integer []) OWNER TO miovision_admins; -GRANT EXECUTE ON FUNCTION miovision_api.identify_zero_counts(date) +GRANT EXECUTE ON FUNCTION miovision_api.identify_zero_counts(date, integer []) TO miovision_api_bot; -GRANT EXECUTE ON FUNCTION miovision_api.identify_zero_counts(date) +GRANT EXECUTE ON FUNCTION miovision_api.identify_zero_counts(date, integer []) TO miovision_admins;