Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2022-04-23 03:08:51 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2022-04-23 03:08:51 +0300
commit4654b55eb5151655e278ad9918625e52407da5b3 (patch)
tree1c1e252cf4fd2bf017d14f984262230bcbf17f58
parent63195885abc31f484be5784fd53c75a1825a78c0 (diff)
Add latest changes from gitlab-org/gitlab@master
-rw-r--r--db/migrate/20220422200633_fix_view_for_per_table_autovacuum_status.rb73
-rw-r--r--db/schema_migrations/202204222006331
-rw-r--r--db/structure.sql6
-rw-r--r--doc/user/packages/container_registry/index.md8
4 files changed, 81 insertions, 7 deletions
diff --git a/db/migrate/20220422200633_fix_view_for_per_table_autovacuum_status.rb b/db/migrate/20220422200633_fix_view_for_per_table_autovacuum_status.rb
new file mode 100644
index 00000000000..abd7e43128f
--- /dev/null
+++ b/db/migrate/20220422200633_fix_view_for_per_table_autovacuum_status.rb
@@ -0,0 +1,73 @@
+# frozen_string_literal: true
+
+class FixViewForPerTableAutovacuumStatus < Gitlab::Database::Migration[2.0]
+ def up
+ execute <<~SQL
+ DROP VIEW IF EXISTS postgres_autovacuum_activity;
+ DROP FUNCTION IF EXISTS postgres_pg_stat_activity_autovacuum;
+
+ CREATE OR REPLACE FUNCTION postgres_pg_stat_activity_autovacuum() RETURNS TABLE(query text, query_start timestamptz) AS
+ $$
+ SELECT query, query_start
+ FROM pg_stat_activity
+ WHERE datname = current_database()
+ AND state = 'active'
+ AND backend_type = 'autovacuum worker'
+ $$
+ LANGUAGE sql
+ VOLATILE
+ SECURITY DEFINER
+ SET search_path = 'pg_catalog', 'pg_temp';
+
+ CREATE VIEW postgres_autovacuum_activity AS
+ WITH processes as
+ (
+ SELECT query, query_start, (regexp_matches(query, '^autovacuum: VACUUM (\w+)\.(\w+)')) as matches
+ FROM postgres_pg_stat_activity_autovacuum()
+ WHERE query ~* '^autovacuum: VACUUM \w+\.\w+'
+ )
+ SELECT matches[1] || '.' || matches[2] as table_identifier,
+ matches[1] as schema,
+ matches[2] as table,
+ query_start as vacuum_start
+ FROM processes;
+
+ COMMENT ON VIEW postgres_autovacuum_activity IS 'Contains information about PostgreSQL backends currently performing autovacuum operations on the tables indicated here.';
+ SQL
+ end
+
+ def down
+ execute(<<~SQL)
+ DROP VIEW IF EXISTS postgres_autovacuum_activity;
+ DROP FUNCTION IF EXISTS postgres_pg_stat_activity_autovacuum;
+
+ CREATE OR REPLACE FUNCTION postgres_pg_stat_activity_autovacuum() RETURNS SETOF pg_catalog.pg_stat_activity AS
+ $$
+ SELECT *
+ FROM pg_stat_activity
+ WHERE datname = current_database()
+ AND state = 'active'
+ AND backend_type = 'autovacuum worker'
+ $$
+ LANGUAGE sql
+ VOLATILE
+ SECURITY DEFINER
+ SET search_path = 'pg_catalog', 'pg_temp';
+
+ CREATE VIEW postgres_autovacuum_activity AS
+ WITH processes as
+ (
+ SELECT query, query_start, (regexp_matches(query, '^autovacuum: VACUUM (\w+)\.(\w+)')) as matches
+ FROM postgres_pg_stat_activity_autovacuum()
+ WHERE query ~* '^autovacuum: VACUUM \w+\.\w+'
+ )
+ SELECT matches[1] || '.' || matches[2] as table_identifier,
+ matches[1] as schema,
+ matches[2] as table,
+ query_start as vacuum_start
+ FROM processes;
+
+ COMMENT ON VIEW postgres_autovacuum_activity IS 'Contains information about PostgreSQL backends currently performing autovacuum operations on the tables indicated here.';
+ SQL
+ end
+end
diff --git a/db/schema_migrations/20220422200633 b/db/schema_migrations/20220422200633
new file mode 100644
index 00000000000..3cb52317fa0
--- /dev/null
+++ b/db/schema_migrations/20220422200633
@@ -0,0 +1 @@
+666eff0892b795c7f1a84dfcdb6fad6266f952bb91b69c81e803d16ecdc0d11d \ No newline at end of file
diff --git a/db/structure.sql b/db/structure.sql
index 1a81981ef9d..a4c42e90791 100644
--- a/db/structure.sql
+++ b/db/structure.sql
@@ -106,11 +106,11 @@ BEGIN
END;
$$;
-CREATE FUNCTION postgres_pg_stat_activity_autovacuum() RETURNS SETOF pg_stat_activity
+CREATE FUNCTION postgres_pg_stat_activity_autovacuum() RETURNS TABLE(query text, query_start timestamp with time zone)
LANGUAGE sql SECURITY DEFINER
SET search_path TO 'pg_catalog', 'pg_temp'
AS $$
- SELECT *
+ SELECT query, query_start
FROM pg_stat_activity
WHERE datname = current_database()
AND state = 'active'
@@ -18747,7 +18747,7 @@ CREATE VIEW postgres_autovacuum_activity AS
SELECT postgres_pg_stat_activity_autovacuum.query,
postgres_pg_stat_activity_autovacuum.query_start,
regexp_matches(postgres_pg_stat_activity_autovacuum.query, '^autovacuum: VACUUM (w+).(w+)'::text) AS matches
- FROM postgres_pg_stat_activity_autovacuum() postgres_pg_stat_activity_autovacuum(datid, datname, pid, usesysid, usename, application_name, client_addr, client_hostname, client_port, backend_start, xact_start, query_start, state_change, wait_event_type, wait_event, state, backend_xid, backend_xmin, query, backend_type)
+ FROM postgres_pg_stat_activity_autovacuum() postgres_pg_stat_activity_autovacuum(query, query_start)
WHERE (postgres_pg_stat_activity_autovacuum.query ~* '^autovacuum: VACUUM w+.w+'::text)
)
SELECT ((processes.matches[1] || '.'::text) || processes.matches[2]) AS table_identifier,
diff --git a/doc/user/packages/container_registry/index.md b/doc/user/packages/container_registry/index.md
index 59bb4a89b0b..c90475f1bdd 100644
--- a/doc/user/packages/container_registry/index.md
+++ b/doc/user/packages/container_registry/index.md
@@ -626,10 +626,10 @@ Use your own URLs to complete the following steps:
docker pull gitlab.example.com/org/build/sample_project/cr:v2.9.1
```
-NOTE:
-For container registry authentication, use either a
-[personal access token](../../profile/personal_access_tokens.md) or a
-[deploy token](../../project/deploy_tokens/index.md).
+ NOTE:
+ For container registry authentication, use either a
+ [personal access token](../../profile/personal_access_tokens.md) or a
+ [deploy token](../../project/deploy_tokens/index.md).
1. Rename the images to match the new project name: