# PostgreSQL Checkup. Project: 'gitlab_production'. Database: 'gitlabhq_production'
## Epoch number: '20190930001'
NOTICE: while most reports describe the “current database”, some of them may contain cluster-wide information describing all databases in the cluster.
Last modified at: 2019-09-30 13:59:26 +0000
<a name="postgres-checkup_top"> </a>
### Table of contents ###
[A002 Version Information](#postgres-checkup_A002)
[A003 Postgres Settings](#postgres-checkup_A003)
[A004 Cluster Information](#postgres-checkup_A004)
[A005 Extensions](#postgres-checkup_A005)
[A006 Postgres Setting Deviations](#postgres-checkup_A006)
[A007 Altered Settings](#postgres-checkup_A007)
[D004 pg_stat_statements and pg_stat_kcache Settings](#postgres-checkup_D004)
[F001 Autovacuum: Current Settings](#postgres-checkup_F001)
[F002 Autovacuum: Transaction ID Wraparound Check](#postgres-checkup_F002)
[F003 Autovacuum: Dead Tuples](#postgres-checkup_F003)
[F004 Autovacuum: Heap Bloat (Estimated)](#postgres-checkup_F004)
[F005 Autovacuum: Btree Index Bloat (Estimated)](#postgres-checkup_F005)
[F008 Autovacuum: Resource Usage](#postgres-checkup_F008)
[G001 Memory-related Settings](#postgres-checkup_G001)
[G002 Connections and Current Activity](#postgres-checkup_G002)
[G003 Timeouts, Locks, Deadlocks](#postgres-checkup_G003)
[H001 Invalid Indexes](#postgres-checkup_H001)
[H002 Unused and Redundant Indexes](#postgres-checkup_H002)
[H003 Non-indexed Foreign Keys](#postgres-checkup_H003)
[K001 Globally Aggregated Query Metrics](#postgres-checkup_K001)
[K002 Workload Type ("The First Word" Analysis)](#postgres-checkup_K002)
[K003 Top-20 Queries by total_time](#postgres-checkup_K003)
[L001 Table Sizes](#postgres-checkup_L001)
[L003 Integer (int2, int4) Out-of-range Risks in PKs](#postgres-checkup_L003)
---
<a name="postgres-checkup_A002"> </a>
[Table of contents](#postgres-checkup_top)
# A002 Version Information #
## Observations ##
Data collected: 2019-09-30 13:54:43 +0000 UTC
### Master (`10.220.16.101`) ###
```
PostgreSQL 9.6.15 on x86_64-pc-linux-gnu (Ubuntu 9.6.15-1.pgdg16.04+1), compiled by gcc (Ubuntu 5.4.0-6ubuntu1~16.04.11) 5.4.0 20160609, 64-bit
```
### Replica servers: ###
#### Replica (`10.220.16.102`) ####
```
PostgreSQL 9.6.14 on x86_64-pc-linux-gnu (Ubuntu 9.6.14-1.pgdg16.04+1), compiled by gcc (Ubuntu 5.4.0-6ubuntu1~16.04.11) 5.4.0 20160609, 64-bit
```
#### Replica (`10.220.16.103`) ####
```
PostgreSQL 9.6.14 on x86_64-pc-linux-gnu (Ubuntu 9.6.14-1.pgdg16.04+1), compiled by gcc (Ubuntu 5.4.0-6ubuntu1~16.04.11) 5.4.0 20160609, 64-bit
```
#### Replica (`10.220.16.104`) ####
```
PostgreSQL 9.6.14 on x86_64-pc-linux-gnu (Ubuntu 9.6.14-1.pgdg16.04+1), compiled by gcc (Ubuntu 5.4.0-6ubuntu1~16.04.11) 5.4.0 20160609, 64-bit
```
#### Replica (`10.220.16.105`) ####
```
PostgreSQL 9.6.14 on x86_64-pc-linux-gnu (Ubuntu 9.6.14-1.pgdg16.04+1), compiled by gcc (Ubuntu 5.4.0-6ubuntu1~16.04.11) 5.4.0 20160609, 64-bit
```
#### Replica (`10.220.16.106`) ####
```
PostgreSQL 9.6.14 on x86_64-pc-linux-gnu (Ubuntu 9.6.14-1.pgdg16.04+1), compiled by gcc (Ubuntu 5.4.0-6ubuntu1~16.04.11) 5.4.0 20160609, 64-bit
```
#### Replica (`10.220.16.107`) ####
```
PostgreSQL 9.6.15 on x86_64-pc-linux-gnu (Ubuntu 9.6.15-1.pgdg16.04+1), compiled by gcc (Ubuntu 5.4.0-6ubuntu1~16.04.11) 5.4.0 20160609, 64-bit
```
#### Replica (`10.220.16.108`) ####
```
PostgreSQL 9.6.15 on x86_64-pc-linux-gnu (Ubuntu 9.6.15-1.pgdg16.04+1), compiled by gcc (Ubuntu 5.4.0-6ubuntu1~16.04.11) 5.4.0 20160609, 64-bit
```
#### Replica (`10.220.16.109`) ####
```
PostgreSQL 9.6.15 on x86_64-pc-linux-gnu (Ubuntu 9.6.15-1.pgdg16.04+1), compiled by gcc (Ubuntu 5.4.0-6ubuntu1~16.04.11) 5.4.0 20160609, 64-bit
```
## Conclusions ##
- [P2] Postgres minor version on the master and replica(s) differ. Nodes `10.220.16.103`, `10.220.16.106`, `10.220.16.104`, `10.220.16.105`, `10.220.16.107`, `10.220.16.108`, `10.220.16.109`, `10.220.16.101`, `10.220.16.102` use Postgres `9.6.14`, `9.6.15`.
- Postgres major version being used is `9.6` and it is currently supported by PostgreSQL Global Development Group. End of life is scheduled 2021-11-11. It means that in case of bugs and security issues, updates (new minor versions) with fixes will be released and available for use. Read more: [Versioning Policy](https://www.postgresql.org/support/versioning/).
- `9.6.15` is the most up-to-date Postgres minor version in the branch `9.6`.
- [P2] The minor version being used (`9.6.14`) is not up-to-date (the newest version: `9.6.15`). See [the full list of changes between 9.6.14 and 9.6.15](https://why-upgrade.depesz.com/show?from=9.6.14&to=9.6.15).
## Recommendations ##
- [P2] Please upgrade Postgres so its versions on all nodes match.
- [P3] Consider upgrading to the newest major version: 11. It has a lot of new features and improvements.
- For more information about minor and major upgrades see:
- Official documentation: https://www.postgresql.org/docs/current/upgrading.html
- [Major-version upgrading with minimal downtime](https://www.depesz.com/2016/11/08/major-version-upgrading-with-minimal-downtime/) (depesz.com)
- [Upgrading PostgreSQL on AWS RDS with minimum or zero downtime](https://medium.com/preply-engineering/postgres-multimaster-34f2446d5e14)
- [Near-Zero Downtime Automated Upgrades of PostgreSQL Clusters in Cloud](https://www.2ndquadrant.com/en/blog/near-zero-downtime-automated-upgrades-postgresql-clusters-cloud/) (2ndQuadrant.com)
- [Updating a 50 terabyte PostgreSQL database](https://medium.com/adyen/updating-a-50-terabyte-postgresql-database-f64384b799e7)
- [P2] Consider performing upgrade to the newest minor version: `9.6.15`.
---
<a name="postgres-checkup_A003"> </a>
[Table of contents](#postgres-checkup_top)
# A003 Postgres Settings #
## Observations ##
Data collected: 2019-09-30 13:54:44 +0000 UTC
### Master (`10.220.16.101`) ###
| ▼ Category | Setting | Value | Unit | Pretty value |
|---------|---------|-------|------|--------------|
| Autovacuum|[autovacuum](https://postgresqlco.nf/en/doc/param/autovacuum) | on | | |
| Autovacuum|[autovacuum_analyze_scale_factor](https://postgresqlco.nf/en/doc/param/autovacuum_analyze_scale_factor) | 0.005 | | |
| Autovacuum|[autovacuum_analyze_threshold](https://postgresqlco.nf/en/doc/param/autovacuum_analyze_threshold) | 50 | | |
| Autovacuum|[autovacuum_freeze_max_age](https://postgresqlco.nf/en/doc/param/autovacuum_freeze_max_age) | 200000000 | | |
| Autovacuum|[autovacuum_max_workers](https://postgresqlco.nf/en/doc/param/autovacuum_max_workers) | 6 | | |
| Autovacuum|[autovacuum_multixact_freeze_max_age](https://postgresqlco.nf/en/doc/param/autovacuum_multixact_freeze_max_age) | 400000000 | | |
| Autovacuum|[autovacuum_naptime](https://postgresqlco.nf/en/doc/param/autovacuum_naptime) | 30 | s | |
| Autovacuum|[autovacuum_vacuum_cost_delay](https://postgresqlco.nf/en/doc/param/autovacuum_vacuum_cost_delay) | 5 | ms | |
| Autovacuum|[autovacuum_vacuum_cost_limit](https://postgresqlco.nf/en/doc/param/autovacuum_vacuum_cost_limit) | 6000 | | |
| Autovacuum|[autovacuum_vacuum_scale_factor](https://postgresqlco.nf/en/doc/param/autovacuum_vacuum_scale_factor) | 0.005 | | |
| Autovacuum|[autovacuum_vacuum_threshold](https://postgresqlco.nf/en/doc/param/autovacuum_vacuum_threshold) | 50 | | |
| Client Connection Defaults / Locale and Formatting|[DateStyle](https://postgresqlco.nf/en/doc/param/DateStyle) | ISO, MDY | | |
| Client Connection Defaults / Locale and Formatting|[IntervalStyle](https://postgresqlco.nf/en/doc/param/IntervalStyle) | postgres | | |
| Client Connection Defaults / Locale and Formatting|[TimeZone](https://postgresqlco.nf/en/doc/param/TimeZone) | GMT | | |
| Client Connection Defaults / Locale and Formatting|[client_encoding](https://postgresqlco.nf/en/doc/param/client_encoding) | UTF8 | | |
| Client Connection Defaults / Locale and Formatting|[default_text_search_config](https://postgresqlco.nf/en/doc/param/default_text_search_config) | pg_catalog.english | | |
| Client Connection Defaults / Locale and Formatting|[extra_float_digits](https://postgresqlco.nf/en/doc/param/extra_float_digits) | 0 | | |
| Client Connection Defaults / Locale and Formatting|[lc_collate](https://postgresqlco.nf/en/doc/param/lc_collate) | C.UTF-8 | | |
| Client Connection Defaults / Locale and Formatting|[lc_ctype](https://postgresqlco.nf/en/doc/param/lc_ctype) | C.UTF-8 | | |
| Client Connection Defaults / Locale and Formatting|[lc_messages](https://postgresqlco.nf/en/doc/param/lc_messages) | C | | |
| Client Connection Defaults / Locale and Formatting|[lc_monetary](https://postgresqlco.nf/en/doc/param/lc_monetary) | C | | |
| Client Connection Defaults / Locale and Formatting|[lc_numeric](https://postgresqlco.nf/en/doc/param/lc_numeric) | C | | |
| Client Connection Defaults / Locale and Formatting|[lc_time](https://postgresqlco.nf/en/doc/param/lc_time) | C | | |
| Client Connection Defaults / Locale and Formatting|[server_encoding](https://postgresqlco.nf/en/doc/param/server_encoding) | UTF8 | | |
| Client Connection Defaults / Locale and Formatting|[timezone_abbreviations](https://postgresqlco.nf/en/doc/param/timezone_abbreviations) | Default | | |
| Client Connection Defaults / Other Defaults|[dynamic_library_path](https://postgresqlco.nf/en/doc/param/dynamic_library_path) | $libdir | | |
| Client Connection Defaults / Other Defaults|[gin_fuzzy_search_limit](https://postgresqlco.nf/en/doc/param/gin_fuzzy_search_limit) | 0 | | |
| Client Connection Defaults / Other Defaults|[tcp_keepalives_count](https://postgresqlco.nf/en/doc/param/tcp_keepalives_count) | 9 | | |
| Client Connection Defaults / Other Defaults|[tcp_keepalives_idle](https://postgresqlco.nf/en/doc/param/tcp_keepalives_idle) | 300 | s | |
| Client Connection Defaults / Other Defaults|[tcp_keepalives_interval](https://postgresqlco.nf/en/doc/param/tcp_keepalives_interval) | 75 | s | |
| Client Connection Defaults / Shared Library Preloading|[local_preload_libraries](https://postgresqlco.nf/en/doc/param/local_preload_libraries) | | | |
| Client Connection Defaults / Shared Library Preloading|[session_preload_libraries](https://postgresqlco.nf/en/doc/param/session_preload_libraries) | | | |
| Client Connection Defaults / Shared Library Preloading|[shared_preload_libraries](https://postgresqlco.nf/en/doc/param/shared_preload_libraries) | pg_stat_statements | | |
| Client Connection Defaults / Statement Behavior|[bytea_output](https://postgresqlco.nf/en/doc/param/bytea_output) | hex | | |
| Client Connection Defaults / Statement Behavior|[check_function_bodies](https://postgresqlco.nf/en/doc/param/check_function_bodies) | on | | |
| Client Connection Defaults / Statement Behavior|[client_min_messages](https://postgresqlco.nf/en/doc/param/client_min_messages) | notice | | |
| Client Connection Defaults / Statement Behavior|[default_tablespace](https://postgresqlco.nf/en/doc/param/default_tablespace) | | | |
| Client Connection Defaults / Statement Behavior|[default_transaction_deferrable](https://postgresqlco.nf/en/doc/param/default_transaction_deferrable) | off | | |
| Client Connection Defaults / Statement Behavior|[default_transaction_isolation](https://postgresqlco.nf/en/doc/param/default_transaction_isolation) | read committed | | |
| Client Connection Defaults / Statement Behavior|[default_transaction_read_only](https://postgresqlco.nf/en/doc/param/default_transaction_read_only) | off | | |
| Client Connection Defaults / Statement Behavior|[gin_pending_list_limit](https://postgresqlco.nf/en/doc/param/gin_pending_list_limit) | 4096 | kB | 4.00 MiB |
| Client Connection Defaults / Statement Behavior|[idle_in_transaction_session_timeout](https://postgresqlco.nf/en/doc/param/idle_in_transaction_session_timeout) | 30000 | ms | |
| Client Connection Defaults / Statement Behavior|[lock_timeout](https://postgresqlco.nf/en/doc/param/lock_timeout) | 0 | ms | |
| Client Connection Defaults / Statement Behavior|[search_path](https://postgresqlco.nf/en/doc/param/search_path) | "$user", public | | |
| Client Connection Defaults / Statement Behavior|[session_replication_role](https://postgresqlco.nf/en/doc/param/session_replication_role) | origin | | |
| Client Connection Defaults / Statement Behavior|[statement_timeout](https://postgresqlco.nf/en/doc/param/statement_timeout) | 15000 | ms | |
| Client Connection Defaults / Statement Behavior|[temp_tablespaces](https://postgresqlco.nf/en/doc/param/temp_tablespaces) | | | |
| Client Connection Defaults / Statement Behavior|[transaction_deferrable](https://postgresqlco.nf/en/doc/param/transaction_deferrable) | off | | |
| Client Connection Defaults / Statement Behavior|[transaction_isolation](https://postgresqlco.nf/en/doc/param/transaction_isolation) | read committed | | |
| Client Connection Defaults / Statement Behavior|[transaction_read_only](https://postgresqlco.nf/en/doc/param/transaction_read_only) | off | | |
| Client Connection Defaults / Statement Behavior|[vacuum_freeze_min_age](https://postgresqlco.nf/en/doc/param/vacuum_freeze_min_age) | 50000000 | | |
| Client Connection Defaults / Statement Behavior|[vacuum_freeze_table_age](https://postgresqlco.nf/en/doc/param/vacuum_freeze_table_age) | 150000000 | | |
| Client Connection Defaults / Statement Behavior|[vacuum_multixact_freeze_min_age](https://postgresqlco.nf/en/doc/param/vacuum_multixact_freeze_min_age) | 5000000 | | |
| Client Connection Defaults / Statement Behavior|[vacuum_multixact_freeze_table_age](https://postgresqlco.nf/en/doc/param/vacuum_multixact_freeze_table_age) | 150000000 | | |
| Client Connection Defaults / Statement Behavior|[xmlbinary](https://postgresqlco.nf/en/doc/param/xmlbinary) | base64 | | |
| Client Connection Defaults / Statement Behavior|[xmloption](https://postgresqlco.nf/en/doc/param/xmloption) | content | | |
| Connections and Authentication / Connection Settings|[bonjour](https://postgresqlco.nf/en/doc/param/bonjour) | off | | |
| Connections and Authentication / Connection Settings|[bonjour_name](https://postgresqlco.nf/en/doc/param/bonjour_name) | | | |
| Connections and Authentication / Connection Settings|[listen_addresses](https://postgresqlco.nf/en/doc/param/listen_addresses) | 0.0.0.0 | | |
| Connections and Authentication / Connection Settings|[max_connections](https://postgresqlco.nf/en/doc/param/max_connections) | 300 | | |
| Connections and Authentication / Connection Settings|[port](https://postgresqlco.nf/en/doc/param/port) | 5432 | | |
| Connections and Authentication / Connection Settings|[superuser_reserved_connections](https://postgresqlco.nf/en/doc/param/superuser_reserved_connections) | 3 | | |
| Connections and Authentication / Connection Settings|[unix_socket_directories](https://postgresqlco.nf/en/doc/param/unix_socket_directories) | /var/opt/gitlab/postgresql | | |
| Connections and Authentication / Connection Settings|[unix_socket_group](https://postgresqlco.nf/en/doc/param/unix_socket_group) | | | |
| Connections and Authentication / Connection Settings|[unix_socket_permissions](https://postgresqlco.nf/en/doc/param/unix_socket_permissions) | 0777 | | |
| Connections and Authentication / Security and Authentication|[authentication_timeout](https://postgresqlco.nf/en/doc/param/authentication_timeout) | 60 | s | |
| Connections and Authentication / Security and Authentication|[db_user_namespace](https://postgresqlco.nf/en/doc/param/db_user_namespace) | off | | |
| Connections and Authentication / Security and Authentication|[krb_caseins_users](https://postgresqlco.nf/en/doc/param/krb_caseins_users) | off | | |
| Connections and Authentication / Security and Authentication|[krb_server_keyfile](https://postgresqlco.nf/en/doc/param/krb_server_keyfile) | FILE:/etc/postgresql-common/krb5.keytab | | |
| Connections and Authentication / Security and Authentication|[password_encryption](https://postgresqlco.nf/en/doc/param/password_encryption) | on | | |
| Connections and Authentication / Security and Authentication|[row_security](https://postgresqlco.nf/en/doc/param/row_security) | on | | |
| Connections and Authentication / Security and Authentication|[ssl](https://postgresqlco.nf/en/doc/param/ssl) | on | | |
| Connections and Authentication / Security and Authentication|[ssl_ca_file](https://postgresqlco.nf/en/doc/param/ssl_ca_file) | | | |
| Connections and Authentication / Security and Authentication|[ssl_cert_file](https://postgresqlco.nf/en/doc/param/ssl_cert_file) | /var/opt/gitlab/postgresql/server.crt | | |
| Connections and Authentication / Security and Authentication|[ssl_ciphers](https://postgresqlco.nf/en/doc/param/ssl_ciphers) | HIGH:MEDIUM:+3DES:!aNULL:!SSLv3:!TLSv1 | | |
| Connections and Authentication / Security and Authentication|[ssl_crl_file](https://postgresqlco.nf/en/doc/param/ssl_crl_file) | | | |
| Connections and Authentication / Security and Authentication|[ssl_ecdh_curve](https://postgresqlco.nf/en/doc/param/ssl_ecdh_curve) | prime256v1 | | |
| Connections and Authentication / Security and Authentication|[ssl_key_file](https://postgresqlco.nf/en/doc/param/ssl_key_file) | /var/opt/gitlab/postgresql/server.key | | |
| Connections and Authentication / Security and Authentication|[ssl_prefer_server_ciphers](https://postgresqlco.nf/en/doc/param/ssl_prefer_server_ciphers) | on | | |
| Customized Options|[pg_stat_statements.max](https://postgresqlco.nf/en/doc/param/pg_stat_statements.max) | 5000 | | |
| Customized Options|[pg_stat_statements.save](https://postgresqlco.nf/en/doc/param/pg_stat_statements.save) | on | | |
| Customized Options|[pg_stat_statements.track](https://postgresqlco.nf/en/doc/param/pg_stat_statements.track) | top | | |
| Customized Options|[pg_stat_statements.track_utility](https://postgresqlco.nf/en/doc/param/pg_stat_statements.track_utility) | on | | |
| Developer Options|[allow_system_table_mods](https://postgresqlco.nf/en/doc/param/allow_system_table_mods) | off | | |
| Developer Options|[ignore_checksum_failure](https://postgresqlco.nf/en/doc/param/ignore_checksum_failure) | off | | |
| Developer Options|[ignore_system_indexes](https://postgresqlco.nf/en/doc/param/ignore_system_indexes) | off | | |
| Developer Options|[post_auth_delay](https://postgresqlco.nf/en/doc/param/post_auth_delay) | 0 | s | |
| Developer Options|[pre_auth_delay](https://postgresqlco.nf/en/doc/param/pre_auth_delay) | 0 | s | |
| Developer Options|[trace_notify](https://postgresqlco.nf/en/doc/param/trace_notify) | off | | |
| Developer Options|[trace_recovery_messages](https://postgresqlco.nf/en/doc/param/trace_recovery_messages) | log | | |
| Developer Options|[trace_sort](https://postgresqlco.nf/en/doc/param/trace_sort) | off | | |
| Developer Options|[zero_damaged_pages](https://postgresqlco.nf/en/doc/param/zero_damaged_pages) | off | | |
| Error Handling|[data_sync_retry](https://postgresqlco.nf/en/doc/param/data_sync_retry) | off | | |
| Error Handling|[exit_on_error](https://postgresqlco.nf/en/doc/param/exit_on_error) | off | | |
| Error Handling|[restart_after_crash](https://postgresqlco.nf/en/doc/param/restart_after_crash) | on | | |
| File Locations|[config_file](https://postgresqlco.nf/en/doc/param/config_file) | /var/opt/gitlab/postgresql/postgresql.conf | | |
| File Locations|[data_directory](https://postgresqlco.nf/en/doc/param/data_directory) | /var/opt/gitlab/postgresql/data | | |
| File Locations|[external_pid_file](https://postgresqlco.nf/en/doc/param/external_pid_file) | | | |
| File Locations|[hba_file](https://postgresqlco.nf/en/doc/param/hba_file) | /var/opt/gitlab/postgresql/data/pg_hba.conf | | |
| File Locations|[ident_file](https://postgresqlco.nf/en/doc/param/ident_file) | /var/opt/gitlab/postgresql/pg_ident.conf | | |
| Lock Management|[deadlock_timeout](https://postgresqlco.nf/en/doc/param/deadlock_timeout) | 5000 | ms | |
| Lock Management|[max_locks_per_transaction](https://postgresqlco.nf/en/doc/param/max_locks_per_transaction) | 128 | | |
| Lock Management|[max_pred_locks_per_transaction](https://postgresqlco.nf/en/doc/param/max_pred_locks_per_transaction) | 64 | | |
| Preset Options|[block_size](https://postgresqlco.nf/en/doc/param/block_size) | 8192 | | |
| Preset Options|[data_checksums](https://postgresqlco.nf/en/doc/param/data_checksums) | off | | |
| Preset Options|[debug_assertions](https://postgresqlco.nf/en/doc/param/debug_assertions) | off | | |
| Preset Options|[integer_datetimes](https://postgresqlco.nf/en/doc/param/integer_datetimes) | on | | |
| Preset Options|[max_function_args](https://postgresqlco.nf/en/doc/param/max_function_args) | 100 | | |
| Preset Options|[max_identifier_length](https://postgresqlco.nf/en/doc/param/max_identifier_length) | 63 | | |
| Preset Options|[max_index_keys](https://postgresqlco.nf/en/doc/param/max_index_keys) | 32 | | |
| Preset Options|[segment_size](https://postgresqlco.nf/en/doc/param/segment_size) | 131072 | 8kB | 1.00 GiB |
| Preset Options|[server_version](https://postgresqlco.nf/en/doc/param/server_version) | 9.6.15 | | |
| Preset Options|[server_version_num](https://postgresqlco.nf/en/doc/param/server_version_num) | 90615 | | |
| Preset Options|[wal_block_size](https://postgresqlco.nf/en/doc/param/wal_block_size) | 8192 | | |
| Preset Options|[wal_segment_size](https://postgresqlco.nf/en/doc/param/wal_segment_size) | 2048 | 8kB | 16.00 MiB |
| Process Title|[cluster_name](https://postgresqlco.nf/en/doc/param/cluster_name) | pg-ha-cluster | | |
| Process Title|[update_process_title](https://postgresqlco.nf/en/doc/param/update_process_title) | on | | |
| Query Tuning / Genetic Query Optimizer|[geqo](https://postgresqlco.nf/en/doc/param/geqo) | on | | |
| Query Tuning / Genetic Query Optimizer|[geqo_effort](https://postgresqlco.nf/en/doc/param/geqo_effort) | 5 | | |
| Query Tuning / Genetic Query Optimizer|[geqo_generations](https://postgresqlco.nf/en/doc/param/geqo_generations) | 0 | | |
| Query Tuning / Genetic Query Optimizer|[geqo_pool_size](https://postgresqlco.nf/en/doc/param/geqo_pool_size) | 0 | | |
| Query Tuning / Genetic Query Optimizer|[geqo_seed](https://postgresqlco.nf/en/doc/param/geqo_seed) | 0 | | |
| Query Tuning / Genetic Query Optimizer|[geqo_selection_bias](https://postgresqlco.nf/en/doc/param/geqo_selection_bias) | 2 | | |
| Query Tuning / Genetic Query Optimizer|[geqo_threshold](https://postgresqlco.nf/en/doc/param/geqo_threshold) | 12 | | |
| Query Tuning / Other Planner Options|[constraint_exclusion](https://postgresqlco.nf/en/doc/param/constraint_exclusion) | partition | | |
| Query Tuning / Other Planner Options|[cursor_tuple_fraction](https://postgresqlco.nf/en/doc/param/cursor_tuple_fraction) | 0.1 | | |
| Query Tuning / Other Planner Options|[default_statistics_target](https://postgresqlco.nf/en/doc/param/default_statistics_target) | 1000 | | |
| Query Tuning / Other Planner Options|[force_parallel_mode](https://postgresqlco.nf/en/doc/param/force_parallel_mode) | off | | |
| Query Tuning / Other Planner Options|[from_collapse_limit](https://postgresqlco.nf/en/doc/param/from_collapse_limit) | 8 | | |
| Query Tuning / Other Planner Options|[join_collapse_limit](https://postgresqlco.nf/en/doc/param/join_collapse_limit) | 8 | | |
| Query Tuning / Planner Cost Constants|[cpu_index_tuple_cost](https://postgresqlco.nf/en/doc/param/cpu_index_tuple_cost) | 0.005 | | |
| Query Tuning / Planner Cost Constants|[cpu_operator_cost](https://postgresqlco.nf/en/doc/param/cpu_operator_cost) | 0.0025 | | |
| Query Tuning / Planner Cost Constants|[cpu_tuple_cost](https://postgresqlco.nf/en/doc/param/cpu_tuple_cost) | 0.01 | | |
| Query Tuning / Planner Cost Constants|[effective_cache_size](https://postgresqlco.nf/en/doc/param/effective_cache_size) | 43352064 | 8kB | 330.75 GiB |
| Query Tuning / Planner Cost Constants|[min_parallel_relation_size](https://postgresqlco.nf/en/doc/param/min_parallel_relation_size) | 1024 | 8kB | 8.00 MiB |
| Query Tuning / Planner Cost Constants|[parallel_setup_cost](https://postgresqlco.nf/en/doc/param/parallel_setup_cost) | 1000 | | |
| Query Tuning / Planner Cost Constants|[parallel_tuple_cost](https://postgresqlco.nf/en/doc/param/parallel_tuple_cost) | 0.1 | | |
| Query Tuning / Planner Cost Constants|[random_page_cost](https://postgresqlco.nf/en/doc/param/random_page_cost) | 1.5 | | |
| Query Tuning / Planner Cost Constants|[seq_page_cost](https://postgresqlco.nf/en/doc/param/seq_page_cost) | 4 | | |
| Query Tuning / Planner Method Configuration|[enable_bitmapscan](https://postgresqlco.nf/en/doc/param/enable_bitmapscan) | on | | |
| Query Tuning / Planner Method Configuration|[enable_hashagg](https://postgresqlco.nf/en/doc/param/enable_hashagg) | on | | |
| Query Tuning / Planner Method Configuration|[enable_hashjoin](https://postgresqlco.nf/en/doc/param/enable_hashjoin) | on | | |
| Query Tuning / Planner Method Configuration|[enable_indexonlyscan](https://postgresqlco.nf/en/doc/param/enable_indexonlyscan) | on | | |
| Query Tuning / Planner Method Configuration|[enable_indexscan](https://postgresqlco.nf/en/doc/param/enable_indexscan) | on | | |
| Query Tuning / Planner Method Configuration|[enable_material](https://postgresqlco.nf/en/doc/param/enable_material) | on | | |
| Query Tuning / Planner Method Configuration|[enable_mergejoin](https://postgresqlco.nf/en/doc/param/enable_mergejoin) | on | | |
| Query Tuning / Planner Method Configuration|[enable_nestloop](https://postgresqlco.nf/en/doc/param/enable_nestloop) | on | | |
| Query Tuning / Planner Method Configuration|[enable_seqscan](https://postgresqlco.nf/en/doc/param/enable_seqscan) | on | | |
| Query Tuning / Planner Method Configuration|[enable_sort](https://postgresqlco.nf/en/doc/param/enable_sort) | on | | |
| Query Tuning / Planner Method Configuration|[enable_tidscan](https://postgresqlco.nf/en/doc/param/enable_tidscan) | on | | |
| Replication|[track_commit_timestamp](https://postgresqlco.nf/en/doc/param/track_commit_timestamp) | off | | |
| Replication / Master Server|[synchronous_standby_names](https://postgresqlco.nf/en/doc/param/synchronous_standby_names) | | | |
| Replication / Master Server|[vacuum_defer_cleanup_age](https://postgresqlco.nf/en/doc/param/vacuum_defer_cleanup_age) | 0 | | |
| Replication / Sending Servers|[max_replication_slots](https://postgresqlco.nf/en/doc/param/max_replication_slots) | 32 | | |
| Replication / Sending Servers|[max_wal_senders](https://postgresqlco.nf/en/doc/param/max_wal_senders) | 32 | | |
| Replication / Sending Servers|[wal_keep_segments](https://postgresqlco.nf/en/doc/param/wal_keep_segments) | 2048 | | |
| Replication / Sending Servers|[wal_sender_timeout](https://postgresqlco.nf/en/doc/param/wal_sender_timeout) | 60000 | ms | |
| Replication / Standby Servers|[hot_standby](https://postgresqlco.nf/en/doc/param/hot_standby) | on | | |
| Replication / Standby Servers|[hot_standby_feedback](https://postgresqlco.nf/en/doc/param/hot_standby_feedback) | on | | |
| Replication / Standby Servers|[max_standby_archive_delay](https://postgresqlco.nf/en/doc/param/max_standby_archive_delay) | 30000 | ms | |
| Replication / Standby Servers|[max_standby_streaming_delay](https://postgresqlco.nf/en/doc/param/max_standby_streaming_delay) | 30000 | ms | |
| Replication / Standby Servers|[wal_receiver_status_interval](https://postgresqlco.nf/en/doc/param/wal_receiver_status_interval) | 10 | s | |
| Replication / Standby Servers|[wal_receiver_timeout](https://postgresqlco.nf/en/doc/param/wal_receiver_timeout) | 60000 | ms | |
| Replication / Standby Servers|[wal_retrieve_retry_interval](https://postgresqlco.nf/en/doc/param/wal_retrieve_retry_interval) | 5000 | ms | |
| Reporting and Logging / What to Log|[application_name](https://postgresqlco.nf/en/doc/param/application_name) | checkup | | |
| Reporting and Logging / What to Log|[debug_pretty_print](https://postgresqlco.nf/en/doc/param/debug_pretty_print) | on | | |
| Reporting and Logging / What to Log|[debug_print_parse](https://postgresqlco.nf/en/doc/param/debug_print_parse) | off | | |
| Reporting and Logging / What to Log|[debug_print_plan](https://postgresqlco.nf/en/doc/param/debug_print_plan) | off | | |
| Reporting and Logging / What to Log|[debug_print_rewritten](https://postgresqlco.nf/en/doc/param/debug_print_rewritten) | off | | |
| Reporting and Logging / What to Log|[log_autovacuum_min_duration](https://postgresqlco.nf/en/doc/param/log_autovacuum_min_duration) | 0 | ms | |
| Reporting and Logging / What to Log|[log_checkpoints](https://postgresqlco.nf/en/doc/param/log_checkpoints) | on | | |
| Reporting and Logging / What to Log|[log_connections](https://postgresqlco.nf/en/doc/param/log_connections) | off | | |
| Reporting and Logging / What to Log|[log_disconnections](https://postgresqlco.nf/en/doc/param/log_disconnections) | off | | |
| Reporting and Logging / What to Log|[log_duration](https://postgresqlco.nf/en/doc/param/log_duration) | off | | |
| Reporting and Logging / What to Log|[log_error_verbosity](https://postgresqlco.nf/en/doc/param/log_error_verbosity) | default | | |
| Reporting and Logging / What to Log|[log_hostname](https://postgresqlco.nf/en/doc/param/log_hostname) | off | | |
| Reporting and Logging / What to Log|[log_line_prefix](https://postgresqlco.nf/en/doc/param/log_line_prefix) | %m [%p, %x]: [%l-1] user=%u, db=%d, app=%a, client=%h | | |
| Reporting and Logging / What to Log|[log_lock_waits](https://postgresqlco.nf/en/doc/param/log_lock_waits) | on | | |
| Reporting and Logging / What to Log|[log_replication_commands](https://postgresqlco.nf/en/doc/param/log_replication_commands) | off | | |
| Reporting and Logging / What to Log|[log_statement](https://postgresqlco.nf/en/doc/param/log_statement) | ddl | | |
| Reporting and Logging / What to Log|[log_temp_files](https://postgresqlco.nf/en/doc/param/log_temp_files) | 0 | kB | 0.00 bytes |
| Reporting and Logging / What to Log|[log_timezone](https://postgresqlco.nf/en/doc/param/log_timezone) | GMT | | |
| Reporting and Logging / When to Log|[log_min_duration_statement](https://postgresqlco.nf/en/doc/param/log_min_duration_statement) | 1000 | ms | |
| Reporting and Logging / When to Log|[log_min_error_statement](https://postgresqlco.nf/en/doc/param/log_min_error_statement) | error | | |
| Reporting and Logging / When to Log|[log_min_messages](https://postgresqlco.nf/en/doc/param/log_min_messages) | warning | | |
| Reporting and Logging / Where to Log|[event_source](https://postgresqlco.nf/en/doc/param/event_source) | PostgreSQL | | |
| Reporting and Logging / Where to Log|[log_destination](https://postgresqlco.nf/en/doc/param/log_destination) | stderr | | |
| Reporting and Logging / Where to Log|[log_directory](https://postgresqlco.nf/en/doc/param/log_directory) | /var/log/gitlab/postgresql | | |
| Reporting and Logging / Where to Log|[log_file_mode](https://postgresqlco.nf/en/doc/param/log_file_mode) | 0640 | | |
| Reporting and Logging / Where to Log|[log_filename](https://postgresqlco.nf/en/doc/param/log_filename) | postgresql.log | | |
| Reporting and Logging / Where to Log|[log_rotation_age](https://postgresqlco.nf/en/doc/param/log_rotation_age) | 0 | min | |
| Reporting and Logging / Where to Log|[log_rotation_size](https://postgresqlco.nf/en/doc/param/log_rotation_size) | 0 | kB | 0.00 bytes |
| Reporting and Logging / Where to Log|[log_truncate_on_rotation](https://postgresqlco.nf/en/doc/param/log_truncate_on_rotation) | off | | |
| Reporting and Logging / Where to Log|[logging_collector](https://postgresqlco.nf/en/doc/param/logging_collector) | on | | |
| Reporting and Logging / Where to Log|[syslog_facility](https://postgresqlco.nf/en/doc/param/syslog_facility) | local0 | | |
| Reporting and Logging / Where to Log|[syslog_ident](https://postgresqlco.nf/en/doc/param/syslog_ident) | postgres | | |
| Reporting and Logging / Where to Log|[syslog_sequence_numbers](https://postgresqlco.nf/en/doc/param/syslog_sequence_numbers) | on | | |
| Reporting and Logging / Where to Log|[syslog_split_messages](https://postgresqlco.nf/en/doc/param/syslog_split_messages) | on | | |
| Resource Usage / Asynchronous Behavior|[backend_flush_after](https://postgresqlco.nf/en/doc/param/backend_flush_after) | 0 | 8kB | 0.00 bytes |
| Resource Usage / Asynchronous Behavior|[effective_io_concurrency](https://postgresqlco.nf/en/doc/param/effective_io_concurrency) | 100 | | |
| Resource Usage / Asynchronous Behavior|[max_parallel_workers_per_gather](https://postgresqlco.nf/en/doc/param/max_parallel_workers_per_gather) | 0 | | |
| Resource Usage / Asynchronous Behavior|[max_worker_processes](https://postgresqlco.nf/en/doc/param/max_worker_processes) | 8 | | |
| Resource Usage / Asynchronous Behavior|[old_snapshot_threshold](https://postgresqlco.nf/en/doc/param/old_snapshot_threshold) | -1 | min | |
| Resource Usage / Background Writer|[bgwriter_delay](https://postgresqlco.nf/en/doc/param/bgwriter_delay) | 200 | ms | |
| Resource Usage / Background Writer|[bgwriter_flush_after](https://postgresqlco.nf/en/doc/param/bgwriter_flush_after) | 64 | 8kB | 512.00 KiB |
| Resource Usage / Background Writer|[bgwriter_lru_maxpages](https://postgresqlco.nf/en/doc/param/bgwriter_lru_maxpages) | 100 | | |
| Resource Usage / Background Writer|[bgwriter_lru_multiplier](https://postgresqlco.nf/en/doc/param/bgwriter_lru_multiplier) | 2 | | |
| Resource Usage / Cost-Based Vacuum Delay|[vacuum_cost_delay](https://postgresqlco.nf/en/doc/param/vacuum_cost_delay) | 0 | ms | |
| Resource Usage / Cost-Based Vacuum Delay|[vacuum_cost_limit](https://postgresqlco.nf/en/doc/param/vacuum_cost_limit) | 200 | | |
| Resource Usage / Cost-Based Vacuum Delay|[vacuum_cost_page_dirty](https://postgresqlco.nf/en/doc/param/vacuum_cost_page_dirty) | 20 | | |
| Resource Usage / Cost-Based Vacuum Delay|[vacuum_cost_page_hit](https://postgresqlco.nf/en/doc/param/vacuum_cost_page_hit) | 1 | | |
| Resource Usage / Cost-Based Vacuum Delay|[vacuum_cost_page_miss](https://postgresqlco.nf/en/doc/param/vacuum_cost_page_miss) | 10 | | |
| Resource Usage / Disk|[temp_file_limit](https://postgresqlco.nf/en/doc/param/temp_file_limit) | -1 | kB | |
| Resource Usage / Kernel Resources|[max_files_per_process](https://postgresqlco.nf/en/doc/param/max_files_per_process) | 1000 | | |
| Resource Usage / Memory|[autovacuum_work_mem](https://postgresqlco.nf/en/doc/param/autovacuum_work_mem) | -1 | kB | |
| Resource Usage / Memory|[dynamic_shared_memory_type](https://postgresqlco.nf/en/doc/param/dynamic_shared_memory_type) | posix | | |
| Resource Usage / Memory|[huge_pages](https://postgresqlco.nf/en/doc/param/huge_pages) | try | | |
| Resource Usage / Memory|[maintenance_work_mem](https://postgresqlco.nf/en/doc/param/maintenance_work_mem) | 2097152 | kB | 2.00 GiB |
| Resource Usage / Memory|[max_prepared_transactions](https://postgresqlco.nf/en/doc/param/max_prepared_transactions) | 0 | | |
| Resource Usage / Memory|[max_stack_depth](https://postgresqlco.nf/en/doc/param/max_stack_depth) | 2048 | kB | 2.00 MiB |
| Resource Usage / Memory|[replacement_sort_tuples](https://postgresqlco.nf/en/doc/param/replacement_sort_tuples) | 150000 | | |
| Resource Usage / Memory|[shared_buffers](https://postgresqlco.nf/en/doc/param/shared_buffers) | 14450688 | 8kB | 110.25 GiB |
| Resource Usage / Memory|[temp_buffers](https://postgresqlco.nf/en/doc/param/temp_buffers) | 1024 | 8kB | 8.00 MiB |
| Resource Usage / Memory|[track_activity_query_size](https://postgresqlco.nf/en/doc/param/track_activity_query_size) | 1024 | | |
| Resource Usage / Memory|[work_mem](https://postgresqlco.nf/en/doc/param/work_mem) | 102400 | kB | 100.00 MiB |
| Statistics / Monitoring|[log_executor_stats](https://postgresqlco.nf/en/doc/param/log_executor_stats) | off | | |
| Statistics / Monitoring|[log_parser_stats](https://postgresqlco.nf/en/doc/param/log_parser_stats) | off | | |
| Statistics / Monitoring|[log_planner_stats](https://postgresqlco.nf/en/doc/param/log_planner_stats) | off | | |
| Statistics / Monitoring|[log_statement_stats](https://postgresqlco.nf/en/doc/param/log_statement_stats) | off | | |
| Statistics / Query and Index Statistics Collector|[stats_temp_directory](https://postgresqlco.nf/en/doc/param/stats_temp_directory) | pg_stat_tmp | | |
| Statistics / Query and Index Statistics Collector|[track_activities](https://postgresqlco.nf/en/doc/param/track_activities) | on | | |
| Statistics / Query and Index Statistics Collector|[track_counts](https://postgresqlco.nf/en/doc/param/track_counts) | on | | |
| Statistics / Query and Index Statistics Collector|[track_functions](https://postgresqlco.nf/en/doc/param/track_functions) | none | | |
| Statistics / Query and Index Statistics Collector|[track_io_timing](https://postgresqlco.nf/en/doc/param/track_io_timing) | on | | |
| Version and Platform Compatibility / Other Platforms and Clients|[transform_null_equals](https://postgresqlco.nf/en/doc/param/transform_null_equals) | off | | |
| Version and Platform Compatibility / Previous PostgreSQL Versions|[array_nulls](https://postgresqlco.nf/en/doc/param/array_nulls) | on | | |
| Version and Platform Compatibility / Previous PostgreSQL Versions|[backslash_quote](https://postgresqlco.nf/en/doc/param/backslash_quote) | safe_encoding | | |
| Version and Platform Compatibility / Previous PostgreSQL Versions|[default_with_oids](https://postgresqlco.nf/en/doc/param/default_with_oids) | off | | |
| Version and Platform Compatibility / Previous PostgreSQL Versions|[escape_string_warning](https://postgresqlco.nf/en/doc/param/escape_string_warning) | on | | |
| Version and Platform Compatibility / Previous PostgreSQL Versions|[lo_compat_privileges](https://postgresqlco.nf/en/doc/param/lo_compat_privileges) | off | | |
| Version and Platform Compatibility / Previous PostgreSQL Versions|[operator_precedence_warning](https://postgresqlco.nf/en/doc/param/operator_precedence_warning) | off | | |
| Version and Platform Compatibility / Previous PostgreSQL Versions|[quote_all_identifiers](https://postgresqlco.nf/en/doc/param/quote_all_identifiers) | off | | |
| Version and Platform Compatibility / Previous PostgreSQL Versions|[sql_inheritance](https://postgresqlco.nf/en/doc/param/sql_inheritance) | on | | |
| Version and Platform Compatibility / Previous PostgreSQL Versions|[standard_conforming_strings](https://postgresqlco.nf/en/doc/param/standard_conforming_strings) | on | | |
| Version and Platform Compatibility / Previous PostgreSQL Versions|[synchronize_seqscans](https://postgresqlco.nf/en/doc/param/synchronize_seqscans) | on | | |
| Write-Ahead Log / Archiving|[archive_command](https://postgresqlco.nf/en/doc/param/archive_command) | /usr/bin/envdir /etc/wal-e.d/env /opt/wal-e/bin/wal-e wal-push %p | | |
| Write-Ahead Log / Archiving|[archive_mode](https://postgresqlco.nf/en/doc/param/archive_mode) | on | | |
| Write-Ahead Log / Archiving|[archive_timeout](https://postgresqlco.nf/en/doc/param/archive_timeout) | 60 | s | |
| Write-Ahead Log / Checkpoints|[checkpoint_completion_target](https://postgresqlco.nf/en/doc/param/checkpoint_completion_target) | 0.7 | | |
| Write-Ahead Log / Checkpoints|[checkpoint_flush_after](https://postgresqlco.nf/en/doc/param/checkpoint_flush_after) | 32 | 8kB | 256.00 KiB |
| Write-Ahead Log / Checkpoints|[checkpoint_timeout](https://postgresqlco.nf/en/doc/param/checkpoint_timeout) | 300 | s | |
| Write-Ahead Log / Checkpoints|[checkpoint_warning](https://postgresqlco.nf/en/doc/param/checkpoint_warning) | 30 | s | |
| Write-Ahead Log / Checkpoints|[max_wal_size](https://postgresqlco.nf/en/doc/param/max_wal_size) | 320 | 16MB | 5.00 GiB |
| Write-Ahead Log / Checkpoints|[min_wal_size](https://postgresqlco.nf/en/doc/param/min_wal_size) | 5 | 16MB | 80.00 MiB |
| Write-Ahead Log / Settings|[commit_delay](https://postgresqlco.nf/en/doc/param/commit_delay) | 0 | | |
| Write-Ahead Log / Settings|[commit_siblings](https://postgresqlco.nf/en/doc/param/commit_siblings) | 5 | | |
| Write-Ahead Log / Settings|[fsync](https://postgresqlco.nf/en/doc/param/fsync) | on | | |
| Write-Ahead Log / Settings|[full_page_writes](https://postgresqlco.nf/en/doc/param/full_page_writes) | on | | |
| Write-Ahead Log / Settings|[synchronous_commit](https://postgresqlco.nf/en/doc/param/synchronous_commit) | on | | |
| Write-Ahead Log / Settings|[wal_buffers](https://postgresqlco.nf/en/doc/param/wal_buffers) | 2048 | 8kB | 16.00 MiB |
| Write-Ahead Log / Settings|[wal_compression](https://postgresqlco.nf/en/doc/param/wal_compression) | off | | |
| Write-Ahead Log / Settings|[wal_level](https://postgresqlco.nf/en/doc/param/wal_level) | replica | | |
| Write-Ahead Log / Settings|[wal_log_hints](https://postgresqlco.nf/en/doc/param/wal_log_hints) | on | | |
| Write-Ahead Log / Settings|[wal_sync_method](https://postgresqlco.nf/en/doc/param/wal_sync_method) | fdatasync | | |
| Write-Ahead Log / Settings|[wal_writer_delay](https://postgresqlco.nf/en/doc/param/wal_writer_delay) | 200 | ms | |
| Write-Ahead Log / Settings|[wal_writer_flush_after](https://postgresqlco.nf/en/doc/param/wal_writer_flush_after) | 128 | 8kB | 1.00 MiB |
---
<a name="postgres-checkup_A004"> </a>
[Table of contents](#postgres-checkup_top)
# A004 Cluster Information #
## Observations ##
Data collected: 2019-09-30 13:55:25 +0000 UTC
|▼ Indicator | 10.220.16.101 | 10.220.16.102 | 10.220.16.103 | 10.220.16.104 | 10.220.16.105 | 10.220.16.106 | 10.220.16.107 | 10.220.16.108 | 10.220.16.109 |
|--------|-------|-------- |-------- |-------- |-------- |-------- |-------- |-------- |-------- |
|Config file |/var/opt/gitlab/postgresql/postgresql.conf|/var/opt/gitlab/postgresql/postgresql.conf|/var/opt/gitlab/postgresql/postgresql.conf|/var/opt/gitlab/postgresql/postgresql.conf|/var/opt/gitlab/postgresql/postgresql.conf|/var/opt/gitlab/postgresql/postgresql.conf|/var/opt/gitlab/postgresql/postgresql.conf|/var/opt/gitlab/postgresql/postgresql.conf|/var/opt/gitlab/postgresql/postgresql.conf|
|Role |Master|Replica (delay: 00:00:00; paused: false)|Replica (delay: 00:00:00; paused: false)|Replica (delay: 00:00:00; paused: false)|Replica (delay: 00:00:00; paused: false)|Replica (delay: 00:00:00; paused: false)|Replica (delay: 00:00:00; paused: false)|Replica (delay: 00:00:00; paused: false)|Replica (delay: 00:00:00; paused: false)|
|Replicas |async/streaming: 10.220.16.111, 10.220.16.106, 10.220.16.110, 10.220.16.103, 10.220.16.108, 10.220.16.105, 10.220.16.102, 10.220.16.107, 10.220.16.109, 10.220.16.112, 10.220.16.104|<no value>|<no value>|<no value>|<no value>|<no value>|<no value>|<no value>|<no value>|
|Started At |2019-09-09 18:31:16+00|2019-09-09 20:34:44+00|2019-09-09 20:34:37+00|2019-09-09 20:34:35+00|2019-09-09 20:34:42+00|2019-09-09 20:34:06+00|2019-09-09 20:34:44+00|2019-09-09 23:09:19+00|2019-09-09 20:34:25+00|
|Uptime |20 days 19:05:26|20 days 17:04:07|20 days 17:05:25|20 days 17:06:52|20 days 17:08:33|20 days 17:11:20|20 days 17:13:31|20 days 14:42:06|20 days 17:21:01|
|Checkpoints |12025|311118|310047|311082|311010|308270|308535|307732|307875|
|Forced Checkpoints |77.5%|99.6%|99.6%|99.6%|99.6%|99.6%|99.6%|99.6%|99.6%|
|Checkpoint MB/sec |13.047043|14.911349|14.913182|14.914270|14.915614|14.914721|14.915471|14.957235|14.919222|
|Database Name |gitlabhq_production|gitlabhq_production|gitlabhq_production|gitlabhq_production|gitlabhq_production|gitlabhq_production|gitlabhq_production|gitlabhq_production|gitlabhq_production|
|Database Size |4079 GB|4079 GB|4079 GB|4079 GB|4079 GB|4079 GB|4080 GB|4080 GB|4080 GB|
|Stats Since |2019-09-09 18:31:36+00|2019-09-09 20:34:45+00|2019-09-09 20:34:37+00|2019-09-09 20:34:35+00|2019-09-09 20:34:43+00|2019-09-09 20:34:09+00|2019-09-09 20:34:46+00|2019-09-09 23:15:42+00|2019-09-09 20:34:25+00|
|Stats Age |20 days 19:05:06|20 days 17:04:05|20 days 17:05:25|20 days 17:06:52|20 days 17:08:32|20 days 17:11:17|20 days 17:13:28|20 days 14:35:43|20 days 17:21:01|
|Cache Effectiveness |99.39%|99.82%|99.81%|99.82%|99.82%|99.82%|99.81%|99.81%|99.81%|
|Successful Commits |99.71%|100.00%|100.00%|100.00%|100.00%|100.00%|100.00%|100.00%|100.00%|
|Conflicts |0|0|0|1|0|3|0|0|0|
|Temp Files: total size |138 GB|1202 GB|1195 GB|1191 GB|1202 GB|1181 GB|1201 GB|1181 GB|1232 GB|
|Temp Files: total number of files |847|6825|6823|6772|6756|6665|6919|6663|7113|
|Temp Files: total number of files per day |40|325|324|322|321|317|329|317|338|
|Temp Files: avg file size |167 MB|180 MB|179 MB|180 MB|182 MB|182 MB|178 MB|182 MB|177 MB|
|Deadlocks |20|0|0|0|0|0|0|0|0|
|Deadlocks per day |0|0|0|0|0|0|0|0|0|
### Databases sizes ###
| Database | ▼ Size |
|----------|--------|
| `gitlabhq_production` | 3.99 TiB |
| `postgres` | 6.99 MiB |
| `template0` | 6.91 MiB |
| `template1` | 6.91 MiB |
## Conclusions ##
## Recommendations ##
---
<a name="postgres-checkup_A005"> </a>
[Table of contents](#postgres-checkup_top)
# A005 Extensions #
## Observations ##
Data collected: 2019-09-30 13:55:27 +0000 UTC
### Master (`10.220.16.101`) ###
| ▼ Database | Extension name | Installed version | Default version | Is old |
|---------|----------------|-------------------|-----------------|--------|
| `gitlabhq_production` | `btree_gin` | 1.0 | 1.0 | <no value> |
| `gitlabhq_production` | `dblink` | 1.2 | 1.2 | <no value> |
| `gitlabhq_production` | `pageinspect` | 1.5 | 1.5 | <no value> |
| `gitlabhq_production` | `pg_buffercache` | 1.2 | 1.2 | <no value> |
| `gitlabhq_production` | `pg_repack` | 1.4.4 | 1.4.4 | <no value> |
| `gitlabhq_production` | `pg_stat_statements` | 1.4 | 1.4 | <no value> |
| `gitlabhq_production` | `pg_trgm` | 1.3 | 1.3 | <no value> |
| `gitlabhq_production` | `pgstattuple` | 1.4 | 1.4 | <no value> |
| `gitlabhq_production` | `plpgsql` | 1.0 | 1.0 | <no value> |
## Conclusions ##
## Recommendations ##
---
<a name="postgres-checkup_A006"> </a>
[Table of contents](#postgres-checkup_top)
# A006 Postgres Setting Deviations #
## Observations ##
Data collected: 2019-09-30 13:55:29 +0000 UTC
### Settings (pg_settings) that Differ ###
▼ Setting | 10.220.16.101 | 10.220.16.102 | 10.220.16.103 | 10.220.16.104 | 10.220.16.105 | 10.220.16.106 | 10.220.16.107 | 10.220.16.108 | 10.220.16.109 |
|--------|-------|--------|--------|--------|--------|--------|--------|--------|--------|
| [server_version](https://postgresqlco.nf/en/doc/param/server_version) |9.6.15 |9.6.14 |9.6.14 |9.6.14 |9.6.14 |9.6.14 |9.6.15 |9.6.15 |9.6.15 |
| [server_version_num](https://postgresqlco.nf/en/doc/param/server_version_num) |90615 |90614 |90614 |90614 |90614 |90614 |90615 |90615 |90615 |
### Configs(pg_config) that differ ###
▼ Config | 10.220.16.101 | 10.220.16.102 | 10.220.16.103 | 10.220.16.104 | 10.220.16.105 | 10.220.16.106 | 10.220.16.107 | 10.220.16.108 | 10.220.16.109
--------|-------|-------- |-------- |-------- |-------- |-------- |-------- |-------- |--------
CONFIGURE | '--build=x86_64-linux-gnu' '--prefix=/usr' '--includedir=/usr/include' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-silent-rules' '--libdir=/usr/lib/x86_64-linux-gnu' '--libexecdir=/usr/lib/x86_64-linux-gnu' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-tcl' '--with-perl' '--with-python' '--with-pam' '--with-openssl' '--with-libxml' '--with-libxslt' 'PYTHON=/usr/bin/python' '--mandir=/usr/share/postgresql/9.6/man' '--docdir=/usr/share/doc/postgresql-doc-9.6' '--sysconfdir=/etc/postgresql-common' '--datarootdir=/usr/share/' '--datadir=/usr/share/postgresql/9.6' '--bindir=/usr/lib/postgresql/9.6/bin' '--libdir=/usr/lib/x86_64-linux-gnu/' '--libexecdir=/usr/lib/postgresql/' '--includedir=/usr/include/postgresql/' '--enable-nls' '--enable-integer-datetimes' '--enable-thread-safety' '--enable-tap-tests' '--enable-debug' '--enable-dtrace' '--disable-rpath' '--with-uuid=e2fs' '--with-gnu-ld' '--with-pgport=5432' '--with-system-tzdata=/usr/share/zoneinfo' '--with-systemd' '--with-selinux' 'MKDIR_P=/bin/mkdir -p' 'TAR=/bin/tar' 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC -pie -fno-omit-frame-pointer' 'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now' 'DPKG_VERSION=9.6.15-1.pgdg16.04+1' 'DPKG_VENDOR=Ubuntu' '--with-gssapi' '--with-ldap' '--with-includes=/usr/include/mit-krb5' '--with-libs=/usr/lib/mit-krb5' '--with-libs=/usr/lib/x86_64-linux-gnu/mit-krb5' 'build_alias=x86_64-linux-gnu' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' | '--build=x86_64-linux-gnu' '--prefix=/usr' '--includedir=/usr/include' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-silent-rules' '--libdir=/usr/lib/x86_64-linux-gnu' '--libexecdir=/usr/lib/x86_64-linux-gnu' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-tcl' '--with-perl' '--with-python' '--with-pam' '--with-openssl' '--with-libxml' '--with-libxslt' 'PYTHON=/usr/bin/python' '--mandir=/usr/share/postgresql/9.6/man' '--docdir=/usr/share/doc/postgresql-doc-9.6' '--sysconfdir=/etc/postgresql-common' '--datarootdir=/usr/share/' '--datadir=/usr/share/postgresql/9.6' '--bindir=/usr/lib/postgresql/9.6/bin' '--libdir=/usr/lib/x86_64-linux-gnu/' '--libexecdir=/usr/lib/postgresql/' '--includedir=/usr/include/postgresql/' '--enable-nls' '--enable-integer-datetimes' '--enable-thread-safety' '--enable-tap-tests' '--enable-debug' '--enable-dtrace' '--disable-rpath' '--with-uuid=e2fs' '--with-gnu-ld' '--with-pgport=5432' '--with-system-tzdata=/usr/share/zoneinfo' '--with-systemd' '--with-selinux' 'MKDIR_P=/bin/mkdir -p' 'TAR=/bin/tar' 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC -pie -fno-omit-frame-pointer' 'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now' 'DPKG_VERSION=9.6.14-1.pgdg16.04+1' 'DPKG_VENDOR=Ubuntu' '--with-gssapi' '--with-ldap' '--with-includes=/usr/include/mit-krb5' '--with-libs=/usr/lib/mit-krb5' '--with-libs=/usr/lib/x86_64-linux-gnu/mit-krb5' 'build_alias=x86_64-linux-gnu' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' | '--build=x86_64-linux-gnu' '--prefix=/usr' '--includedir=/usr/include' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-silent-rules' '--libdir=/usr/lib/x86_64-linux-gnu' '--libexecdir=/usr/lib/x86_64-linux-gnu' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-tcl' '--with-perl' '--with-python' '--with-pam' '--with-openssl' '--with-libxml' '--with-libxslt' 'PYTHON=/usr/bin/python' '--mandir=/usr/share/postgresql/9.6/man' '--docdir=/usr/share/doc/postgresql-doc-9.6' '--sysconfdir=/etc/postgresql-common' '--datarootdir=/usr/share/' '--datadir=/usr/share/postgresql/9.6' '--bindir=/usr/lib/postgresql/9.6/bin' '--libdir=/usr/lib/x86_64-linux-gnu/' '--libexecdir=/usr/lib/postgresql/' '--includedir=/usr/include/postgresql/' '--enable-nls' '--enable-integer-datetimes' '--enable-thread-safety' '--enable-tap-tests' '--enable-debug' '--enable-dtrace' '--disable-rpath' '--with-uuid=e2fs' '--with-gnu-ld' '--with-pgport=5432' '--with-system-tzdata=/usr/share/zoneinfo' '--with-systemd' '--with-selinux' 'MKDIR_P=/bin/mkdir -p' 'TAR=/bin/tar' 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC -pie -fno-omit-frame-pointer' 'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now' 'DPKG_VERSION=9.6.14-1.pgdg16.04+1' 'DPKG_VENDOR=Ubuntu' '--with-gssapi' '--with-ldap' '--with-includes=/usr/include/mit-krb5' '--with-libs=/usr/lib/mit-krb5' '--with-libs=/usr/lib/x86_64-linux-gnu/mit-krb5' 'build_alias=x86_64-linux-gnu' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' | '--build=x86_64-linux-gnu' '--prefix=/usr' '--includedir=/usr/include' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-silent-rules' '--libdir=/usr/lib/x86_64-linux-gnu' '--libexecdir=/usr/lib/x86_64-linux-gnu' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-tcl' '--with-perl' '--with-python' '--with-pam' '--with-openssl' '--with-libxml' '--with-libxslt' 'PYTHON=/usr/bin/python' '--mandir=/usr/share/postgresql/9.6/man' '--docdir=/usr/share/doc/postgresql-doc-9.6' '--sysconfdir=/etc/postgresql-common' '--datarootdir=/usr/share/' '--datadir=/usr/share/postgresql/9.6' '--bindir=/usr/lib/postgresql/9.6/bin' '--libdir=/usr/lib/x86_64-linux-gnu/' '--libexecdir=/usr/lib/postgresql/' '--includedir=/usr/include/postgresql/' '--enable-nls' '--enable-integer-datetimes' '--enable-thread-safety' '--enable-tap-tests' '--enable-debug' '--enable-dtrace' '--disable-rpath' '--with-uuid=e2fs' '--with-gnu-ld' '--with-pgport=5432' '--with-system-tzdata=/usr/share/zoneinfo' '--with-systemd' '--with-selinux' 'MKDIR_P=/bin/mkdir -p' 'TAR=/bin/tar' 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC -pie -fno-omit-frame-pointer' 'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now' 'DPKG_VERSION=9.6.14-1.pgdg16.04+1' 'DPKG_VENDOR=Ubuntu' '--with-gssapi' '--with-ldap' '--with-includes=/usr/include/mit-krb5' '--with-libs=/usr/lib/mit-krb5' '--with-libs=/usr/lib/x86_64-linux-gnu/mit-krb5' 'build_alias=x86_64-linux-gnu' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' | '--build=x86_64-linux-gnu' '--prefix=/usr' '--includedir=/usr/include' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-silent-rules' '--libdir=/usr/lib/x86_64-linux-gnu' '--libexecdir=/usr/lib/x86_64-linux-gnu' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-tcl' '--with-perl' '--with-python' '--with-pam' '--with-openssl' '--with-libxml' '--with-libxslt' 'PYTHON=/usr/bin/python' '--mandir=/usr/share/postgresql/9.6/man' '--docdir=/usr/share/doc/postgresql-doc-9.6' '--sysconfdir=/etc/postgresql-common' '--datarootdir=/usr/share/' '--datadir=/usr/share/postgresql/9.6' '--bindir=/usr/lib/postgresql/9.6/bin' '--libdir=/usr/lib/x86_64-linux-gnu/' '--libexecdir=/usr/lib/postgresql/' '--includedir=/usr/include/postgresql/' '--enable-nls' '--enable-integer-datetimes' '--enable-thread-safety' '--enable-tap-tests' '--enable-debug' '--enable-dtrace' '--disable-rpath' '--with-uuid=e2fs' '--with-gnu-ld' '--with-pgport=5432' '--with-system-tzdata=/usr/share/zoneinfo' '--with-systemd' '--with-selinux' 'MKDIR_P=/bin/mkdir -p' 'TAR=/bin/tar' 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC -pie -fno-omit-frame-pointer' 'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now' 'DPKG_VERSION=9.6.14-1.pgdg16.04+1' 'DPKG_VENDOR=Ubuntu' '--with-gssapi' '--with-ldap' '--with-includes=/usr/include/mit-krb5' '--with-libs=/usr/lib/mit-krb5' '--with-libs=/usr/lib/x86_64-linux-gnu/mit-krb5' 'build_alias=x86_64-linux-gnu' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' | '--build=x86_64-linux-gnu' '--prefix=/usr' '--includedir=/usr/include' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-silent-rules' '--libdir=/usr/lib/x86_64-linux-gnu' '--libexecdir=/usr/lib/x86_64-linux-gnu' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-tcl' '--with-perl' '--with-python' '--with-pam' '--with-openssl' '--with-libxml' '--with-libxslt' 'PYTHON=/usr/bin/python' '--mandir=/usr/share/postgresql/9.6/man' '--docdir=/usr/share/doc/postgresql-doc-9.6' '--sysconfdir=/etc/postgresql-common' '--datarootdir=/usr/share/' '--datadir=/usr/share/postgresql/9.6' '--bindir=/usr/lib/postgresql/9.6/bin' '--libdir=/usr/lib/x86_64-linux-gnu/' '--libexecdir=/usr/lib/postgresql/' '--includedir=/usr/include/postgresql/' '--enable-nls' '--enable-integer-datetimes' '--enable-thread-safety' '--enable-tap-tests' '--enable-debug' '--enable-dtrace' '--disable-rpath' '--with-uuid=e2fs' '--with-gnu-ld' '--with-pgport=5432' '--with-system-tzdata=/usr/share/zoneinfo' '--with-systemd' '--with-selinux' 'MKDIR_P=/bin/mkdir -p' 'TAR=/bin/tar' 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC -pie -fno-omit-frame-pointer' 'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now' 'DPKG_VERSION=9.6.14-1.pgdg16.04+1' 'DPKG_VENDOR=Ubuntu' '--with-gssapi' '--with-ldap' '--with-includes=/usr/include/mit-krb5' '--with-libs=/usr/lib/mit-krb5' '--with-libs=/usr/lib/x86_64-linux-gnu/mit-krb5' 'build_alias=x86_64-linux-gnu' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' | '--build=x86_64-linux-gnu' '--prefix=/usr' '--includedir=/usr/include' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-silent-rules' '--libdir=/usr/lib/x86_64-linux-gnu' '--libexecdir=/usr/lib/x86_64-linux-gnu' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-tcl' '--with-perl' '--with-python' '--with-pam' '--with-openssl' '--with-libxml' '--with-libxslt' 'PYTHON=/usr/bin/python' '--mandir=/usr/share/postgresql/9.6/man' '--docdir=/usr/share/doc/postgresql-doc-9.6' '--sysconfdir=/etc/postgresql-common' '--datarootdir=/usr/share/' '--datadir=/usr/share/postgresql/9.6' '--bindir=/usr/lib/postgresql/9.6/bin' '--libdir=/usr/lib/x86_64-linux-gnu/' '--libexecdir=/usr/lib/postgresql/' '--includedir=/usr/include/postgresql/' '--enable-nls' '--enable-integer-datetimes' '--enable-thread-safety' '--enable-tap-tests' '--enable-debug' '--enable-dtrace' '--disable-rpath' '--with-uuid=e2fs' '--with-gnu-ld' '--with-pgport=5432' '--with-system-tzdata=/usr/share/zoneinfo' '--with-systemd' '--with-selinux' 'MKDIR_P=/bin/mkdir -p' 'TAR=/bin/tar' 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC -pie -fno-omit-frame-pointer' 'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now' 'DPKG_VERSION=9.6.15-1.pgdg16.04+1' 'DPKG_VENDOR=Ubuntu' '--with-gssapi' '--with-ldap' '--with-includes=/usr/include/mit-krb5' '--with-libs=/usr/lib/mit-krb5' '--with-libs=/usr/lib/x86_64-linux-gnu/mit-krb5' 'build_alias=x86_64-linux-gnu' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' | '--build=x86_64-linux-gnu' '--prefix=/usr' '--includedir=/usr/include' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-silent-rules' '--libdir=/usr/lib/x86_64-linux-gnu' '--libexecdir=/usr/lib/x86_64-linux-gnu' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-tcl' '--with-perl' '--with-python' '--with-pam' '--with-openssl' '--with-libxml' '--with-libxslt' 'PYTHON=/usr/bin/python' '--mandir=/usr/share/postgresql/9.6/man' '--docdir=/usr/share/doc/postgresql-doc-9.6' '--sysconfdir=/etc/postgresql-common' '--datarootdir=/usr/share/' '--datadir=/usr/share/postgresql/9.6' '--bindir=/usr/lib/postgresql/9.6/bin' '--libdir=/usr/lib/x86_64-linux-gnu/' '--libexecdir=/usr/lib/postgresql/' '--includedir=/usr/include/postgresql/' '--enable-nls' '--enable-integer-datetimes' '--enable-thread-safety' '--enable-tap-tests' '--enable-debug' '--enable-dtrace' '--disable-rpath' '--with-uuid=e2fs' '--with-gnu-ld' '--with-pgport=5432' '--with-system-tzdata=/usr/share/zoneinfo' '--with-systemd' '--with-selinux' 'MKDIR_P=/bin/mkdir -p' 'TAR=/bin/tar' 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC -pie -fno-omit-frame-pointer' 'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now' 'DPKG_VERSION=9.6.15-1.pgdg16.04+1' 'DPKG_VENDOR=Ubuntu' '--with-gssapi' '--with-ldap' '--with-includes=/usr/include/mit-krb5' '--with-libs=/usr/lib/mit-krb5' '--with-libs=/usr/lib/x86_64-linux-gnu/mit-krb5' 'build_alias=x86_64-linux-gnu' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' | '--build=x86_64-linux-gnu' '--prefix=/usr' '--includedir=/usr/include' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-silent-rules' '--libdir=/usr/lib/x86_64-linux-gnu' '--libexecdir=/usr/lib/x86_64-linux-gnu' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-tcl' '--with-perl' '--with-python' '--with-pam' '--with-openssl' '--with-libxml' '--with-libxslt' 'PYTHON=/usr/bin/python' '--mandir=/usr/share/postgresql/9.6/man' '--docdir=/usr/share/doc/postgresql-doc-9.6' '--sysconfdir=/etc/postgresql-common' '--datarootdir=/usr/share/' '--datadir=/usr/share/postgresql/9.6' '--bindir=/usr/lib/postgresql/9.6/bin' '--libdir=/usr/lib/x86_64-linux-gnu/' '--libexecdir=/usr/lib/postgresql/' '--includedir=/usr/include/postgresql/' '--enable-nls' '--enable-integer-datetimes' '--enable-thread-safety' '--enable-tap-tests' '--enable-debug' '--enable-dtrace' '--disable-rpath' '--with-uuid=e2fs' '--with-gnu-ld' '--with-pgport=5432' '--with-system-tzdata=/usr/share/zoneinfo' '--with-systemd' '--with-selinux' 'MKDIR_P=/bin/mkdir -p' 'TAR=/bin/tar' 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC -pie -fno-omit-frame-pointer' 'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now' 'DPKG_VERSION=9.6.15-1.pgdg16.04+1' 'DPKG_VENDOR=Ubuntu' '--with-gssapi' '--with-ldap' '--with-includes=/usr/include/mit-krb5' '--with-libs=/usr/lib/mit-krb5' '--with-libs=/usr/lib/x86_64-linux-gnu/mit-krb5' 'build_alias=x86_64-linux-gnu' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2'
VERSION | PostgreSQL 9.6.15 | PostgreSQL 9.6.14 | PostgreSQL 9.6.14 | PostgreSQL 9.6.14 | PostgreSQL 9.6.14 | PostgreSQL 9.6.14 | PostgreSQL 9.6.15 | PostgreSQL 9.6.15 | PostgreSQL 9.6.15
## Conclusions ##
## Recommendations ##
---
<a name="postgres-checkup_A007"> </a>
[Table of contents](#postgres-checkup_top)
# A007 Altered Settings #
## Observations ##
Data collected: 2019-09-30 13:56:15 +0000 UTC
### Master (`10.220.16.101`) ###
| Source | Settings count | Changed settings |
|-------|----------------|-----------------|
| /var/opt/gitlab/postgresql/data/postgresql.auto.conf | 4 | autovacuum_naptime idle_in_transaction_session_timeout track_io_timing wal_keep_segments |
| /var/opt/gitlab/postgresql/postgresql.base.conf | 2 | autovacuum_freeze_max_age min_wal_size |
| /var/opt/gitlab/postgresql/postgresql.conf | 47 | archive_command archive_mode archive_timeout autovacuum_analyze_scale_factor autovacuum_max_workers autovacuum_vacuum_cost_delay autovacuum_vacuum_cost_limit autovacuum_vacuum_scale_factor checkpoint_completion_target checkpoint_timeout deadlock_timeout default_statistics_target default_text_search_config effective_cache_size effective_io_concurrency hot_standby_feedback lc_messages log_autovacuum_min_duration log_checkpoints log_destination log_directory log_file_mode log_filename log_line_prefix log_lock_waits log_min_duration_statement log_rotation_age log_rotation_size log_statement log_temp_files logging_collector maintenance_work_mem max_wal_size random_page_cost shared_buffers shared_preload_libraries ssl ssl_ca_file ssl_cert_file ssl_ciphers ssl_key_file tcp_keepalives_count tcp_keepalives_idle tcp_keepalives_interval track_activity_query_size unix_socket_directories work_mem |
| default | 213 | |
### Replica servers: ###
#### Replica (`10.220.16.102`) ####
| Source | Settings count | Changed settings |
|-------|----------------|-----------------|
|/var/opt/gitlab/postgresql/data/postgresql.auto.conf | 4 | autovacuum_naptime idle_in_transaction_session_timeout track_io_timing wal_keep_segments |
|/var/opt/gitlab/postgresql/postgresql.base.conf | 2 | autovacuum_freeze_max_age min_wal_size |
|/var/opt/gitlab/postgresql/postgresql.conf | 47 | archive_command archive_mode archive_timeout autovacuum_analyze_scale_factor autovacuum_max_workers autovacuum_vacuum_cost_delay autovacuum_vacuum_cost_limit autovacuum_vacuum_scale_factor checkpoint_completion_target checkpoint_timeout deadlock_timeout default_statistics_target default_text_search_config effective_cache_size effective_io_concurrency hot_standby_feedback lc_messages log_autovacuum_min_duration log_checkpoints log_destination log_directory log_file_mode log_filename log_line_prefix log_lock_waits log_min_duration_statement log_rotation_age log_rotation_size log_statement log_temp_files logging_collector maintenance_work_mem max_wal_size random_page_cost shared_buffers shared_preload_libraries ssl ssl_ca_file ssl_cert_file ssl_ciphers ssl_key_file tcp_keepalives_count tcp_keepalives_idle tcp_keepalives_interval track_activity_query_size unix_socket_directories work_mem |
|default | 213 | |
#### Replica (`10.220.16.103`) ####
| Source | Settings count | Changed settings |
|-------|----------------|-----------------|
|/var/opt/gitlab/postgresql/data/postgresql.auto.conf | 4 | autovacuum_naptime idle_in_transaction_session_timeout track_io_timing wal_keep_segments |
|/var/opt/gitlab/postgresql/postgresql.base.conf | 2 | autovacuum_freeze_max_age min_wal_size |
|/var/opt/gitlab/postgresql/postgresql.conf | 47 | archive_command archive_mode archive_timeout autovacuum_analyze_scale_factor autovacuum_max_workers autovacuum_vacuum_cost_delay autovacuum_vacuum_cost_limit autovacuum_vacuum_scale_factor checkpoint_completion_target checkpoint_timeout deadlock_timeout default_statistics_target default_text_search_config effective_cache_size effective_io_concurrency hot_standby_feedback lc_messages log_autovacuum_min_duration log_checkpoints log_destination log_directory log_file_mode log_filename log_line_prefix log_lock_waits log_min_duration_statement log_rotation_age log_rotation_size log_statement log_temp_files logging_collector maintenance_work_mem max_wal_size random_page_cost shared_buffers shared_preload_libraries ssl ssl_ca_file ssl_cert_file ssl_ciphers ssl_key_file tcp_keepalives_count tcp_keepalives_idle tcp_keepalives_interval track_activity_query_size unix_socket_directories work_mem |
|default | 213 | |
#### Replica (`10.220.16.104`) ####
| Source | Settings count | Changed settings |
|-------|----------------|-----------------|
|/var/opt/gitlab/postgresql/data/postgresql.auto.conf | 4 | autovacuum_naptime idle_in_transaction_session_timeout track_io_timing wal_keep_segments |
|/var/opt/gitlab/postgresql/postgresql.base.conf | 2 | autovacuum_freeze_max_age min_wal_size |
|/var/opt/gitlab/postgresql/postgresql.conf | 47 | archive_command archive_mode archive_timeout autovacuum_analyze_scale_factor autovacuum_max_workers autovacuum_vacuum_cost_delay autovacuum_vacuum_cost_limit autovacuum_vacuum_scale_factor checkpoint_completion_target checkpoint_timeout deadlock_timeout default_statistics_target default_text_search_config effective_cache_size effective_io_concurrency hot_standby_feedback lc_messages log_autovacuum_min_duration log_checkpoints log_destination log_directory log_file_mode log_filename log_line_prefix log_lock_waits log_min_duration_statement log_rotation_age log_rotation_size log_statement log_temp_files logging_collector maintenance_work_mem max_wal_size random_page_cost shared_buffers shared_preload_libraries ssl ssl_ca_file ssl_cert_file ssl_ciphers ssl_key_file tcp_keepalives_count tcp_keepalives_idle tcp_keepalives_interval track_activity_query_size unix_socket_directories work_mem |
|default | 213 | |
#### Replica (`10.220.16.105`) ####
| Source | Settings count | Changed settings |
|-------|----------------|-----------------|
|/var/opt/gitlab/postgresql/data/postgresql.auto.conf | 4 | autovacuum_naptime idle_in_transaction_session_timeout track_io_timing wal_keep_segments |
|/var/opt/gitlab/postgresql/postgresql.base.conf | 2 | autovacuum_freeze_max_age min_wal_size |
|/var/opt/gitlab/postgresql/postgresql.conf | 47 | archive_command archive_mode archive_timeout autovacuum_analyze_scale_factor autovacuum_max_workers autovacuum_vacuum_cost_delay autovacuum_vacuum_cost_limit autovacuum_vacuum_scale_factor checkpoint_completion_target checkpoint_timeout deadlock_timeout default_statistics_target default_text_search_config effective_cache_size effective_io_concurrency hot_standby_feedback lc_messages log_autovacuum_min_duration log_checkpoints log_destination log_directory log_file_mode log_filename log_line_prefix log_lock_waits log_min_duration_statement log_rotation_age log_rotation_size log_statement log_temp_files logging_collector maintenance_work_mem max_wal_size random_page_cost shared_buffers shared_preload_libraries ssl ssl_ca_file ssl_cert_file ssl_ciphers ssl_key_file tcp_keepalives_count tcp_keepalives_idle tcp_keepalives_interval track_activity_query_size unix_socket_directories work_mem |
|default | 213 | |
#### Replica (`10.220.16.106`) ####
| Source | Settings count | Changed settings |
|-------|----------------|-----------------|
|/var/opt/gitlab/postgresql/data/postgresql.auto.conf | 4 | autovacuum_naptime idle_in_transaction_session_timeout track_io_timing wal_keep_segments |
|/var/opt/gitlab/postgresql/postgresql.base.conf | 2 | autovacuum_freeze_max_age min_wal_size |
|/var/opt/gitlab/postgresql/postgresql.conf | 47 | archive_command archive_mode archive_timeout autovacuum_analyze_scale_factor autovacuum_max_workers autovacuum_vacuum_cost_delay autovacuum_vacuum_cost_limit autovacuum_vacuum_scale_factor checkpoint_completion_target checkpoint_timeout deadlock_timeout default_statistics_target default_text_search_config effective_cache_size effective_io_concurrency hot_standby_feedback lc_messages log_autovacuum_min_duration log_checkpoints log_destination log_directory log_file_mode log_filename log_line_prefix log_lock_waits log_min_duration_statement log_rotation_age log_rotation_size log_statement log_temp_files logging_collector maintenance_work_mem max_wal_size random_page_cost shared_buffers shared_preload_libraries ssl ssl_ca_file ssl_cert_file ssl_ciphers ssl_key_file tcp_keepalives_count tcp_keepalives_idle tcp_keepalives_interval track_activity_query_size unix_socket_directories work_mem |
|default | 213 | |
#### Replica (`10.220.16.107`) ####
| Source | Settings count | Changed settings |
|-------|----------------|-----------------|
|/var/opt/gitlab/postgresql/data/postgresql.auto.conf | 4 | autovacuum_naptime idle_in_transaction_session_timeout track_io_timing wal_keep_segments |
|/var/opt/gitlab/postgresql/postgresql.base.conf | 2 | autovacuum_freeze_max_age min_wal_size |
|/var/opt/gitlab/postgresql/postgresql.conf | 47 | archive_command archive_mode archive_timeout autovacuum_analyze_scale_factor autovacuum_max_workers autovacuum_vacuum_cost_delay autovacuum_vacuum_cost_limit autovacuum_vacuum_scale_factor checkpoint_completion_target checkpoint_timeout deadlock_timeout default_statistics_target default_text_search_config effective_cache_size effective_io_concurrency hot_standby_feedback lc_messages log_autovacuum_min_duration log_checkpoints log_destination log_directory log_file_mode log_filename log_line_prefix log_lock_waits log_min_duration_statement log_rotation_age log_rotation_size log_statement log_temp_files logging_collector maintenance_work_mem max_wal_size random_page_cost shared_buffers shared_preload_libraries ssl ssl_ca_file ssl_cert_file ssl_ciphers ssl_key_file tcp_keepalives_count tcp_keepalives_idle tcp_keepalives_interval track_activity_query_size unix_socket_directories work_mem |
|default | 213 | |
#### Replica (`10.220.16.108`) ####
| Source | Settings count | Changed settings |
|-------|----------------|-----------------|
|/var/opt/gitlab/postgresql/data/postgresql.auto.conf | 4 | autovacuum_naptime idle_in_transaction_session_timeout track_io_timing wal_keep_segments |
|/var/opt/gitlab/postgresql/postgresql.base.conf | 2 | autovacuum_freeze_max_age min_wal_size |
|/var/opt/gitlab/postgresql/postgresql.conf | 47 | archive_command archive_mode archive_timeout autovacuum_analyze_scale_factor autovacuum_max_workers autovacuum_vacuum_cost_delay autovacuum_vacuum_cost_limit autovacuum_vacuum_scale_factor checkpoint_completion_target checkpoint_timeout deadlock_timeout default_statistics_target default_text_search_config effective_cache_size effective_io_concurrency hot_standby_feedback lc_messages log_autovacuum_min_duration log_checkpoints log_destination log_directory log_file_mode log_filename log_line_prefix log_lock_waits log_min_duration_statement log_rotation_age log_rotation_size log_statement log_temp_files logging_collector maintenance_work_mem max_wal_size random_page_cost shared_buffers shared_preload_libraries ssl ssl_ca_file ssl_cert_file ssl_ciphers ssl_key_file tcp_keepalives_count tcp_keepalives_idle tcp_keepalives_interval track_activity_query_size unix_socket_directories work_mem |
|default | 213 | |
#### Replica (`10.220.16.109`) ####
| Source | Settings count | Changed settings |
|-------|----------------|-----------------|
|/var/opt/gitlab/postgresql/data/postgresql.auto.conf | 4 | autovacuum_naptime idle_in_transaction_session_timeout track_io_timing wal_keep_segments |
|/var/opt/gitlab/postgresql/postgresql.base.conf | 2 | autovacuum_freeze_max_age min_wal_size |
|/var/opt/gitlab/postgresql/postgresql.conf | 47 | archive_command archive_mode archive_timeout autovacuum_analyze_scale_factor autovacuum_max_workers autovacuum_vacuum_cost_delay autovacuum_vacuum_cost_limit autovacuum_vacuum_scale_factor checkpoint_completion_target checkpoint_timeout deadlock_timeout default_statistics_target default_text_search_config effective_cache_size effective_io_concurrency hot_standby_feedback lc_messages log_autovacuum_min_duration log_checkpoints log_destination log_directory log_file_mode log_filename log_line_prefix log_lock_waits log_min_duration_statement log_rotation_age log_rotation_size log_statement log_temp_files logging_collector maintenance_work_mem max_wal_size random_page_cost shared_buffers shared_preload_libraries ssl ssl_ca_file ssl_cert_file ssl_ciphers ssl_key_file tcp_keepalives_count tcp_keepalives_idle tcp_keepalives_interval track_activity_query_size unix_socket_directories work_mem |
|default | 213 | |
## Conclusions ##
## Recommendations ##
---
<a name="postgres-checkup_D004"> </a>
[Table of contents](#postgres-checkup_top)
# D004 pg_stat_statements and pg_stat_kcache Settings #
## Observations ##
Data collected: 2019-09-30 13:56:18 +0000 UTC
### Master (`10.220.16.101`) ###
#### `pg_stat_statements` extension settings ####
| Setting | Value | Unit | Type | Min value | Max value |
|--------|-------|------|------|-----------|-----------|
|[pg_stat_statements.max](https://postgresqlco.nf/en/doc/param/pg_stat_statements.max)|5000||integer|100 |2147483647 |
|[pg_stat_statements.save](https://postgresqlco.nf/en/doc/param/pg_stat_statements.save)|on||bool|| |
|[pg_stat_statements.track](https://postgresqlco.nf/en/doc/param/pg_stat_statements.track)|top||enum|| |
|[pg_stat_statements.track_utility](https://postgresqlco.nf/en/doc/param/pg_stat_statements.track_utility)|on||bool|| |
## Conclusions ##
## Recommendations ##
---
<a name="postgres-checkup_F001"> </a>
[Table of contents](#postgres-checkup_top)
# F001 Autovacuum: Current Settings #
## Observations ##
Data collected: 2019-09-30 13:56:20 +0000 UTC
### Master (`10.220.16.101`) ###
| ▼ Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
|[autovacuum](https://postgresqlco.nf/en/doc/param/autovacuum)|on|<no value> | |
|[autovacuum_analyze_scale_factor](https://postgresqlco.nf/en/doc/param/autovacuum_analyze_scale_factor)|0.005|<no value> | |
|[autovacuum_analyze_threshold](https://postgresqlco.nf/en/doc/param/autovacuum_analyze_threshold)|50|<no value> | |
|[autovacuum_freeze_max_age](https://postgresqlco.nf/en/doc/param/autovacuum_freeze_max_age)|200000000|<no value> | |
|[autovacuum_max_workers](https://postgresqlco.nf/en/doc/param/autovacuum_max_workers)|6|<no value> | |
|[autovacuum_multixact_freeze_max_age](https://postgresqlco.nf/en/doc/param/autovacuum_multixact_freeze_max_age)|400000000|<no value> | |
|[autovacuum_naptime](https://postgresqlco.nf/en/doc/param/autovacuum_naptime)|30|s | |
|[autovacuum_vacuum_cost_delay](https://postgresqlco.nf/en/doc/param/autovacuum_vacuum_cost_delay)|5|ms | |
|[autovacuum_vacuum_cost_limit](https://postgresqlco.nf/en/doc/param/autovacuum_vacuum_cost_limit)|6000|<no value> | |
|[autovacuum_vacuum_scale_factor](https://postgresqlco.nf/en/doc/param/autovacuum_vacuum_scale_factor)|0.005|<no value> | |
|[autovacuum_vacuum_threshold](https://postgresqlco.nf/en/doc/param/autovacuum_vacuum_threshold)|50|<no value> | |
|[autovacuum_work_mem](https://postgresqlco.nf/en/doc/param/autovacuum_work_mem)|-1|kB | |
|[maintenance_work_mem](https://postgresqlco.nf/en/doc/param/maintenance_work_mem)|2097152|kB | 2.00 GiB|
|[vacuum_cost_delay](https://postgresqlco.nf/en/doc/param/vacuum_cost_delay)|0|ms | |
|[vacuum_cost_limit](https://postgresqlco.nf/en/doc/param/vacuum_cost_limit)|200|<no value> | |
|[vacuum_cost_page_dirty](https://postgresqlco.nf/en/doc/param/vacuum_cost_page_dirty)|20|<no value> | |
|[vacuum_cost_page_hit](https://postgresqlco.nf/en/doc/param/vacuum_cost_page_hit)|1|<no value> | |
|[vacuum_cost_page_miss](https://postgresqlco.nf/en/doc/param/vacuum_cost_page_miss)|10|<no value> | |
|[vacuum_defer_cleanup_age](https://postgresqlco.nf/en/doc/param/vacuum_defer_cleanup_age)|0|<no value> | |
|[vacuum_freeze_min_age](https://postgresqlco.nf/en/doc/param/vacuum_freeze_min_age)|50000000|<no value> | |
|[vacuum_freeze_table_age](https://postgresqlco.nf/en/doc/param/vacuum_freeze_table_age)|150000000|<no value> | |
|[vacuum_multixact_freeze_min_age](https://postgresqlco.nf/en/doc/param/vacuum_multixact_freeze_min_age)|5000000|<no value> | |
|[vacuum_multixact_freeze_table_age](https://postgresqlco.nf/en/doc/param/vacuum_multixact_freeze_table_age)|150000000|<no value> | |
#### Tuned tables ####
| ▼ Namespace | Relation | Options |
|----------|----------|------|
|pg_toast |pg_toast_33145 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33153 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33161 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33208 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33221 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33229 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33237 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33248 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33262 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33272 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33322 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33356 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33369 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33383 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33393 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33400 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33426 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33439 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33447 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33462 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33476 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33497 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33506 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33514 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33527 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33541 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33553 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33568 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33587 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33597 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33614 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33625 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33634 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33642 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33650 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33659 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33667 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33675 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33696 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33706 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33749 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33756 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33768 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33776 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33791 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33801 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33824 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33835 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33851 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33863 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33872 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33885 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33898 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33909 | autovacuum_enabled=true<br/> |
|pg_toast |pg_toast_33959 | autovacuum_enabled=true<br/> |
|public |abuse_reports | autovacuum_enabled=true<br/> |
|public |appearances | autovacuum_enabled=true<br/> |
|public |application_settings | autovacuum_enabled=true<br/> |
|public |approval_merge_request_rules_users | autovacuum_enabled=on<br/> |
|public |approvals | autovacuum_enabled=true<br/> |
|public |approver_groups | autovacuum_enabled=true<br/> |
|public |approvers | autovacuum_enabled=on<br/> |
|public |audit_events | autovacuum_enabled=true<br/> |
|public |award_emoji | autovacuum_enabled=on<br/> |
|public |boards | autovacuum_enabled=true<br/> |
|public |broadcast_messages | autovacuum_enabled=true<br/> |
|public |ci_builds | autovacuum_enabled=true<br/> |
|public |ci_pipelines | autovacuum_enabled=true<br/> |
|public |ci_runner_projects | autovacuum_enabled=true<br/> |
|public |ci_runners | autovacuum_enabled=on<br/> |
|public |ci_trigger_requests | autovacuum_enabled=true<br/> |
|public |ci_triggers | autovacuum_enabled=true<br/> |
|public |ci_variables | autovacuum_enabled=true<br/> |
|public |deploy_keys_projects | autovacuum_enabled=true<br/> |
|public |deployments | autovacuum_enabled=on<br/> |
|public |emails | autovacuum_enabled=true<br/> |
|public |environments | autovacuum_enabled=true<br/> |
|public |forked_project_links | autovacuum_enabled=true<br/> |
|public |geo_nodes | autovacuum_enabled=true<br/> |
|public |historical_data | autovacuum_enabled=true<br/> |
|public |identities | autovacuum_enabled=true<br/> |
|public |index_statuses | autovacuum_enabled=true<br/> |
|public |issue_metrics | autovacuum_enabled=true<br/> |
|public |issues | autovacuum_enabled=true<br/> |
|public |keys | autovacuum_enabled=true<br/> |
|public |label_links | autovacuum_enabled=true<br/> |
|public |label_priorities | autovacuum_enabled=true<br/> |
|public |labels | autovacuum_enabled=on<br/> |
|public |ldap_group_links | autovacuum_enabled=true<br/> |
|public |lfs_objects | autovacuum_enabled=true<br/> |
|public |lfs_objects_projects | autovacuum_enabled=true<br/> |
|public |licenses | autovacuum_enabled=true<br/> |
|public |lists | autovacuum_enabled=true<br/> |
|public |members | autovacuum_enabled=true<br/> |
|public |merge_request_diffs | autovacuum_enabled=true<br/> |
|public |merge_request_metrics | autovacuum_enabled=true<br/> |
|public |merge_requests | autovacuum_enabled=true<br/> |
|public |merge_requests_closing_issues | autovacuum_enabled=true<br/> |
|public |milestones | autovacuum_enabled=on<br/> |
|public |namespaces | autovacuum_enabled=on<br/> |
|public |notes | autovacuum_enabled=true<br/> |
|public |notification_settings | autovacuum_enabled=on<br/> |
|public |oauth_access_grants | autovacuum_enabled=true<br/> |
|public |oauth_access_tokens | autovacuum_enabled=true<br/> |
|public |oauth_applications | autovacuum_enabled=true<br/> |
|public |pages_domains | autovacuum_enabled=true<br/> |
|public |path_locks | autovacuum_enabled=true<br/> |
|public |personal_access_tokens | autovacuum_enabled=true<br/> |
|public |project_authorizations | autovacuum_enabled=true<br/> |
|public |project_features | autovacuum_enabled=true<br/> |
|public |project_group_links | autovacuum_enabled=true<br/> |
|public |project_import_data | autovacuum_enabled=on<br/> |
|public |project_mirror_data | autovacuum_vacuum_cost_limit=10000<br/> autovacuum_enabled=on<br/> |
|public |project_repository_states | autovacuum_enabled=on<br/> |
|public |projects | autovacuum_vacuum_cost_limit=7000<br/> autovacuum_enabled=on<br/> |
|public |protected_branch_merge_access_levels | autovacuum_enabled=true<br/> |
|public |protected_branch_push_access_levels | autovacuum_enabled=true<br/> |
|public |protected_branches | autovacuum_enabled=true<br/> |
|public |push_rules | autovacuum_enabled=true<br/> |
|public |releases | autovacuum_enabled=on<br/> |
|public |remote_mirrors | autovacuum_enabled=true<br/> |
|public |sent_notifications | autovacuum_enabled=true<br/> |
|public |services | autovacuum_enabled=on<br/> |
|public |snippets | autovacuum_enabled=on<br/> |
|public |spam_logs | autovacuum_enabled=true<br/> |
|public |subscriptions | autovacuum_enabled=true<br/> |
|public |taggings | autovacuum_enabled=true<br/> |
|public |tags | autovacuum_enabled=true<br/> |
|public |todos | autovacuum_enabled=true<br/> |
|public |trending_projects | autovacuum_enabled=true<br/> |
|public |u2f_registrations | autovacuum_enabled=true<br/> |
|public |untracked_files_for_uploads | autovacuum_enabled=on<br/> |
|public |user_agent_details | autovacuum_enabled=true<br/> |
|public |users | autovacuum_enabled=on<br/> |
|public |users_star_projects | autovacuum_enabled=true<br/> |
|public |web_hooks | autovacuum_enabled=true<br/> |
### Replicas settings ###
| Setting | 10.220.16.102 | 10.220.16.103 | 10.220.16.104 | 10.220.16.105 | 10.220.16.106 | 10.220.16.107 | 10.220.16.108 | 10.220.16.109 |
|--------|-------- |-------- |-------- |-------- |-------- |-------- |-------- |-------- |
|[hot_standby_feedback](https://postgresqlco.nf/en/doc/param/hot_standby_feedback)|on|on|on|on|on|on|on|on|
## Conclusions ##
## Recommendations ##
All good, no recommendations here.
---
<a name="postgres-checkup_F002"> </a>
[Table of contents](#postgres-checkup_top)
# F002 Autovacuum: Transaction ID Wraparound Check #
## Observations ##
- Data collected: 2019-09-30 13:36:50 +0000 UTC
- Current database: gitlabhq_production
### Master (`10.220.16.101`) ###
#### Databases ####
| \# | Database | ▼ Age | Capacity used, % | Warning | datfrozenxid |
|--|--------|-----|------------------|---------|--------------|
| 1 |`gitlabhq_production`|199995868 |10.26 | |160538665 |
| 2 |`postgres`|195569077 |10.03 | |164965456 |
| 3 |`template0`|47497946 |2.44 | |313036587 |
| 4 |`template1`|47295719 |2.43 | |313238814 |
#### Tables in the observed database ####
The list is limited to 10 items. Total: 268.
| \# | Relation | Age | ▼ Capacity used, % | Warning |rel_relfrozenxid | toast_relfrozenxid |
|---|-------|-----|------------------|---------|-----------------|--------------------|
| 1 |`notification_settings`\* |199995868 |10.26 | |160538665 |163739001 |
| 2 |`slack_integrations` |199995868 |10.26 | |160538665 |163739001 |
| 3 |`gpg_key_subkeys` |199878040 |10.25 | |160656493 |163739001 |
| 4 |`ci_pipeline_chat_data` |199878040 |10.25 | |160656493 |163779468 |
| 5 |`container_repositories` |199932034 |10.25 | |160602499 |163739001 |
| 6 |`operations_feature_flags_clients` |199675759 |10.24 | |160858774 |164003145 |
| 7 |`ci_runner_projects`\* |199586477 |10.24 | |160948056 |0 |
| 8 |`issue_assignees` |199678708 |10.24 | |160855825 |0 |
| 9 |`schema_migrations` |199108026 |10.21 | |161426507 |161441143 |
| 10 |`insights` |199065876 |10.21 | |161468657 |0 |
\* This table has specific autovacuum settings. See 'F001 Autovacuum: Current settings'
## Conclusions ##
## Recommendations ##
All good, no recommendations here.
---
<a name="postgres-checkup_F003"> </a>
[Table of contents](#postgres-checkup_top)
# F003 Autovacuum: Dead Tuples #
## Observations ##
Data collected: 2019-09-30 13:36:52 +0000 UTC
Current database: gitlabhq_production
Stats reset: 20 days 19:05:00 ago (2019-09-09 18:31:36 +0000 UTC)
### Master (`10.220.16.101`) ###
The list is limited to 20 items. Total: 184.
| \#| Relation | reltype | Since last autovacuum | Since last vacuum | Autovacuum Count | Vacuum Count | n_tup_ins | n_tup_upd | n_tup_del | pg_class.reltuples | n_live_tup | n_dead_tup | ▼Dead Tuples Ratio, % |
|---|-------|------|-----------------------|-------------------|----------|---------|-----------|-----------|-----------|--------------------|------------|------------|-----------|
| 1 |`project_mirror_data`\* |r |00:03:36.655815 |<no value> |5790 |0 |60052 |335213555 |15861 |2157317 |2157323 |100263 | 4.44 |
| 2 |`namespace_aggregation_schedules` |r |00:00:21.549297 |<no value> |61912 |0 |8141635 |0 |7992341 |17748 |17722 |299 | 1.66 |
| 3 |`pg_toast.pg_toast_2619` |t |00:00:58.960839 |<no value> |25505 |0 |4224019 |0 |4223631 |15237 |15192 |174 | 1.13 |
| 4 |`pg_catalog.pg_statistic` |r |00:04:59.138629 |<no value> |6705 |0 |47 |942835 |1 |14654 |14654 |123 | 0.83 |
| 5 |`u2f_registrations`\* |r |04:40:29.220464 |<no value> |50 |0 |835 |6293 |320 |15282 |15283 |118 | 0.77 |
| 6 |`protected_tag_create_access_levels` |r |2 days 14:38:59.570444 |<no value> |8 |0 |2051 |51 |1191 |18419 |18421 |138 | 0.74 |
| 7 |`draft_notes` |r |00:07:29.114059 |<no value> |730 |0 |47639 |5932 |46799 |11678 |11678 |78 | 0.66 |
| 8 |`cluster_platforms_kubernetes` |r |1 day 13:31:59.386141 |<no value> |14 |0 |2406 |1562 |1490 |24177 |24193 |153 | 0.63 |
| 9 |`cluster_providers_gcp` |r |18:17:52.980122 |<no value> |15 |0 |1104 |1811 |739 |10041 |10045 |62 | 0.61 |
| 10 |`clusters_kubernetes_namespaces` |r |3 days 00:19:17.261235 |<no value> |8 |0 |2710 |583 |1063 |30921 |30991 |182 | 0.58 |
| 11 |`pg_toast.pg_toast_54153184` |t |1 day 15:01:46.4009 |<no value> |14 |0 |5070 |0 |3234 |34129 |34261 |186 | 0.54 |
| 12 |`pg_toast.pg_toast_33659`\* |t |1 day 10:18:18.825141 |<no value> |15 |0 |12476 |0 |9282 |108336 |108492 |560 | 0.51 |
| 13 |`resource_label_events` |r |05:02:01.537767 |<no value> |33 |0 |2196074 |3579123 |318368 |22591948 |22623125 |112879 | 0.5 |
| 14 |`environments`\* |r |2 days 19:31:56.355287 |<no value> |15 |0 |57572 |74430 |10311 |810728 |811268 |4094 | 0.5 |
| 15 |`lfs_objects`\* |r |3 days 08:19:18.500374 |<no value> |11 |0 |957167 |956027 |0 |17733184 |17737868 |87701 | 0.49 |
| 16 |`users`\* |r |00:40:32.833542 |<no value> |419 |0 |118720 |11904407 |2184 |4504403 |4504453 |21893 | 0.48 |
| 17 |`pg_toast.pg_toast_54153124` |t |1 day 04:19:14.297056 |<no value> |15 |0 |3319 |0 |2422 |21561 |21618 |102 | 0.47 |
| 18 |`gpg_key_subkeys` |r |4 days 12:08:56.991402 |<no value> |4 |0 |1847 |0 |705 |38665 |38702 |182 | 0.47 |
| 19 |`badges` |r |2 days 23:46:21.008523 |<no value> |7 |0 |2568 |1323 |707 |26499 |26534 |125 | 0.47 |
| 20 |`protected_branch_unprotect_access_levels` |r |00:16:06.698542 |<no value> |576 |0 |64142 |0 |62643 |21923 |21923 |101 | 0.46 |
\* This table has specific autovacuum settings. See 'F001 Autovacuum: Current settings'
## Conclusions ##
## Recommendations ##
---
<a name="postgres-checkup_F004"> </a>
[Table of contents](#postgres-checkup_top)
# F004 Autovacuum: Heap Bloat (Estimated) #
:warning: This report is based on estimations. The errors in bloat estimates may be significant (in some cases, up to 15% and even more). Use it only as an indicator of potential issues.
## Observations ##
Data collected: 2019-09-30 13:36:54 +0000 UTC
Current database: gitlabhq_production
### Master (`10.220.16.101`) ###
The list is limited to 20 items. Total: 274.
| \# | Table | Real Size | ▼ Estimated bloat | Est. bloat, bytes | Est. bloat factor | Est. bloat level, % | Live Data Size | Last vacuum | Fillfactor |
|----|-------|------|------------------------------|-------------------|-------------------|---------------------|----------------|-------------|------------|
| |===== TOTAL ===== |2.77 TiB |63.57 GiB |68,251,901,952 |1.02 |2.25 | ~2.71 TiB ||||
|1 |`merge_request_diff_files` |1.25 TiB |25.40 GiB |27,268,497,408 |1.02 |2.00 |~1.22 TiB | 2019-09-27 06:46:37 (auto) |100 |
|2 |`ci_builds`\* |401.32 GiB |11.85 GiB |12,716,433,408 |1.03 |2.95 |~389.48 GiB | 2019-09-30 09:33:19 (auto) |100 |
|3 |`merge_request_diff_commits` |500.65 GiB |10.03 GiB |10,760,568,832 |1.02 |2.00 |~490.62 GiB | 2019-09-26 04:35:43 (auto) |100 |
|4 |`sent_notifications`\* |30.77 GiB |2.08 GiB |2,227,716,096 |1.07 |6.74 |~28.69 GiB | 2019-09-26 05:45:43 (auto) |100 |
|5 |`notes`\* |130.03 GiB |1.46 GiB |1,561,468,928 |1.01 |1.12 |~128.57 GiB | 2019-09-30 03:12:35 (auto) |100 |
|6 |`audit_events`\* |42.46 GiB |1.44 GiB |1,543,290,880 |1.04 |3.39 |~41.02 GiB | 2019-09-26 04:02:37 (auto) |100 |
|7 |`ci_pipelines`\* |16.48 GiB |1.29 GiB |1,377,558,528 |1.08 |7.79 |~15.20 GiB | 2019-09-30 03:25:07 (auto) |100 |
|8 |`ci_job_artifacts` |36.69 GiB |1.14 GiB |1,220,296,704 |1.03 |3.10 |~35.55 GiB | 2019-09-30 12:14:32 (auto) |100 |
|9 |`push_event_payloads` |39.41 GiB |1.09 GiB |1,170,145,280 |1.03 |2.77 |~38.32 GiB | 2019-09-27 10:11:06 (auto) |100 |
|10 |`merge_request_diffs`\* |10.47 GiB |0.96 GiB |1,020,944,384 |1.10 |9.09 |~9.52 GiB | 2019-09-27 10:17:04 (auto) |100 |
|11 |`merge_requests`\* |14.45 GiB |856.08 MiB |897,654,784 |1.06 |5.79 |~13.61 GiB | 2019-09-30 12:31:38 (auto) |100 |
|12 |`ci_stages` |11.69 GiB |583.77 MiB |612,122,624 |1.05 |4.88 |~11.12 GiB | 2019-09-30 10:19:23 (auto) |100 |
|13 |`ci_build_trace_sections` |93.73 GiB |537.68 MiB |563,789,824 |1.01 |0.56 |~93.21 GiB | 2019-09-26 04:07:43 (auto) |100 |
|14 |`deployments`\* |4.91 GiB |435.74 MiB |456,900,608 |1.09 |8.67 |~4.48 GiB | 2019-09-28 21:54:36 (auto) |100 |
|15 |`projects`\* |3.06 GiB |380.86 MiB |399,351,808 |1.14 |12.19 |~2.68 GiB | 2019-09-30 13:29:09 (auto) |100 |
|16 |`resource_label_events` |9.69 GiB |332.11 MiB |348,233,728 |1.03 |3.35 |~9.37 GiB | 2019-09-30 08:34:52 (auto) |100 |
|17 |`project_mirror_data`\* |564.65 MiB |312.67 MiB |327,852,032 |2.24 | **55.37** |~251.99 MiB | 2019-09-30 13:33:17 (auto) |100 |
|18 |`todos`\* |2.94 GiB |249.47 MiB |261,586,944 |1.09 |8.29 |~2.70 GiB | 2019-09-30 08:58:08 (auto) |100 |
|19 |`lfs_objects`\* |3.35 GiB |239.42 MiB |251,043,840 |1.08 |6.98 |~3.12 GiB | 2019-09-27 05:17:35 (auto) |100 |
|20 |`users`\* |1.95 GiB |225.14 MiB |236,068,864 |1.13 |11.28 |~1.73 GiB | 2019-09-30 12:56:20 (auto) |100 |
\* This table has specific autovacuum settings. See 'F001 Autovacuum: Current settings'
## Conclusions ##
- The estimated table (heap) bloat in this DB is low, just ~2.25% (~63.57 GiB). No action is needed now. Keep watching it though.
- [P1] The following 2 tables have significant size (>1 MiB) and bloat estimate > 90.00%:
- `ci_build_trace_chunks`: size 4.34 MiB, can be reduced 15.00 times, by ~4.05 MiB (~93.33%)
- `appearances`: size 1.37 MiB, can be reduced 175.00 times, by ~1.36 MiB (~99.43%)
- [P2] There are 6 tables with size > 1 MiB and table bloat estimate >= 40.00% and < 90.00%:
- `project_mirror_data`: size 564.65 MiB, can be reduced 2.24 times, by ~312.67 MiB (~55.37%)
- `user_preferences`: size 296.29 MiB, can be reduced 2.00 times, by ~148.35 MiB (~50.07%)
- `user_callouts`: size 27.81 MiB, can be reduced 1.81 times, by ~12.48 MiB (~44.87%)
- `clusters`: size 4.36 MiB, can be reduced 1.78 times, by ~1.91 MiB (~43.73%)
- `lfs_file_locks`: size 1.82 MiB, can be reduced 6.44 times, by ~1.54 MiB (~84.48%)
- etc.
## Recommendations ##
- [P1] Reduce and prevent the high level of table bloat:
- to prevent a high level of bloat in the future, tune autovacuum: consider more aggressive autovacuum settings (see F001);
- eliminate or reduce the current table bloat using one of the approaches listed below.
- If you want to get exact bloat numbers, clone the database, get table sizes, then apply database-wide `VACUUM FULL` (it eliminate all the bloat), and get new table sizes. Then compare old and new numbers.
- To reduce the table bloat, consider one of the following approaches:
- [`VACUUM FULL`](https://www.postgresql.org/docs/current/sql-vacuum.html) (:warning: requires downtime / maintenance window),
- one of the tools reducing the bloat online, without interrupting the operations:
- [pg_repack](https://github.com/reorg/pg_repack),
- [pg_squeeze](https://github.com/cybertec-postgresql/pg_squeeze),
- [pgcompacttable](https://github.com/dataegret/pgcompacttable).
- Read more on this topic:
- [Bloat estimation for tables](http://blog.ioguix.net/postgresql/2014/09/10/Bloat-estimation-for-tables.html) (2014, ioguix)
- [Show database bloat](https://wiki.postgresql.org/wiki/Show_database_bloat) (PostgreSQL wiki)
- [PostgreSQL Bloat: origins, monitoring and managing](https://www.compose.com/articles/postgresql-bloat-origins-monitoring-and-managing/) (2016, Compose)
- [Dealing with significant Postgres database bloat — what are your options?](https://medium.com/compass-true-north/dealing-with-significant-postgres-database-bloat-what-are-your-options-a6c1814a03a5) (2018, Compass)
- [Postgres database bloat analysis](https://about.gitlab.com/handbook/engineering/infrastructure/blueprint/201901-postgres-bloat/) (2019, GitLab)
---
<a name="postgres-checkup_F005"> </a>
[Table of contents](#postgres-checkup_top)
# F005 Autovacuum: Btree Index Bloat (Estimated) #
:warning: This report is based on estimations. The errors in bloat estimates may be significant (in some cases, up to 15% and even more). Use it only as an indicator of potential issues.
## Observations ##
Data collected: 2019-09-30 13:36:59 +0000 UTC
Current database: gitlabhq_production
:information_source: This report considers only btree indexes.
### Master (`10.220.16.101`) ###
The list is limited to 20 items. Total: 947.
| \# | Index (Table) | Index Size | Table Size | ▼ Estimated bloat | Est. bloat, bytes | Est. bloat factor |Est. bloat level, % | Live Data Size | Fillfactor |
|----|---------------|------------|------------|------------------------------|-------------------|-------------------|--------------------|----------------|-------------|
| |===== TOTAL ===== |1.14 TiB |5.00 TiB |291.33 GiB |312,812,339,200|1.34 |25.17|866.11 GiB |||
|1 | `index_merge_request_diff_commits_on_sha` (`merge_request_diff_commits`) |86.88 GiB |488.89 GiB |13.02 GiB |13,975,683,072 |1.18 |14.98 |~73.87 GiB |90 |
|2 | `index_ci_builds_on_auto_canceled_by_id` (`ci_builds`\*) |15.39 GiB |291.64 GiB |11.73 GiB |12,588,113,920 |4.20 | **76.19** |~3.67 GiB |90 |
|3 | `index_ci_builds_on_protected` (`ci_builds`\*) |15.22 GiB |291.64 GiB |9.19 GiB |9,861,808,128 |2.52 | **60.38** |~6.03 GiB |90 |
|4 | `index_ci_builds_on_token_encrypted` (`ci_builds`\*) |16.15 GiB |291.64 GiB |8.87 GiB |9,518,219,264 |2.22 | **54.89** |~7.29 GiB |90 |
|5 | `index_ci_builds_on_token` (`ci_builds`\*) |17.01 GiB |291.64 GiB |8.65 GiB |9,279,373,312 |2.03 | **50.83** |~8.36 GiB |90 |
|6 | `index_ci_builds_on_runner_id` (`ci_builds`\*) |14.32 GiB |291.64 GiB |8.35 GiB |8,957,657,088 |2.40 | **58.26** |~5.98 GiB |90 |
|7 | `index_ci_job_artifacts_on_expire_at_and_job_id` (`ci_job_artifacts`) |12.06 GiB |36.70 GiB |6.88 GiB |7,377,879,040 |2.33 | **56.99** |~5.19 GiB |90 |
|8 | `tmp_build_stage_position_index` (`ci_builds`\*) |15.17 GiB |291.64 GiB |6.71 GiB |7,203,569,664 |1.79 | **44.24** |~8.46 GiB |90 |
|9 | `index_ci_builds_on_queued_at` (`ci_builds`\*) |12.70 GiB |291.64 GiB |6.66 GiB |7,144,341,504 |2.10 | **52.41** |~6.05 GiB |90 |
|10 | `index_ci_builds_on_updated_at` (`ci_builds`\*) |12.62 GiB |291.64 GiB |6.55 GiB |7,025,917,952 |2.08 | **51.85** |~6.08 GiB |90 |
|12 | `index_ci_builds_on_project_id_and_id` (`ci_builds`\*) |12.14 GiB |291.64 GiB |6.06 GiB |6,506,594,304 |2.00 | **49.94** |~6.08 GiB |90 |
|13 | `ci_builds_pkey` (`ci_builds`\*) |11.61 GiB |291.64 GiB |5.54 GiB |5,937,864,704 |1.91 | **47.65** |~6.08 GiB |90 |
|14 | `index_notes_on_discussion_id` (`notes`\*) |15.56 GiB |122.37 GiB |5.33 GiB |5,713,068,032 |1.52 |34.21 |~10.24 GiB |90 |
|15 | `index_ci_build_trace_sections_on_section_name_id` (`ci_build_trace_sections`) |32.30 GiB |94.19 GiB |4.94 GiB |5,294,194,688 |1.18 |15.27 |~27.37 GiB |90 |
|16 | `index_ci_builds_on_stage_id` (`ci_builds`\*) |10.44 GiB |291.64 GiB |4.37 GiB |4,685,144,064 |1.72 | **41.80** |~6.08 GiB |90 |
|17 | `index_projects_on_repository_storage` (`projects`\*) |4.62 GiB |2.79 GiB |4.31 GiB |4,624,613,376 |15.00 | **93.33** |~315.00 MiB |90 |
|18 | `index_ci_builds_on_commit_id_and_type_and_ref` (`ci_builds`\*) |34.74 GiB |291.64 GiB |4.28 GiB |4,592,795,648 |1.14 |12.31 |~30.46 GiB |90 |
|19 | `index_ci_build_trace_sections_on_project_id` (`ci_build_trace_sections`) |31.55 GiB |94.19 GiB |4.18 GiB |4,479,926,272 |1.15 |13.23 |~27.37 GiB |90 |
|20 | `index_ci_builds_on_user_id` (`ci_builds`\*) |9.96 GiB |291.64 GiB |3.90 GiB |4,183,965,696 |1.64 |39.14 |~6.06 GiB |90 |
|21 | `index_projects_on_last_activity_at` (`projects`\*) |3.91 GiB |2.79 GiB |3.69 GiB |3,955,097,600 |17.73 | **94.36** |~225.45 MiB |90 |
\* This table has specific autovacuum settings. See 'F001 Autovacuum: Current settings'
## Conclusions ##
- [P1] Total index (btree only) bloat estimation is ~291.33 GiB, it is 25.17% of the overall size of all indexes and 7.14% of the DB size. Removing the index bloat will reduce the total DB size down to ~3.70 TiB. Free disk space will be increased by ~291.33 GiB. Total size of indexes is 1.34 times bigger than it could be. Notice that this is only an estimation, sometimes it may be significantly off.
- [P1] The following 37 indexes have significant size (>1 MiB) and bloat estimate > 90.00%:
- `index_projects_on_repository_storage`: size 4.62 GiB, can be reduced 15.00 times, by ~4.34 GiB (~93.33%)
- `index_projects_on_last_activity_at`: size 3.91 GiB, can be reduced 17.73 times, by ~3.71 GiB (~94.36%)
- `index_projects_on_runners_token`: size 3.80 GiB, can be reduced 27.83 times, by ~3.68 GiB (~96.41%)
- `index_projects_on_pending_delete`: size 3.81 GiB, can be reduced 17.27 times, by ~3.61 GiB (~94.21%)
- `index_projects_on_last_repository_check_failed`: size 3.68 GiB, can be reduced 27.85 times, by ~3.56 GiB (~96.41%)
- etc.
- [P2] There are 196 indexes with size > 1 MiB and index bloat estimate >= 40.00% and < 90.00%:
- `index_ci_builds_on_auto_canceled_by_id`: size 15.39 GiB, can be reduced 4.20 times, by ~12.10 GiB (~76.19%)
- `index_ci_builds_on_protected`: size 15.22 GiB, can be reduced 2.52 times, by ~9.79 GiB (~60.38%)
- `index_ci_builds_on_token_encrypted`: size 16.15 GiB, can be reduced 2.22 times, by ~9.61 GiB (~54.89%)
- `index_ci_builds_on_token`: size 17.01 GiB, can be reduced 2.03 times, by ~9.47 GiB (~50.83%)
- `index_ci_builds_on_runner_id`: size 14.32 GiB, can be reduced 2.40 times, by ~8.94 GiB (~58.26%)
- etc.
## Recommendations ##
- [P1] Reduce and prevent a high level of index bloat:
- to prevent a high level of bloat in the future, tune autovacuum: consider more aggressive autovacuum settings (see F001);
- eliminate or reduce the current index bloat using one of the approaches listed below.
- If you want to get exact bloat numbers, clone the database, get index sizes, then apply database-wide `VACUUM FULL` (it eliminates all the bloat), and gets new table sizes. Then compare old and new numbers.
- To reduce the index bloat, consider one of the following approaches:
- [`VACUUM FULL`](https://www.postgresql.org/docs/current/sql-vacuum.html) (:warning: requires downtime / maintenance window),
- [`REINDEX`](https://www.postgresql.org/docs/current/sql-reindex.html) (`REINDEX INDEX`, `REINDEX TABLE`; :warning: requires downtime / maintenance window),
- recreating indexes online using `CREATE INDEX CONCURRENTLY`, `DROP INDEX CONCURRENTLY` and renaming (not trivial for indexes supporting PK, FK) // `REINDEX CONCURRENTLY` is available in Postgres 12+,
- one of the tools reducing the bloat online, without interrupting the operations:
- [pg_repack](https://github.com/reorg/pg_repack),
- [pg_squeeze](https://github.com/reorg/pg_repack),
- [pgcompacttable](https://github.com/dataegret/pgcompacttable).
- Read more on this topic:
- [Index maintenance](https://wiki.postgresql.org/wiki/Index_Maintenance) (PostgreSQL wiki)
- [Btree bloat query](http://blog.ioguix.net/postgresql/2014/11/03/Btree-bloat-query-part-4.html) (2014, ioguix)
- [PostgreSQL Index bloat under a microscope](http://pgeoghegan.blogspot.com/2017/07/postgresql-index-bloat-microscope.html) (2017, Peter Geoghegan)
- [PostgreSQL Bloat: origins, monitoring and managing](https://www.compose.com/articles/postgresql-bloat-origins-monitoring-and-managing/) (2016, Compose)
- [Dealing with significant Postgres database bloat — what are your options?](Dealing with significant Postgres database bloat — what are your options?) (2018, Compass)
- [Postgres database bloat analysis](https://about.gitlab.com/handbook/engineering/infrastructure/blueprint/201901-postgres-bloat/) (2019, GitLab)
---
<a name="postgres-checkup_F008"> </a>
[Table of contents](#postgres-checkup_top)
# F008 Autovacuum: Resource Usage #
## Observations ##
Data collected: 2019-09-30 13:37:48 +0000 UTC
### Settings ###
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [autovacuum_max_workers](https://postgresqlco.nf/en/doc/param/autovacuum_max_workers)|6|<no value> | |
| [autovacuum_vacuum_cost_delay](https://postgresqlco.nf/en/doc/param/autovacuum_vacuum_cost_delay)|5|ms | |
| [autovacuum_vacuum_cost_limit](https://postgresqlco.nf/en/doc/param/autovacuum_vacuum_cost_limit)|6000|<no value> | |
| [autovacuum_work_mem](https://postgresqlco.nf/en/doc/param/autovacuum_work_mem)|-1|kB | |
| [log_autovacuum_min_duration](https://postgresqlco.nf/en/doc/param/log_autovacuum_min_duration)|0|ms | |
| [maintenance_work_mem](https://postgresqlco.nf/en/doc/param/maintenance_work_mem)|2097152|kB | 2.00 GiB |
| [max_connections](https://postgresqlco.nf/en/doc/param/max_connections)|300|<no value> | |
| [shared_buffers](https://postgresqlco.nf/en/doc/param/shared_buffers)|14450688|8kB | 110.25 GiB |
| [vacuum_cost_limit](https://postgresqlco.nf/en/doc/param/vacuum_cost_limit)|200|<no value> | |
| [work_mem](https://postgresqlco.nf/en/doc/param/work_mem)|102400|kB | 100.00 MiB |
### CPU ###
Cpu count you can see in report A001
### RAM ###
Ram amount you can see in report A001
Max workers memory: 12 GiB
### DISK ###
:warning: Warning: collection of current impact on disks is not yet implemented. Please refer to Postgres logs and see current read and write IO bandwidth caused by autovacuum.
## Conclusions ##
## Recommendations ##
---
<a name="postgres-checkup_G001"> </a>
[Table of contents](#postgres-checkup_top)
# G001 Memory-related Settings #
## Observations ##
Data collected: 2019-09-30 13:56:33 +0000 UTC
### Master (`10.220.16.101`) ###
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [autovacuum_max_workers](https://postgresqlco.nf/en/doc/param/autovacuum_max_workers) | 6| <no value> | |
| [autovacuum_work_mem](https://postgresqlco.nf/en/doc/param/autovacuum_work_mem) | -1| kB | |
| [effective_cache_size](https://postgresqlco.nf/en/doc/param/effective_cache_size) | 43352064| 8kB | 330.75 GiB |
| [maintenance_work_mem](https://postgresqlco.nf/en/doc/param/maintenance_work_mem) | 2097152| kB | 2.00 GiB |
| [max_connections](https://postgresqlco.nf/en/doc/param/max_connections) | 300| <no value> | |
| [shared_buffers](https://postgresqlco.nf/en/doc/param/shared_buffers) | 14450688| 8kB | 110.25 GiB |
| [temp_buffers](https://postgresqlco.nf/en/doc/param/temp_buffers) | 1024| 8kB | 8.00 MiB |
| [work_mem](https://postgresqlco.nf/en/doc/param/work_mem) | 102400| kB | 100.00 MiB |
### Replica servers: ###
#### Replica (`10.220.16.102`) ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [autovacuum_max_workers](https://postgresqlco.nf/en/doc/param/autovacuum_max_workers) | 6| <no value> | |
| [autovacuum_work_mem](https://postgresqlco.nf/en/doc/param/autovacuum_work_mem) | -1| kB | |
| [effective_cache_size](https://postgresqlco.nf/en/doc/param/effective_cache_size) | 43352064| 8kB | 330.75 GiB |
| [maintenance_work_mem](https://postgresqlco.nf/en/doc/param/maintenance_work_mem) | 2097152| kB | 2.00 GiB |
| [max_connections](https://postgresqlco.nf/en/doc/param/max_connections) | 300| <no value> | |
| [shared_buffers](https://postgresqlco.nf/en/doc/param/shared_buffers) | 14450688| 8kB | 110.25 GiB |
| [temp_buffers](https://postgresqlco.nf/en/doc/param/temp_buffers) | 1024| 8kB | 8.00 MiB |
| [work_mem](https://postgresqlco.nf/en/doc/param/work_mem) | 102400| kB | 100.00 MiB |
#### Replica (`10.220.16.103`) ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [autovacuum_max_workers](https://postgresqlco.nf/en/doc/param/autovacuum_max_workers) | 6| <no value> | |
| [autovacuum_work_mem](https://postgresqlco.nf/en/doc/param/autovacuum_work_mem) | -1| kB | |
| [effective_cache_size](https://postgresqlco.nf/en/doc/param/effective_cache_size) | 43352064| 8kB | 330.75 GiB |
| [maintenance_work_mem](https://postgresqlco.nf/en/doc/param/maintenance_work_mem) | 2097152| kB | 2.00 GiB |
| [max_connections](https://postgresqlco.nf/en/doc/param/max_connections) | 300| <no value> | |
| [shared_buffers](https://postgresqlco.nf/en/doc/param/shared_buffers) | 14450688| 8kB | 110.25 GiB |
| [temp_buffers](https://postgresqlco.nf/en/doc/param/temp_buffers) | 1024| 8kB | 8.00 MiB |
| [work_mem](https://postgresqlco.nf/en/doc/param/work_mem) | 102400| kB | 100.00 MiB |
#### Replica (`10.220.16.104`) ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [autovacuum_max_workers](https://postgresqlco.nf/en/doc/param/autovacuum_max_workers) | 6| <no value> | |
| [autovacuum_work_mem](https://postgresqlco.nf/en/doc/param/autovacuum_work_mem) | -1| kB | |
| [effective_cache_size](https://postgresqlco.nf/en/doc/param/effective_cache_size) | 43352064| 8kB | 330.75 GiB |
| [maintenance_work_mem](https://postgresqlco.nf/en/doc/param/maintenance_work_mem) | 2097152| kB | 2.00 GiB |
| [max_connections](https://postgresqlco.nf/en/doc/param/max_connections) | 300| <no value> | |
| [shared_buffers](https://postgresqlco.nf/en/doc/param/shared_buffers) | 14450688| 8kB | 110.25 GiB |
| [temp_buffers](https://postgresqlco.nf/en/doc/param/temp_buffers) | 1024| 8kB | 8.00 MiB |
| [work_mem](https://postgresqlco.nf/en/doc/param/work_mem) | 102400| kB | 100.00 MiB |
#### Replica (`10.220.16.105`) ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [autovacuum_max_workers](https://postgresqlco.nf/en/doc/param/autovacuum_max_workers) | 6| <no value> | |
| [autovacuum_work_mem](https://postgresqlco.nf/en/doc/param/autovacuum_work_mem) | -1| kB | |
| [effective_cache_size](https://postgresqlco.nf/en/doc/param/effective_cache_size) | 43352064| 8kB | 330.75 GiB |
| [maintenance_work_mem](https://postgresqlco.nf/en/doc/param/maintenance_work_mem) | 2097152| kB | 2.00 GiB |
| [max_connections](https://postgresqlco.nf/en/doc/param/max_connections) | 300| <no value> | |
| [shared_buffers](https://postgresqlco.nf/en/doc/param/shared_buffers) | 14450688| 8kB | 110.25 GiB |
| [temp_buffers](https://postgresqlco.nf/en/doc/param/temp_buffers) | 1024| 8kB | 8.00 MiB |
| [work_mem](https://postgresqlco.nf/en/doc/param/work_mem) | 102400| kB | 100.00 MiB |
#### Replica (`10.220.16.106`) ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [autovacuum_max_workers](https://postgresqlco.nf/en/doc/param/autovacuum_max_workers) | 6| <no value> | |
| [autovacuum_work_mem](https://postgresqlco.nf/en/doc/param/autovacuum_work_mem) | -1| kB | |
| [effective_cache_size](https://postgresqlco.nf/en/doc/param/effective_cache_size) | 43352064| 8kB | 330.75 GiB |
| [maintenance_work_mem](https://postgresqlco.nf/en/doc/param/maintenance_work_mem) | 2097152| kB | 2.00 GiB |
| [max_connections](https://postgresqlco.nf/en/doc/param/max_connections) | 300| <no value> | |
| [shared_buffers](https://postgresqlco.nf/en/doc/param/shared_buffers) | 14450688| 8kB | 110.25 GiB |
| [temp_buffers](https://postgresqlco.nf/en/doc/param/temp_buffers) | 1024| 8kB | 8.00 MiB |
| [work_mem](https://postgresqlco.nf/en/doc/param/work_mem) | 102400| kB | 100.00 MiB |
#### Replica (`10.220.16.107`) ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [autovacuum_max_workers](https://postgresqlco.nf/en/doc/param/autovacuum_max_workers) | 6| <no value> | |
| [autovacuum_work_mem](https://postgresqlco.nf/en/doc/param/autovacuum_work_mem) | -1| kB | |
| [effective_cache_size](https://postgresqlco.nf/en/doc/param/effective_cache_size) | 43352064| 8kB | 330.75 GiB |
| [maintenance_work_mem](https://postgresqlco.nf/en/doc/param/maintenance_work_mem) | 2097152| kB | 2.00 GiB |
| [max_connections](https://postgresqlco.nf/en/doc/param/max_connections) | 300| <no value> | |
| [shared_buffers](https://postgresqlco.nf/en/doc/param/shared_buffers) | 14450688| 8kB | 110.25 GiB |
| [temp_buffers](https://postgresqlco.nf/en/doc/param/temp_buffers) | 1024| 8kB | 8.00 MiB |
| [work_mem](https://postgresqlco.nf/en/doc/param/work_mem) | 102400| kB | 100.00 MiB |
#### Replica (`10.220.16.108`) ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [autovacuum_max_workers](https://postgresqlco.nf/en/doc/param/autovacuum_max_workers) | 6| <no value> | |
| [autovacuum_work_mem](https://postgresqlco.nf/en/doc/param/autovacuum_work_mem) | -1| kB | |
| [effective_cache_size](https://postgresqlco.nf/en/doc/param/effective_cache_size) | 43352064| 8kB | 330.75 GiB |
| [maintenance_work_mem](https://postgresqlco.nf/en/doc/param/maintenance_work_mem) | 2097152| kB | 2.00 GiB |
| [max_connections](https://postgresqlco.nf/en/doc/param/max_connections) | 300| <no value> | |
| [shared_buffers](https://postgresqlco.nf/en/doc/param/shared_buffers) | 14450688| 8kB | 110.25 GiB |
| [temp_buffers](https://postgresqlco.nf/en/doc/param/temp_buffers) | 1024| 8kB | 8.00 MiB |
| [work_mem](https://postgresqlco.nf/en/doc/param/work_mem) | 102400| kB | 100.00 MiB |
#### Replica (`10.220.16.109`) ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [autovacuum_max_workers](https://postgresqlco.nf/en/doc/param/autovacuum_max_workers) | 6| <no value> | |
| [autovacuum_work_mem](https://postgresqlco.nf/en/doc/param/autovacuum_work_mem) | -1| kB | |
| [effective_cache_size](https://postgresqlco.nf/en/doc/param/effective_cache_size) | 43352064| 8kB | 330.75 GiB |
| [maintenance_work_mem](https://postgresqlco.nf/en/doc/param/maintenance_work_mem) | 2097152| kB | 2.00 GiB |
| [max_connections](https://postgresqlco.nf/en/doc/param/max_connections) | 300| <no value> | |
| [shared_buffers](https://postgresqlco.nf/en/doc/param/shared_buffers) | 14450688| 8kB | 110.25 GiB |
| [temp_buffers](https://postgresqlco.nf/en/doc/param/temp_buffers) | 1024| 8kB | 8.00 MiB |
| [work_mem](https://postgresqlco.nf/en/doc/param/work_mem) | 102400| kB | 100.00 MiB |
## Conclusions ##
## Recommendations ##
---
<a name="postgres-checkup_G002"> </a>
[Table of contents](#postgres-checkup_top)
# G002 Connections and Current Activity #
## Observations ##
Data collected: 2019-09-30 13:56:35 +0000 UTC
### Master (`10.220.16.101`) ###
The list is limited to 20 items. Total: 19.
\# | User | DB | Current state | Count | State changed >1m ago | State changed >1h ago | Tx age >1m | Tx age >1h
|----|------|----|---------------|-------|-----------------------|-----------------------|------------|-----------
| 1 |ALL users|ALL databases| ALL states | 261 | 2 | 1 | 1 | 0 |
| 2 |`gitlab`|ALL databases| active | 22 | 0 | 0 | 0 | 0 |
| 3 |`gitlab-psql`|ALL databases| active | 3 | 1 | 0 | 1 | 0 |
| 4 |`gitlab-checkup`|ALL databases| active | 1 | 0 | 0 | 0 | 0 |
| 5 |`gitlab`|ALL databases| idle | 190 | 1 | 1 | 0 | 0 |
| 6 |`pgbouncer`|ALL databases| idle | 4 | 0 | 0 | 0 | 0 |
| 7 |`gitlab-monitor`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 8 |`gitlab-superuser`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 9 |`postgres_exporter`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 10 |`gitlab`|ALL databases| idle in transaction | 38 | 0 | 0 | 0 | 0 |
| 11 |`gitlab`|`gitlabhq_production`| active | 22 | 0 | 0 | 0 | 0 |
| 12 |`gitlab-psql`|`gitlabhq_production`| active | 3 | 1 | 0 | 1 | 0 |
| 13 |`gitlab-checkup`|`gitlabhq_production`| active | 1 | 0 | 0 | 0 | 0 |
| 14 |`gitlab`|`gitlabhq_production`| idle | 190 | 1 | 1 | 0 | 0 |
| 15 |`pgbouncer`|`gitlabhq_production`| idle | 4 | 0 | 0 | 0 | 0 |
| 16 |`postgres_exporter`|`gitlabhq_production`| idle | 1 | 0 | 0 | 0 | 0 |
| 17 |`gitlab-monitor`|`gitlabhq_production`| idle | 1 | 0 | 0 | 0 | 0 |
| 18 |`gitlab`|`gitlabhq_production`| idle in transaction | 38 | 0 | 0 | 0 | 0 |
| 19 |`gitlab-superuser`|`postgres`| idle | 1 | 0 | 0 | 0 | 0 |
### Replica servers: ###
#### Replica (`10.220.16.102`) ####
| \# | User | DB | Current state | Count | State changed >1m ago | State changed >1h ago | Tx age >1m | Tx age >1h |
|----|------|----|---------------|-------|-----------------------|-----------------------|------------|------------|
| 1 |ALL users|ALL databases| ALL states | 46 | 0 | 0 | 0 | 0 |
| 2 |`gitlab`|ALL databases| active | 5 | 0 | 0 | 0 | 0 |
| 3 |`gitlab-checkup`|ALL databases| active | 1 | 0 | 0 | 0 | 0 |
| 4 |`gitlab`|ALL databases| idle | 33 | 0 | 0 | 0 | 0 |
| 5 |`pgbouncer`|ALL databases| idle | 4 | 0 | 0 | 0 | 0 |
| 6 |`gitlab-monitor`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 7 |`gitlab-superuser`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 8 |`postgres_exporter`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 9 |`gitlab`|`gitlabhq_production`| active | 5 | 0 | 0 | 0 | 0 |
| 10 |`gitlab-checkup`|`gitlabhq_production`| active | 1 | 0 | 0 | 0 | 0 |
| 11 |`gitlab`|`gitlabhq_production`| idle | 33 | 0 | 0 | 0 | 0 |
| 12 |`pgbouncer`|`gitlabhq_production`| idle | 4 | 0 | 0 | 0 | 0 |
| 13 |`postgres_exporter`|`gitlabhq_production`| idle | 1 | 0 | 0 | 0 | 0 |
| 14 |`gitlab-monitor`|`gitlabhq_production`| idle | 1 | 0 | 0 | 0 | 0 |
| 15 |`gitlab-superuser`|`postgres`| idle | 1 | 0 | 0 | 0 | 0 |
#### Replica (`10.220.16.103`) ####
| \# | User | DB | Current state | Count | State changed >1m ago | State changed >1h ago | Tx age >1m | Tx age >1h |
|----|------|----|---------------|-------|-----------------------|-----------------------|------------|------------|
| 1 |ALL users|ALL databases| ALL states | 44 | 0 | 0 | 0 | 0 |
| 2 |`gitlab`|ALL databases| active | 6 | 0 | 0 | 0 | 0 |
| 3 |`gitlab-checkup`|ALL databases| active | 1 | 0 | 0 | 0 | 0 |
| 4 |`gitlab`|ALL databases| idle | 30 | 0 | 0 | 0 | 0 |
| 5 |`pgbouncer`|ALL databases| idle | 4 | 0 | 0 | 0 | 0 |
| 6 |`gitlab-monitor`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 7 |`gitlab-superuser`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 8 |`postgres_exporter`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 9 |`gitlab`|`gitlabhq_production`| active | 6 | 0 | 0 | 0 | 0 |
| 10 |`gitlab-checkup`|`gitlabhq_production`| active | 1 | 0 | 0 | 0 | 0 |
| 11 |`gitlab`|`gitlabhq_production`| idle | 30 | 0 | 0 | 0 | 0 |
| 12 |`pgbouncer`|`gitlabhq_production`| idle | 4 | 0 | 0 | 0 | 0 |
| 13 |`postgres_exporter`|`gitlabhq_production`| idle | 1 | 0 | 0 | 0 | 0 |
| 14 |`gitlab-monitor`|`gitlabhq_production`| idle | 1 | 0 | 0 | 0 | 0 |
| 15 |`gitlab-superuser`|`postgres`| idle | 1 | 0 | 0 | 0 | 0 |
#### Replica (`10.220.16.104`) ####
| \# | User | DB | Current state | Count | State changed >1m ago | State changed >1h ago | Tx age >1m | Tx age >1h |
|----|------|----|---------------|-------|-----------------------|-----------------------|------------|------------|
| 1 |ALL users|ALL databases| ALL states | 38 | 0 | 0 | 0 | 0 |
| 2 |`gitlab`|ALL databases| active | 4 | 0 | 0 | 0 | 0 |
| 3 |`gitlab-checkup`|ALL databases| active | 1 | 0 | 0 | 0 | 0 |
| 4 |`gitlab`|ALL databases| idle | 26 | 0 | 0 | 0 | 0 |
| 5 |`pgbouncer`|ALL databases| idle | 4 | 0 | 0 | 0 | 0 |
| 6 |`gitlab-monitor`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 7 |`gitlab-superuser`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 8 |`postgres_exporter`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 9 |`gitlab`|`gitlabhq_production`| active | 4 | 0 | 0 | 0 | 0 |
| 10 |`gitlab-checkup`|`gitlabhq_production`| active | 1 | 0 | 0 | 0 | 0 |
| 11 |`gitlab`|`gitlabhq_production`| idle | 26 | 0 | 0 | 0 | 0 |
| 12 |`pgbouncer`|`gitlabhq_production`| idle | 4 | 0 | 0 | 0 | 0 |
| 13 |`postgres_exporter`|`gitlabhq_production`| idle | 1 | 0 | 0 | 0 | 0 |
| 14 |`gitlab-monitor`|`gitlabhq_production`| idle | 1 | 0 | 0 | 0 | 0 |
| 15 |`gitlab-superuser`|`postgres`| idle | 1 | 0 | 0 | 0 | 0 |
#### Replica (`10.220.16.105`) ####
| \# | User | DB | Current state | Count | State changed >1m ago | State changed >1h ago | Tx age >1m | Tx age >1h |
|----|------|----|---------------|-------|-----------------------|-----------------------|------------|------------|
| 1 |ALL users|ALL databases| ALL states | 39 | 0 | 0 | 0 | 0 |
| 2 |`gitlab`|ALL databases| active | 3 | 0 | 0 | 0 | 0 |
| 3 |`gitlab-monitor`|ALL databases| active | 1 | 0 | 0 | 0 | 0 |
| 4 |`gitlab-checkup`|ALL databases| active | 1 | 0 | 0 | 0 | 0 |
| 5 |`gitlab`|ALL databases| idle | 28 | 0 | 0 | 0 | 0 |
| 6 |`pgbouncer`|ALL databases| idle | 4 | 0 | 0 | 0 | 0 |
| 7 |`gitlab-superuser`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 8 |`postgres_exporter`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 9 |`gitlab`|`gitlabhq_production`| active | 3 | 0 | 0 | 0 | 0 |
| 10 |`gitlab-checkup`|`gitlabhq_production`| active | 1 | 0 | 0 | 0 | 0 |
| 11 |`gitlab-monitor`|`gitlabhq_production`| active | 1 | 0 | 0 | 0 | 0 |
| 12 |`gitlab`|`gitlabhq_production`| idle | 28 | 0 | 0 | 0 | 0 |
| 13 |`pgbouncer`|`gitlabhq_production`| idle | 4 | 0 | 0 | 0 | 0 |
| 14 |`postgres_exporter`|`gitlabhq_production`| idle | 1 | 0 | 0 | 0 | 0 |
| 15 |`gitlab-superuser`|`postgres`| idle | 1 | 0 | 0 | 0 | 0 |
#### Replica (`10.220.16.106`) ####
| \# | User | DB | Current state | Count | State changed >1m ago | State changed >1h ago | Tx age >1m | Tx age >1h |
|----|------|----|---------------|-------|-----------------------|-----------------------|------------|------------|
| 1 |ALL users|ALL databases| ALL states | 48 | 0 | 0 | 0 | 0 |
| 2 |`gitlab`|ALL databases| active | 6 | 0 | 0 | 0 | 0 |
| 3 |`gitlab-checkup`|ALL databases| active | 1 | 0 | 0 | 0 | 0 |
| 4 |`gitlab`|ALL databases| idle | 33 | 0 | 0 | 0 | 0 |
| 5 |`pgbouncer`|ALL databases| idle | 4 | 0 | 0 | 0 | 0 |
| 6 |`gitlab-monitor`|ALL databases| idle | 2 | 0 | 0 | 0 | 0 |
| 7 |`gitlab-superuser`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 8 |`postgres_exporter`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 9 |`gitlab`|`gitlabhq_production`| active | 6 | 0 | 0 | 0 | 0 |
| 10 |`gitlab-checkup`|`gitlabhq_production`| active | 1 | 0 | 0 | 0 | 0 |
| 11 |`gitlab`|`gitlabhq_production`| idle | 33 | 0 | 0 | 0 | 0 |
| 12 |`pgbouncer`|`gitlabhq_production`| idle | 4 | 0 | 0 | 0 | 0 |
| 13 |`gitlab-monitor`|`gitlabhq_production`| idle | 2 | 0 | 0 | 0 | 0 |
| 14 |`postgres_exporter`|`gitlabhq_production`| idle | 1 | 0 | 0 | 0 | 0 |
| 15 |`gitlab-superuser`|`postgres`| idle | 1 | 0 | 0 | 0 | 0 |
#### Replica (`10.220.16.107`) ####
| \# | User | DB | Current state | Count | State changed >1m ago | State changed >1h ago | Tx age >1m | Tx age >1h |
|----|------|----|---------------|-------|-----------------------|-----------------------|------------|------------|
| 1 |ALL users|ALL databases| ALL states | 40 | 0 | 0 | 0 | 0 |
| 2 |`gitlab`|ALL databases| active | 2 | 0 | 0 | 0 | 0 |
| 3 |`gitlab-checkup`|ALL databases| active | 1 | 0 | 0 | 0 | 0 |
| 4 |`gitlab`|ALL databases| idle | 30 | 0 | 0 | 0 | 0 |
| 5 |`pgbouncer`|ALL databases| idle | 4 | 0 | 0 | 0 | 0 |
| 6 |`gitlab-monitor`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 7 |`gitlab-superuser`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 8 |`postgres_exporter`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 9 |`gitlab`|`gitlabhq_production`| active | 2 | 0 | 0 | 0 | 0 |
| 10 |`gitlab-checkup`|`gitlabhq_production`| active | 1 | 0 | 0 | 0 | 0 |
| 11 |`gitlab`|`gitlabhq_production`| idle | 30 | 0 | 0 | 0 | 0 |
| 12 |`pgbouncer`|`gitlabhq_production`| idle | 4 | 0 | 0 | 0 | 0 |
| 13 |`postgres_exporter`|`gitlabhq_production`| idle | 1 | 0 | 0 | 0 | 0 |
| 14 |`gitlab-monitor`|`gitlabhq_production`| idle | 1 | 0 | 0 | 0 | 0 |
| 15 |`gitlab-superuser`|`postgres`| idle | 1 | 0 | 0 | 0 | 0 |
#### Replica (`10.220.16.108`) ####
| \# | User | DB | Current state | Count | State changed >1m ago | State changed >1h ago | Tx age >1m | Tx age >1h |
|----|------|----|---------------|-------|-----------------------|-----------------------|------------|------------|
| 1 |ALL users|ALL databases| ALL states | 40 | 0 | 0 | 0 | 0 |
| 2 |`gitlab`|ALL databases| active | 2 | 0 | 0 | 0 | 0 |
| 3 |`gitlab-checkup`|ALL databases| active | 1 | 0 | 0 | 0 | 0 |
| 4 |`gitlab`|ALL databases| idle | 31 | 0 | 0 | 0 | 0 |
| 5 |`pgbouncer`|ALL databases| idle | 3 | 0 | 0 | 0 | 0 |
| 6 |`gitlab-monitor`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 7 |`gitlab-superuser`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 8 |`postgres_exporter`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 9 |`gitlab`|`gitlabhq_production`| active | 2 | 0 | 0 | 0 | 0 |
| 10 |`gitlab-checkup`|`gitlabhq_production`| active | 1 | 0 | 0 | 0 | 0 |
| 11 |`gitlab`|`gitlabhq_production`| idle | 31 | 0 | 0 | 0 | 0 |
| 12 |`pgbouncer`|`gitlabhq_production`| idle | 3 | 0 | 0 | 0 | 0 |
| 13 |`postgres_exporter`|`gitlabhq_production`| idle | 1 | 0 | 0 | 0 | 0 |
| 14 |`gitlab-monitor`|`gitlabhq_production`| idle | 1 | 0 | 0 | 0 | 0 |
| 15 |`gitlab-superuser`|`postgres`| idle | 1 | 0 | 0 | 0 | 0 |
#### Replica (`10.220.16.109`) ####
| \# | User | DB | Current state | Count | State changed >1m ago | State changed >1h ago | Tx age >1m | Tx age >1h |
|----|------|----|---------------|-------|-----------------------|-----------------------|------------|------------|
| 1 |ALL users|ALL databases| ALL states | 42 | 0 | 0 | 0 | 0 |
| 2 |`gitlab`|ALL databases| active | 6 | 0 | 0 | 0 | 0 |
| 3 |`gitlab-checkup`|ALL databases| active | 1 | 0 | 0 | 0 | 0 |
| 4 |`gitlab`|ALL databases| idle | 28 | 0 | 0 | 0 | 0 |
| 5 |`pgbouncer`|ALL databases| idle | 4 | 0 | 0 | 0 | 0 |
| 6 |`gitlab-monitor`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 7 |`gitlab-superuser`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 8 |`postgres_exporter`|ALL databases| idle | 1 | 0 | 0 | 0 | 0 |
| 9 |`gitlab`|`gitlabhq_production`| active | 6 | 0 | 0 | 0 | 0 |
| 10 |`gitlab-checkup`|`gitlabhq_production`| active | 1 | 0 | 0 | 0 | 0 |
| 11 |`gitlab`|`gitlabhq_production`| idle | 28 | 0 | 0 | 0 | 0 |
| 12 |`pgbouncer`|`gitlabhq_production`| idle | 4 | 0 | 0 | 0 | 0 |
| 13 |`postgres_exporter`|`gitlabhq_production`| idle | 1 | 0 | 0 | 0 | 0 |
| 14 |`gitlab-monitor`|`gitlabhq_production`| idle | 1 | 0 | 0 | 0 | 0 |
| 15 |`gitlab-superuser`|`postgres`| idle | 1 | 0 | 0 | 0 | 0 |
## Conclusions ##
## Recommendations ##
All good, no recommendations here.
---
<a name="postgres-checkup_G003"> </a>
[Table of contents](#postgres-checkup_top)
# G003 Timeouts, Locks, Deadlocks #
## Observations ##
Data collected: 2019-09-30 13:56:38 +0000 UTC
### Master (`10.220.16.101`) ###
#### Timeouts ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [authentication_timeout](https://postgresqlco.nf/en/doc/param/authentication_timeout)|60|s| |
| [idle_in_transaction_session_timeout](https://postgresqlco.nf/en/doc/param/idle_in_transaction_session_timeout)|30000|ms| |
| [statement_timeout](https://postgresqlco.nf/en/doc/param/statement_timeout)|15000|ms| |
#### Locks ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [deadlock_timeout](https://postgresqlco.nf/en/doc/param/deadlock_timeout)|5000|ms| |
| [lock_timeout](https://postgresqlco.nf/en/doc/param/lock_timeout)|0|ms| |
| [max_locks_per_transaction](https://postgresqlco.nf/en/doc/param/max_locks_per_transaction)|128|<no value>| |
| [max_pred_locks_per_transaction](https://postgresqlco.nf/en/doc/param/max_pred_locks_per_transaction)|64|<no value>| |
#### Databases data ####
| \# | Database | Conflicts | ▼ Deadlocks | Stats reset at | Stat reset |
|--|-----------|-------|-----------|----------------|------------|
| 1| `gitlabhq_production` | 0 | 20 | 2019-09-09T18:31:35.8238+00:00|20 days 19:06:17 |
| 2| `postgres` | 0 | 0 | 2019-09-09T18:31:33.20897+00:00|20 days 19:06:19 |
### Replica servers: ###
#### Replica (`10.220.16.102`) ####
#### Timeouts ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [authentication_timeout](https://postgresqlco.nf/en/doc/param/authentication_timeout)|60|s| |
| [idle_in_transaction_session_timeout](https://postgresqlco.nf/en/doc/param/idle_in_transaction_session_timeout)|30000|ms| |
| [statement_timeout](https://postgresqlco.nf/en/doc/param/statement_timeout)|15000|ms| |
#### Locks ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [deadlock_timeout](https://postgresqlco.nf/en/doc/param/deadlock_timeout)|5000|ms| |
| [lock_timeout](https://postgresqlco.nf/en/doc/param/lock_timeout)|0|ms| |
| [max_locks_per_transaction](https://postgresqlco.nf/en/doc/param/max_locks_per_transaction)|128|<no value>| |
| [max_pred_locks_per_transaction](https://postgresqlco.nf/en/doc/param/max_pred_locks_per_transaction)|64|<no value>| |
#### Databases data ####
| Database | Conflicts | ▼ Deadlocks | Stats reset at | Stat reset |
|----------|-----------|------------------------|----------------|------------|
| `postgres` | 0 | 0 | 2019-09-09T20:34:43.543476+00:00 | 20 days 17:04:22 |
| `gitlabhq_production` | 0 | 0 | 2019-09-09T20:34:45.4209+00:00 | 20 days 17:04:20 |
#### Replica (`10.220.16.103`) ####
#### Timeouts ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [authentication_timeout](https://postgresqlco.nf/en/doc/param/authentication_timeout)|60|s| |
| [idle_in_transaction_session_timeout](https://postgresqlco.nf/en/doc/param/idle_in_transaction_session_timeout)|30000|ms| |
| [statement_timeout](https://postgresqlco.nf/en/doc/param/statement_timeout)|15000|ms| |
#### Locks ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [deadlock_timeout](https://postgresqlco.nf/en/doc/param/deadlock_timeout)|5000|ms| |
| [lock_timeout](https://postgresqlco.nf/en/doc/param/lock_timeout)|0|ms| |
| [max_locks_per_transaction](https://postgresqlco.nf/en/doc/param/max_locks_per_transaction)|128|<no value>| |
| [max_pred_locks_per_transaction](https://postgresqlco.nf/en/doc/param/max_pred_locks_per_transaction)|64|<no value>| |
#### Databases data ####
| Database | Conflicts | ▼ Deadlocks | Stats reset at | Stat reset |
|----------|-----------|------------------------|----------------|------------|
| `postgres` | 0 | 0 | 2019-09-09T20:34:36.972379+00:00 | 20 days 17:05:45 |
| `gitlabhq_production` | 0 | 0 | 2019-09-09T20:34:37.497353+00:00 | 20 days 17:05:44 |
#### Replica (`10.220.16.104`) ####
#### Timeouts ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [authentication_timeout](https://postgresqlco.nf/en/doc/param/authentication_timeout)|60|s| |
| [idle_in_transaction_session_timeout](https://postgresqlco.nf/en/doc/param/idle_in_transaction_session_timeout)|30000|ms| |
| [statement_timeout](https://postgresqlco.nf/en/doc/param/statement_timeout)|15000|ms| |
#### Locks ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [deadlock_timeout](https://postgresqlco.nf/en/doc/param/deadlock_timeout)|5000|ms| |
| [lock_timeout](https://postgresqlco.nf/en/doc/param/lock_timeout)|0|ms| |
| [max_locks_per_transaction](https://postgresqlco.nf/en/doc/param/max_locks_per_transaction)|128|<no value>| |
| [max_pred_locks_per_transaction](https://postgresqlco.nf/en/doc/param/max_pred_locks_per_transaction)|64|<no value>| |
#### Databases data ####
| Database | Conflicts | ▼ Deadlocks | Stats reset at | Stat reset |
|----------|-----------|------------------------|----------------|------------|
| `postgres` | 0 | 0 | 2019-09-09T20:34:35.218275+00:00 | 20 days 17:07:16 |
| `gitlabhq_production` | 1 | 0 | 2019-09-09T20:34:35.422453+00:00 | 20 days 17:07:15 |
#### Replica (`10.220.16.105`) ####
#### Timeouts ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [authentication_timeout](https://postgresqlco.nf/en/doc/param/authentication_timeout)|60|s| |
| [idle_in_transaction_session_timeout](https://postgresqlco.nf/en/doc/param/idle_in_transaction_session_timeout)|30000|ms| |
| [statement_timeout](https://postgresqlco.nf/en/doc/param/statement_timeout)|15000|ms| |
#### Locks ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [deadlock_timeout](https://postgresqlco.nf/en/doc/param/deadlock_timeout)|5000|ms| |
| [lock_timeout](https://postgresqlco.nf/en/doc/param/lock_timeout)|0|ms| |
| [max_locks_per_transaction](https://postgresqlco.nf/en/doc/param/max_locks_per_transaction)|128|<no value>| |
| [max_pred_locks_per_transaction](https://postgresqlco.nf/en/doc/param/max_pred_locks_per_transaction)|64|<no value>| |
#### Databases data ####
| Database | Conflicts | ▼ Deadlocks | Stats reset at | Stat reset |
|----------|-----------|------------------------|----------------|------------|
| `postgres` | 0 | 0 | 2019-09-09T20:34:42.049288+00:00 | 20 days 17:09:06 |
| `gitlabhq_production` | 0 | 0 | 2019-09-09T20:34:43.018416+00:00 | 20 days 17:09:05 |
#### Replica (`10.220.16.106`) ####
#### Timeouts ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [authentication_timeout](https://postgresqlco.nf/en/doc/param/authentication_timeout)|60|s| |
| [idle_in_transaction_session_timeout](https://postgresqlco.nf/en/doc/param/idle_in_transaction_session_timeout)|30000|ms| |
| [statement_timeout](https://postgresqlco.nf/en/doc/param/statement_timeout)|15000|ms| |
#### Locks ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [deadlock_timeout](https://postgresqlco.nf/en/doc/param/deadlock_timeout)|5000|ms| |
| [lock_timeout](https://postgresqlco.nf/en/doc/param/lock_timeout)|0|ms| |
| [max_locks_per_transaction](https://postgresqlco.nf/en/doc/param/max_locks_per_transaction)|128|<no value>| |
| [max_pred_locks_per_transaction](https://postgresqlco.nf/en/doc/param/max_pred_locks_per_transaction)|64|<no value>| |
#### Databases data ####
| Database | Conflicts | ▼ Deadlocks | Stats reset at | Stat reset |
|----------|-----------|------------------------|----------------|------------|
| `postgres` | 0 | 0 | 2019-09-09T20:34:05.869755+00:00 | 20 days 17:11:57 |
| `gitlabhq_production` | 3 | 0 | 2019-09-09T20:34:08.542607+00:00 | 20 days 17:11:54 |
#### Replica (`10.220.16.107`) ####
#### Timeouts ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [authentication_timeout](https://postgresqlco.nf/en/doc/param/authentication_timeout)|60|s| |
| [idle_in_transaction_session_timeout](https://postgresqlco.nf/en/doc/param/idle_in_transaction_session_timeout)|30000|ms| |
| [statement_timeout](https://postgresqlco.nf/en/doc/param/statement_timeout)|15000|ms| |
#### Locks ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [deadlock_timeout](https://postgresqlco.nf/en/doc/param/deadlock_timeout)|5000|ms| |
| [lock_timeout](https://postgresqlco.nf/en/doc/param/lock_timeout)|0|ms| |
| [max_locks_per_transaction](https://postgresqlco.nf/en/doc/param/max_locks_per_transaction)|128|<no value>| |
| [max_pred_locks_per_transaction](https://postgresqlco.nf/en/doc/param/max_pred_locks_per_transaction)|64|<no value>| |
#### Databases data ####
| Database | Conflicts | ▼ Deadlocks | Stats reset at | Stat reset |
|----------|-----------|------------------------|----------------|------------|
| `postgres` | 0 | 0 | 2019-09-09T20:34:43.591948+00:00 | 20 days 17:14:16 |
| `gitlabhq_production` | 0 | 0 | 2019-09-09T20:34:46.149884+00:00 | 20 days 17:14:13 |
#### Replica (`10.220.16.108`) ####
#### Timeouts ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [authentication_timeout](https://postgresqlco.nf/en/doc/param/authentication_timeout)|60|s| |
| [idle_in_transaction_session_timeout](https://postgresqlco.nf/en/doc/param/idle_in_transaction_session_timeout)|30000|ms| |
| [statement_timeout](https://postgresqlco.nf/en/doc/param/statement_timeout)|15000|ms| |
#### Locks ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [deadlock_timeout](https://postgresqlco.nf/en/doc/param/deadlock_timeout)|5000|ms| |
| [lock_timeout](https://postgresqlco.nf/en/doc/param/lock_timeout)|0|ms| |
| [max_locks_per_transaction](https://postgresqlco.nf/en/doc/param/max_locks_per_transaction)|128|<no value>| |
| [max_pred_locks_per_transaction](https://postgresqlco.nf/en/doc/param/max_pred_locks_per_transaction)|64|<no value>| |
#### Databases data ####
| Database | Conflicts | ▼ Deadlocks | Stats reset at | Stat reset |
|----------|-----------|------------------------|----------------|------------|
| `postgres` | 0 | 0 | 2019-09-09T23:15:38.234878+00:00 | 20 days 14:36:54 |
| `gitlabhq_production` | 0 | 0 | 2019-09-09T23:15:42.35404+00:00 | 20 days 14:36:50 |
#### Replica (`10.220.16.109`) ####
#### Timeouts ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [authentication_timeout](https://postgresqlco.nf/en/doc/param/authentication_timeout)|60|s| |
| [idle_in_transaction_session_timeout](https://postgresqlco.nf/en/doc/param/idle_in_transaction_session_timeout)|30000|ms| |
| [statement_timeout](https://postgresqlco.nf/en/doc/param/statement_timeout)|15000|ms| |
#### Locks ####
| Setting name | Value | Unit | Pretty value |
|-------------|-------|------|--------------|
| [deadlock_timeout](https://postgresqlco.nf/en/doc/param/deadlock_timeout)|5000|ms| |
| [lock_timeout](https://postgresqlco.nf/en/doc/param/lock_timeout)|0|ms| |
| [max_locks_per_transaction](https://postgresqlco.nf/en/doc/param/max_locks_per_transaction)|128|<no value>| |
| [max_pred_locks_per_transaction](https://postgresqlco.nf/en/doc/param/max_pred_locks_per_transaction)|64|<no value>| |
#### Databases data ####
| Database | Conflicts | ▼ Deadlocks | Stats reset at | Stat reset |
|----------|-----------|------------------------|----------------|------------|
| `postgres` | 0 | 0 | 2019-09-09T20:34:24.604946+00:00 | 20 days 17:22:15 |
| `gitlabhq_production` | 0 | 0 | 2019-09-09T20:34:25.124515+00:00 | 20 days 17:22:14 |
## Conclusions ##
## Recommendations ##
---
<a name="postgres-checkup_H001"> </a>
[Table of contents](#postgres-checkup_top)
# H001 Invalid Indexes #
## Observations ##
Data collected: 2019-09-30 13:37:53 +0000 UTC
Current database: gitlabhq_production
### Master (`10.220.16.101`) ###
Invalid indexes not found
## Conclusions ##
## Recommendations ##
---
<a name="postgres-checkup_H002"> </a>
[Table of contents](#postgres-checkup_top)
# H002 Unused and Redundant Indexes #
## Observations ##
Data collected: 2019-09-30 13:56:40 +0000 UTC
Current database: gitlabhq_production
Stats reset: 20 days 19:06:00 ago (2019-09-09 18:31:36 +0000 UTC)
:warning: Statistics age is less than 30 days. Make decisions on index cleanup with caution!
### Never Used Indexes ###
The list is limited to 20 items. Total: 64.
| \#| Table | Index | 10.220.16.101 usage | 10.220.16.102 usage | 10.220.16.103 usage | 10.220.16.104 usage | 10.220.16.105 usage | 10.220.16.106 usage | 10.220.16.107 usage | 10.220.16.108 usage | 10.220.16.109 usage | ▼ Index size | Table size | Supports FK |
|--|-------|-------|----|--------|--------|--------|--------|--------|--------|--------|--------|-----|-----|-----|
| |=====TOTAL=====|||||||||||142.08 GiB|1.32 TiB||
|1|`ci_builds`|`index_ci_builds_on_protected`|0|0|0|0|0|0|0|0|0|15.24 GiB|291.56 GiB||
|2|`ci_builds`|`index_ci_builds_on_queued_at`|0|0|0|0|0|0|0|0|0|12.73 GiB|291.56 GiB||
|3|`ci_job_artifacts`|`index_ci_job_artifacts_on_file_store`|0|0|0|0|0|0|0|0|0|6.65 GiB|36.69 GiB||
|4|`audit_events`|`analytics_index_audit_events_on_created_at_and_author_id`|0|0|0|0|0|0|0|0|0|5.48 GiB|42.52 GiB||
|6|`projects`|`index_projects_on_pending_delete`|0|0|0|0|0|0|0|0|0|3.81 GiB|2.79 GiB|Yes|
|8|`projects`|`index_projects_on_last_repository_check_failed`|0|0|0|0|0|0|0|0|0|3.68 GiB|2.79 GiB|Yes|
|17|`projects`|`index_projects_on_mirror_last_successful_update_at`|0|0|0|0|0|0|0|0|0|3.67 GiB|2.79 GiB|Yes|
|18|`ci_stages`|`index_ci_stages_on_pipeline_id_and_position`|0|||||||||3.50 GiB|11.69 GiB||
|19|`merge_requests`|`index_merge_requests_on_title`|0|||||||||2.71 GiB|13.42 GiB|Yes|
|25|`ci_pipelines`|`index_ci_pipelines_on_status`|0|0||0|0|0|0|0|0|2.37 GiB|16.48 GiB|Yes|
|30|`users`|`index_users_on_accepted_term_id`|0|0|0|0|0|0|0|0|0|1.65 GiB|1.95 GiB|Yes|
|31|`merge_request_diffs`|`index_merge_request_diffs_on_merge_request_id_and_id_partial`|0|0|0|0|0|0|0|0|0|1.30 GiB|10.47 GiB||
|32|`deployments`|`index_deployments_on_created_at`|0|0|0|0|0|0|0|0|0|1.26 GiB|4.92 GiB||
|33|`projects`|`idx_project_repository_check_partial`|0|0|0|0|0|0|0|0|0|1.17 GiB|2.79 GiB||
|34|`merge_request_metrics`|`index_merge_request_metrics_on_first_deployed_to_production_at`|0|0||0|0|0|0|0|0|1.15 GiB|2.07 GiB||
|35|`ci_runners`|`index_ci_runners_on_is_shared`|0|0|0|0|0|0|0|0|0|712.40 MiB|107.80 MiB||
|36|`ci_runners`|`index_ci_runners_on_locked`|0|0|0|0|0|0|0|0|0|692.37 MiB|107.80 MiB||
|37|`ci_runners`|`index_ci_runners_on_contacted_at`|0|0|0|0|0|0||0|0|600.68 MiB|107.80 MiB||
|48|`projects`|`index_on_projects_lower_path`|0|0|0|0|0|0|0|0|0|588.54 MiB|2.79 GiB|Yes|
|61|`users`|`index_users_on_state_and_internal`|0|0|0|0|0|0|0|0|0|391.38 MiB|1.95 GiB|Yes|
### Rarely Used Indexes ###
The list is limited to 20 items. Total: 224.
|\#| Table | Index | 10.220.16.101 usage | 10.220.16.102 usage | 10.220.16.103 usage | 10.220.16.104 usage | 10.220.16.105 usage | 10.220.16.106 usage | 10.220.16.107 usage | 10.220.16.108 usage | 10.220.16.109 usage | ▼ Index size | Table size | Comment | Supports FK|
|--|-------|-------|-----|--------|--------|--------|--------|--------|--------|--------|--------|-----|-----|----|-----|
| |=====TOTAL=====|||||||||||1.02 TiB|8.23 TiB|||
|1|`ci_builds`|`index_ci_builds_on_commit_id_and_type_and_name_and_ref`|scans: 15,184,478\/hour, writes: 61,590,109\/hour|scans: 540,055\/hour, writes: 0\/hour|scans: 540,132\/hour, writes: 0\/hour|scans: 538,338\/hour, writes: 0\/hour|scans: 537,333\/hour, writes: 0\/hour|scans: 539,133\/hour, writes: 0\/hour|scans: 537,786\/hour, writes: 0\/hour|scans: 526,334\/hour, writes: 0\/hour|scans: 539,417\/hour, writes: 0\/hour|46.57 GiB|291.56 GiB|Low Scans, High Writes||
|2|`ci_build_trace_sections`|`index_ci_build_trace_sections_on_section_name_id`|scans: 62,280\/hour, writes: 94,958,723\/hour|||||||||32.44 GiB|94.16 GiB|Low Scans, High Writes||
|3|`ci_build_trace_sections`|`index_ci_build_trace_sections_on_project_id`|scans: 92,791\/hour, writes: 94,958,723\/hour|||||||||31.68 GiB|94.16 GiB|Low Scans, High Writes||
|4|`events`|`index_events_on_project_id_and_created_at`|scans: 1,303\/hour, writes: 21,500,162\/hour|scans: 198,781\/hour, writes: 0\/hour|scans: 235,881\/hour, writes: 0\/hour|scans: 195,901\/hour, writes: 0\/hour|scans: 247,361\/hour, writes: 0\/hour|scans: 255,539\/hour, writes: 0\/hour|scans: 219,018\/hour, writes: 0\/hour|scans: 209,909\/hour, writes: 0\/hour|scans: 205,767\/hour, writes: 0\/hour|16.29 GiB|28.75 GiB|Low Scans, High Writes||
|5|`notes`|`index_notes_on_discussion_id`|scans: 7,141,296\/hour, writes: 25,105,136\/hour|scans: 81,208\/hour, writes: 0\/hour|scans: 80,707\/hour, writes: 0\/hour|scans: 80,786\/hour, writes: 0\/hour|scans: 80,784\/hour, writes: 0\/hour|scans: 81,633\/hour, writes: 0\/hour|scans: 80,685\/hour, writes: 0\/hour|scans: 78,162\/hour, writes: 0\/hour|scans: 80,935\/hour, writes: 0\/hour|15.56 GiB|122.34 GiB|Low Scans, High Writes||
|7|`ci_builds`|`index_ci_builds_on_auto_canceled_by_id`|scans: 462,028\/hour, writes: 61,590,109\/hour|||||||||15.42 GiB|291.56 GiB|Low Scans, High Writes|Yes|
|8|`ci_builds`|`tmp_build_stage_position_index`|scans: 442\/hour, writes: 61,590,109\/hour|||||||||15.20 GiB|291.56 GiB|Low Scans, High Writes||
|9|`ci_builds`|`index_ci_builds_on_status_and_type_and_runner_id`|scans: 37,318,642\/hour, writes: 61,590,109\/hour|scans: 4,777,664\/hour, writes: 0\/hour|scans: 4,771,316\/hour, writes: 0\/hour|scans: 4,774,908\/hour, writes: 0\/hour|scans: 4,783,094\/hour, writes: 0\/hour|scans: 4,776,569\/hour, writes: 0\/hour|scans: 4,787,719\/hour, writes: 0\/hour|scans: 4,642,701\/hour, writes: 0\/hour|scans: 4,781,555\/hour, writes: 0\/hour|14.66 GiB|291.56 GiB|Low Scans, High Writes||
|11|`ci_builds`|`index_ci_builds_on_runner_id`|scans: 8,230,782\/hour, writes: 61,590,109\/hour|scans: 1,338,618\/hour, writes: 0\/hour|scans: 1,336,588\/hour, writes: 0\/hour|scans: 1,337,588\/hour, writes: 0\/hour|scans: 1,338,962\/hour, writes: 0\/hour|scans: 1,338,756\/hour, writes: 0\/hour|scans: 1,340,959\/hour, writes: 0\/hour|scans: 1,295,198\/hour, writes: 0\/hour|scans: 1,337,986\/hour, writes: 0\/hour|14.35 GiB|291.56 GiB|Low Scans, High Writes|Yes|
|12|`events`|`analytics_index_events_on_created_at_and_author_id`|scans: 23,784\/hour, writes: 21,500,162\/hour|scans: 378,398\/hour, writes: 0\/hour|scans: 378,258\/hour, writes: 0\/hour|scans: 378,261\/hour, writes: 0\/hour|scans: 377,617\/hour, writes: 0\/hour|scans: 375,349\/hour, writes: 0\/hour|scans: 376,656\/hour, writes: 0\/hour|scans: 364,601\/hour, writes: 0\/hour|scans: 376,180\/hour, writes: 0\/hour|13.07 GiB|28.75 GiB|Low Scans, High Writes||
|13|`ci_builds`|`index_ci_builds_on_updated_at`|scans: 2,470\/hour, writes: 61,590,109\/hour|||||||||12.65 GiB|291.56 GiB|Low Scans, High Writes||
|14|`ci_job_artifacts`|`index_ci_job_artifacts_on_expire_at_and_job_id`|scans: 36,018\/hour, writes: 38,258,788\/hour||||scans: 5\/hour, writes: 0\/hour|||||12.06 GiB|36.69 GiB|Low Scans, High Writes||
|15|`ci_builds`|`ci_builds_gitlab_monitor_metrics`|scans: 2,912\/hour, writes: 61,590,109\/hour|scans: 4,530\/hour, writes: 0\/hour|scans: 4,701\/hour, writes: 0\/hour|scans: 4,597\/hour, writes: 0\/hour|scans: 4,514\/hour, writes: 0\/hour|scans: 4,639\/hour, writes: 0\/hour|scans: 4,500\/hour, writes: 0\/hour|scans: 4,131\/hour, writes: 0\/hour|scans: 4,535\/hour, writes: 0\/hour|11.37 GiB|291.56 GiB|Low Scans, High Writes||
|16|`events`|`index_events_on_author_id_and_project_id`|scans: 4,174,240\/hour, writes: 21,500,162\/hour|||||||||11.36 GiB|28.75 GiB|Low Scans, High Writes||
|17|`events`|`index_events_on_action`|scans: 2\/hour, writes: 21,500,162\/hour|scans: 650\/hour, writes: 0\/hour|scans: 604\/hour, writes: 0\/hour|scans: 660\/hour, writes: 0\/hour|scans: 618\/hour, writes: 0\/hour|scans: 624\/hour, writes: 0\/hour|scans: 661\/hour, writes: 0\/hour|scans: 600\/hour, writes: 0\/hour|scans: 664\/hour, writes: 0\/hour|10.27 GiB|28.75 GiB|Low Scans, High Writes||
|18|`events`|`index_events_on_project_id_and_id`|scans: 3,363,724\/hour, writes: 21,500,162\/hour|||||||||10.14 GiB|28.75 GiB|Low Scans, High Writes||
|20|`ci_builds`|`index_ci_builds_on_user_id`|scans: 2,195\/hour, writes: 61,590,109\/hour|||||||||9.97 GiB|291.56 GiB|Low Scans, High Writes|Yes|
|21|`ci_job_artifacts`|`index_ci_job_artifacts_on_project_id`|scans: 92,794\/hour, writes: 38,258,788\/hour|scans: 3\/hour, writes: 0\/hour|scans: 24\/hour, writes: 0\/hour|scans: 5\/hour, writes: 0\/hour|scans: 9\/hour, writes: 0\/hour|scans: 12\/hour, writes: 0\/hour|scans: 5\/hour, writes: 0\/hour|scans: 4\/hour, writes: 0\/hour|scans: 6\/hour, writes: 0\/hour|8.03 GiB|36.69 GiB|Low Scans, High Writes||
|22|`notes`|`index_notes_on_line_code`|scans: 28,475\/hour, writes: 25,105,136\/hour|||||||||6.79 GiB|122.34 GiB|Low Scans, High Writes||
|23|`ci_builds_metadata`|`index_ci_builds_metadata_on_project_id`|scans: 92,790\/hour, writes: 28,508,424\/hour|||||||||5.80 GiB|11.05 GiB|Low Scans, High Writes||
### Redundant Indexes ###
|\#| Table | Index | Redundant to |10.220.16.101 usage | 10.220.16.102 usage | 10.220.16.103 usage | 10.220.16.104 usage | 10.220.16.105 usage | 10.220.16.106 usage | 10.220.16.107 usage | 10.220.16.108 usage | 10.220.16.109 usage | ▼ Index size | Table size | Supports FK |
|--|-------|-------|--------------|--|--------|--------|--------|--------|--------|--------|--------|--------|-----|-----|-----|
| |=====TOTAL=====||||||||||||20.29 MiB|55.01 MiB||
|1|`namespace_root_storage_statistics`|`index_namespace_root_storage_statistics_on_namespace_id`|`namespace_root_storage_statistics_pkey`<br/>|0|||||||||14.68 MiB|47.50 MiB||
|2|`namespace_aggregation_schedules`|`index_namespace_aggregation_schedules_on_namespace_id`|`namespace_aggregation_schedules_pkey`<br/>|0|||||||||2.36 MiB|768.00 KiB||
|3|`user_statuses`|`index_user_statuses_on_user_id`|`user_statuses_pkey`<br/>|0|||||||||2.23 MiB|5.43 MiB||
|4|`project_feature_usages`|`index_project_feature_usages_on_project_id`|`project_feature_usages_pkey`<br/>|0|||||||||1.04 MiB|1.35 MiB||
## Conclusions ##
## Recommendations ##
#### "DO" database migration code ####
```
DROP INDEX CONCURRENTLY index_analytics_ca_group_stages_on_group_id; -- 8192 bytes, index_analytics_ca_group_stages_on_group_id_and_name, table analytics_cycle_analytics_group_stages
DROP INDEX CONCURRENTLY index_analytics_ca_project_stages_on_project_id; -- 8192 bytes, index_analytics_ca_project_stages_on_project_id_and_name, table analytics_cycle_analytics_project_stages
DROP INDEX CONCURRENTLY index_approval_merge_request_rules_1; -- 124 MB, approval_rule_name_index_for_code_owners, table approval_merge_request_rules
DROP INDEX CONCURRENTLY index_approval_rules_code_owners_rule_type; -- 2864 kB, index_approval_rule_name_for_code_owners_rule_type, any_approver_merge_request_rule_type_unique_index, table approval_merge_request_rules
DROP INDEX CONCURRENTLY index_approval_project_rules_on_project_id; -- 2584 kB, any_approver_project_rule_type_unique_index, table approval_project_rules
DROP INDEX CONCURRENTLY analytics_index_audit_events_on_created_at_and_author_id; -- 5603 MB, Never Used Indexes, table audit_events
DROP INDEX CONCURRENTLY index_board_group_recent_visits_on_user_id; -- 616 kB, index_board_group_recent_visits_on_user_group_and_board, Never Used Indexes, table board_group_recent_visits
DROP INDEX CONCURRENTLY index_board_project_recent_visits_on_user_id; -- 2176 kB, index_board_project_recent_visits_on_user_project_and_board, table board_project_recent_visits
DROP INDEX CONCURRENTLY index_ci_builds_on_artifacts_expire_at; -- 82 MB, Never Used Indexes, table ci_builds
DROP INDEX CONCURRENTLY index_ci_builds_on_protected; -- 15 GB, Never Used Indexes, table ci_builds
DROP INDEX CONCURRENTLY index_ci_builds_on_queued_at; -- 13 GB, Never Used Indexes, table ci_builds
DROP INDEX CONCURRENTLY index_ci_builds_on_stage_id; -- 10 GB, tmp_build_stage_position_index, table ci_builds
DROP INDEX CONCURRENTLY index_ci_builds_metadata_on_build_id_and_interruptible; -- 80 kB, index_ci_builds_metadata_on_build_id, table ci_builds_metadata
DROP INDEX CONCURRENTLY index_ci_job_artifacts_on_file_store; -- 6802 MB, Never Used Indexes, table ci_job_artifacts
DROP INDEX CONCURRENTLY index_ci_job_artifacts_on_project_id; -- 8216 MB, index_ci_job_artifacts_on_project_id_for_security_reports, table ci_job_artifacts
DROP INDEX CONCURRENTLY index_ci_job_artifacts_on_project_id_for_security_reports; -- 16 MB, Never Used Indexes, index_ci_job_artifacts_on_project_id, table ci_job_artifacts
DROP INDEX CONCURRENTLY index_ci_pipeline_schedules_on_next_run_at_and_active; -- 22 MB, Never Used Indexes, table ci_pipeline_schedules
DROP INDEX CONCURRENTLY index_ci_pipelines_on_project_id; -- 2333 MB, index_ci_pipelines_on_project_idandrefandiddesc, index_ci_pipelines_on_project_id_and_sha, index_ci_pipelines_on_project_id_and_ref_and_status_and_id, index_ci_pipelines_on_project_id_and_source, index_ci_pipelines_on_project_id_and_iid, index_ci_pipelines_on_project_id_and_status_and_config_source, table ci_pipelines
DROP INDEX CONCURRENTLY index_ci_pipelines_on_status; -- 2425 MB, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, table ci_pipelines
DROP INDEX CONCURRENTLY index_ci_runners_on_contacted_at; -- 601 MB, Never Used Indexes, table ci_runners
DROP INDEX CONCURRENTLY index_ci_runners_on_is_shared; -- 712 MB, Never Used Indexes, table ci_runners
DROP INDEX CONCURRENTLY index_ci_runners_on_locked; -- 692 MB, Never Used Indexes, table ci_runners
DROP INDEX CONCURRENTLY index_ci_runners_on_token; -- 560 MB, index_ci_runners_on_token_encrypted, table ci_runners
DROP INDEX CONCURRENTLY index_ci_stages_on_pipeline_id; -- 3539 MB, index_ci_stages_on_pipeline_id_and_name, index_ci_stages_on_pipeline_id_and_position, table ci_stages
DROP INDEX CONCURRENTLY index_ci_stages_on_pipeline_id_and_position; -- 3578 MB, Never Used Indexes, table ci_stages
DROP INDEX CONCURRENTLY index_clusters_kubernetes_namespaces_on_cluster_id; -- 1232 kB, kubernetes_namespaces_cluster_and_namespace, index_kubernetes_namespaces_on_cluster_project_environment_id, table clusters_kubernetes_namespaces
DROP INDEX CONCURRENTLY index_container_repositories_on_project_id; -- 16 MB, index_container_repositories_on_project_id_and_name, table container_repositories
DROP INDEX CONCURRENTLY index_deploy_tokens_on_token_and_expires_at_and_id; -- 11 MB, Never Used Indexes, table deploy_tokens
DROP INDEX CONCURRENTLY index_deployments_on_created_at; -- 1290 MB, Never Used Indexes, table deployments
DROP INDEX CONCURRENTLY index_deployments_on_project_id_and_status; -- 878 MB, index_deployments_on_project_id_and_status_and_created_at, table deployments
DROP INDEX CONCURRENTLY partial_index_deployments_for_legacy_successful_deployments; -- 8192 bytes, index_deployments_on_cluster_id_and_status, deployments_pkey, Never Used Indexes, table deployments
DROP INDEX CONCURRENTLY index_design_management_designs_versions_on_design_id; -- 40 kB, design_management_designs_versions_uniqueness, table design_management_designs_versions
DROP INDEX CONCURRENTLY index_design_management_designs_versions_on_event; -- 48 kB, Never Used Indexes, table design_management_designs_versions
DROP INDEX CONCURRENTLY index_epics_on_end_date; -- 920 kB, Never Used Indexes, Never Used Indexes, table epics
DROP INDEX CONCURRENTLY index_epics_on_start_date; -- 912 kB, Never Used Indexes, Never Used Indexes, table epics
DROP INDEX CONCURRENTLY index_milestone; -- 1544 kB, index_epics_on_closed_by_id, index_epics_on_parent_id, table epics
DROP INDEX CONCURRENTLY index_geo_node_namespace_links_on_geo_node_id; -- 8192 bytes, index_geo_node_namespace_links_on_geo_node_id_and_namespace_id, table geo_node_namespace_links
DROP INDEX CONCURRENTLY index_issue_links_on_source_id; -- 9240 kB, index_issue_links_on_source_id_and_target_id, table issue_links
DROP INDEX CONCURRENTLY idx_jira_connect_subscriptions_on_installation_id; -- 16 kB, Never Used Indexes, idx_jira_connect_subscriptions_on_installation_id_namespace_id, table jira_connect_subscriptions
DROP INDEX CONCURRENTLY index_label_priorities_on_priority; -- 3256 kB, Never Used Indexes, table label_priorities
DROP INDEX CONCURRENTLY index_list_user_preferences_on_user_id; -- 744 kB, index_list_user_preferences_on_user_id_and_list_id, table list_user_preferences
DROP INDEX CONCURRENTLY index_members_on_access_level; -- 348 MB, Never Used Indexes, table members
DROP INDEX CONCURRENTLY index_merge_request_assignees_on_merge_request_id; -- 311 MB, index_merge_request_assignees_on_merge_request_id_and_user_id, table merge_request_assignees
DROP INDEX CONCURRENTLY index_merge_request_diffs_on_merge_request_id_and_id; -- 1247 MB, index_merge_request_diffs_on_merge_request_id_and_id_partial, table merge_request_diffs
DROP INDEX CONCURRENTLY index_merge_request_diffs_on_merge_request_id_and_id_partial; -- 1322 MB, index_merge_request_diffs_on_merge_request_id_and_id, Never Used Indexes, table merge_request_diffs
DROP INDEX CONCURRENTLY index_merge_request_metrics; -- 851 MB, index_merge_request_metrics_on_merge_request_id_and_merged_at, table merge_request_metrics
DROP INDEX CONCURRENTLY index_merge_request_metrics_on_first_deployed_to_production_at; -- 1170 MB, Never Used Indexes, table merge_request_metrics
DROP INDEX CONCURRENTLY index_merge_request_metrics_on_latest_closed_at; -- 35 MB, Never Used Indexes, table merge_request_metrics
DROP INDEX CONCURRENTLY index_merge_requests_on_source_project_and_branch_state_opened; -- 187 MB, index_merge_requests_on_source_project_id_and_source_branch, table merge_requests
DROP INDEX CONCURRENTLY index_merge_requests_on_source_project_id_and_source_branch; -- 2450 MB, index_merge_requests_on_source_project_and_branch_state_opened, table merge_requests
DROP INDEX CONCURRENTLY index_merge_requests_on_state_and_merge_status; -- 295 MB, Never Used Indexes, table merge_requests
DROP INDEX CONCURRENTLY index_merge_requests_on_target_project_id_and_iid_opened; -- 107 MB, index_merge_requests_on_target_project_id_and_iid, table merge_requests
DROP INDEX CONCURRENTLY index_merge_requests_on_title; -- 2765 MB, Never Used Indexes, table merge_requests
DROP INDEX CONCURRENTLY index_namespace_aggregation_schedules_on_namespace_id; -- 2408 kB, namespace_aggregation_schedules_pkey, table namespace_aggregation_schedules
DROP INDEX CONCURRENTLY index_namespace_root_storage_statistics_on_namespace_id; -- 15 MB, namespace_root_storage_statistics_pkey, table namespace_root_storage_statistics
DROP INDEX CONCURRENTLY index_namespaces_on_created_at; -- 236 MB, Never Used Indexes, Never Used Indexes, Never Used Indexes, table namespaces
DROP INDEX CONCURRENTLY index_namespaces_on_ldap_sync_last_successful_update_at; -- 291 MB, Never Used Indexes, Never Used Indexes, table namespaces
DROP INDEX CONCURRENTLY index_namespaces_on_ldap_sync_last_update_at; -- 291 MB, Never Used Indexes, Never Used Indexes, table namespaces
DROP INDEX CONCURRENTLY index_namespaces_on_path; -- 257 MB, index_namespaces_on_runners_token_encrypted, index_namespaces_on_runners_token, table namespaces
DROP INDEX CONCURRENTLY index_namespaces_on_plan_id; -- 291 MB, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, table namespaces
DROP INDEX CONCURRENTLY index_namespaces_on_require_two_factor_authentication; -- 291 MB, Never Used Indexes, table namespaces
DROP INDEX CONCURRENTLY index_namespaces_on_shared_and_extra_runners_minutes_limit; -- 291 MB, Never Used Indexes, table namespaces
DROP INDEX CONCURRENTLY index_namespaces_on_trial_ends_on; -- 760 kB, Never Used Indexes, Never Used Indexes, Never Used Indexes, table namespaces
DROP INDEX CONCURRENTLY index_on_namespaces_lower_name; -- 336 MB, index_on_namespaces_lower_path, table namespaces
DROP INDEX CONCURRENTLY index_on_namespaces_lower_path; -- 257 MB, index_on_namespaces_lower_name, table namespaces
DROP INDEX CONCURRENTLY index_notification_settings_on_user_id; -- 406 MB, index_notifications_on_user_id_and_source_id_and_source_type, table notification_settings
DROP INDEX CONCURRENTLY index_pages_domain_acme_orders_on_challenge_token; -- 56 kB, Never Used Indexes, table pages_domain_acme_orders
DROP INDEX CONCURRENTLY index_pages_domains_on_project_id; -- 3576 kB, index_pages_domains_on_project_id_and_enabled_until, table pages_domains
DROP INDEX CONCURRENTLY index_pages_domains_on_verified_at; -- 4584 kB, index_pages_domains_on_verified_at_and_enabled_until, table pages_domains
DROP INDEX CONCURRENTLY index_pages_domains_on_verified_at_and_enabled_until; -- 5920 kB, Never Used Indexes, table pages_domains
DROP INDEX CONCURRENTLY index_pool_repositories_on_shard_id; -- 296 kB, Never Used Indexes, table pool_repositories
DROP INDEX CONCURRENTLY index_project_custom_attributes_on_key_and_value; -- 16 kB, Never Used Indexes, table project_custom_attributes
DROP INDEX CONCURRENTLY index_project_feature_usages_on_project_id; -- 1064 kB, project_feature_usages_pkey, table project_feature_usages
DROP INDEX CONCURRENTLY index_project_mirror_data_on_jid; -- 236 MB, Never Used Indexes, table project_mirror_data
DROP INDEX CONCURRENTLY index_project_mirror_data_on_last_successful_update_at; -- 390 MB, Never Used Indexes, table project_mirror_data
DROP INDEX CONCURRENTLY index_project_repositories_on_shard_id; -- 259 MB, Never Used Indexes, table project_repositories
DROP INDEX CONCURRENTLY idx_repository_states_on_last_repository_verification_ran_at; -- 227 MB, Never Used Indexes, table project_repository_states
DROP INDEX CONCURRENTLY idx_repository_states_on_last_wiki_verification_ran_at; -- 243 MB, Never Used Indexes, table project_repository_states
DROP INDEX CONCURRENTLY idx_repository_states_on_repository_failure_partial; -- 16 kB, Never Used Indexes, table project_repository_states
DROP INDEX CONCURRENTLY idx_repository_states_on_wiki_failure_partial; -- 8192 bytes, Never Used Indexes, table project_repository_states
DROP INDEX CONCURRENTLY idx_repository_states_outdated_checksums; -- 23 MB, Never Used Indexes, index_project_repository_states_on_project_id, idx_repository_states_on_last_wiki_verification_ran_at, idx_repository_states_on_last_repository_verification_ran_at, table project_repository_states
DROP INDEX CONCURRENTLY idx_project_repository_check_partial; -- 1191 MB, Never Used Indexes, table projects
DROP INDEX CONCURRENTLY index_on_projects_lower_path; -- 589 MB, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, index_projects_on_lower_name, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, table projects
DROP INDEX CONCURRENTLY index_on_projects_path; -- 564 MB, index_projects_on_runners_token, table projects
DROP INDEX CONCURRENTLY index_projects_on_id_partial_for_visibility; -- 59 MB, projects_pkey, table projects
DROP INDEX CONCURRENTLY index_projects_on_last_repository_check_at; -- 16 kB, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, table projects
DROP INDEX CONCURRENTLY index_projects_on_last_repository_check_failed; -- 3762 MB, Never Used Indexes, Never Used Indexes, table projects
DROP INDEX CONCURRENTLY index_projects_on_lower_name; -- 592 MB, index_on_projects_lower_path, table projects
DROP INDEX CONCURRENTLY index_projects_on_mirror_and_mirror_trigger_builds_both_true; -- 3416 kB, projects_pkey, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, index_projects_on_star_count, index_projects_on_visibility_level, index_projects_on_id_partial_for_visibility, idx_projects_on_repository_storage_last_repository_updated_at, table projects
DROP INDEX CONCURRENTLY index_projects_on_mirror_last_successful_update_at; -- 3750 MB, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, table projects
DROP INDEX CONCURRENTLY index_projects_on_pending_delete; -- 3893 MB, Never Used Indexes, Never Used Indexes, table projects
DROP INDEX CONCURRENTLY index_projects_on_repository_storage; -- 4725 MB, idx_project_repository_check_partial, table projects
DROP INDEX CONCURRENTLY index_prometheus_metrics_on_group; -- 40 kB, Never Used Indexes, table prometheus_metrics
DROP INDEX CONCURRENTLY index_protected_branches_on_project_id; -- 514 MB, code_owner_approval_required, table protected_branches
DROP INDEX CONCURRENTLY index_protected_environments_on_project_id; -- 56 kB, index_protected_environments_on_project_id_and_name, table protected_environments
DROP INDEX CONCURRENTLY index_protected_tags_on_project_id; -- 544 kB, index_protected_tags_on_project_id_and_name, table protected_tags
DROP INDEX CONCURRENTLY index_remote_mirrors_on_last_successful_update_at; -- 37 MB, Never Used Indexes, table remote_mirrors
DROP INDEX CONCURRENTLY index_snippets_on_updated_at; -- 6552 kB, Never Used Indexes, table snippets
DROP INDEX CONCURRENTLY index_taggings_on_tag_id; -- 2823 MB, taggings_idx, table taggings
DROP INDEX CONCURRENTLY index_taggings_on_taggable_id_and_taggable_type; -- 4573 MB, index_taggings_on_taggable_id_and_taggable_type_and_context, table taggings
DROP INDEX CONCURRENTLY index_term_agreements_on_term_id; -- 89 MB, Never Used Indexes, table term_agreements
DROP INDEX CONCURRENTLY index_term_agreements_on_user_id; -- 76 MB, Never Used Indexes, term_agreements_unique_index, table term_agreements
DROP INDEX CONCURRENTLY index_timelogs_on_user_id; -- 31 MB, Never Used Indexes, table timelogs
DROP INDEX CONCURRENTLY index_todos_on_user_id; -- 910 MB, index_todos_on_user_id_and_id_pending, index_todos_on_user_id_and_id_done, table todos
DROP INDEX CONCURRENTLY index_todos_on_user_id_and_id_done; -- 725 MB, index_todos_on_user_id_and_id_pending, table todos
DROP INDEX CONCURRENTLY index_todos_on_user_id_and_id_pending; -- 214 MB, index_todos_on_user_id_and_id_done, table todos
DROP INDEX CONCURRENTLY index_u2f_registrations_on_key_handle; -- 2432 kB, Never Used Indexes, table u2f_registrations
DROP INDEX CONCURRENTLY index_user_callouts_on_user_id; -- 11 MB, Never Used Indexes, index_user_callouts_on_user_id_and_feature_name, table user_callouts
DROP INDEX CONCURRENTLY index_user_statuses_on_user_id; -- 2280 kB, user_statuses_pkey, table user_statuses
DROP INDEX CONCURRENTLY index_on_users_lower_email; -- 313 MB, index_on_users_name_lower, index_on_users_lower_username, table users
DROP INDEX CONCURRENTLY index_on_users_lower_username; -- 215 MB, index_on_users_lower_email, index_on_users_name_lower, table users
DROP INDEX CONCURRENTLY index_on_users_name_lower; -- 243 MB, index_on_users_lower_username, index_on_users_lower_email, table users
DROP INDEX CONCURRENTLY index_users_on_accepted_term_id; -- 1681 MB, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, table users
DROP INDEX CONCURRENTLY index_users_on_created_at; -- 281 MB, Never Used Indexes, Never Used Indexes, table users
DROP INDEX CONCURRENTLY index_users_on_email_trigram; -- 382 MB, index_users_on_username_trigram, table users
DROP INDEX CONCURRENTLY index_users_on_state; -- 1841 MB, index_users_on_state_and_internal, index_users_on_state_and_internal_ee, table users
DROP INDEX CONCURRENTLY index_users_on_state_and_internal; -- 391 MB, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, index_users_on_state, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, Never Used Indexes, index_users_on_state_and_internal_ee, Never Used Indexes, Never Used Indexes, table users
DROP INDEX CONCURRENTLY index_users_on_state_and_internal_ee; -- 392 MB, index_users_on_state_and_internal, index_users_on_state, table users
```
#### "UNDO" database migration code ####
```
CREATE INDEX CONCURRENTLY index_analytics_ca_group_stages_on_group_id ON public.analytics_cycle_analytics_group_stages USING btree (group_id); -- table analytics_cycle_analytics_group_stages
CREATE INDEX CONCURRENTLY index_analytics_ca_project_stages_on_project_id ON public.analytics_cycle_analytics_project_stages USING btree (project_id); -- table analytics_cycle_analytics_project_stages
CREATE INDEX CONCURRENTLY index_approval_merge_request_rules_1 ON public.approval_merge_request_rules USING btree (merge_request_id, code_owner); -- table approval_merge_request_rules
CREATE INDEX CONCURRENTLY index_approval_rules_code_owners_rule_type ON public.approval_merge_request_rules USING btree (merge_request_id, rule_type) WHERE (rule_type = 2); -- table approval_merge_request_rules
CREATE INDEX CONCURRENTLY index_approval_project_rules_on_project_id ON public.approval_project_rules USING btree (project_id); -- table approval_project_rules
CREATE INDEX CONCURRENTLY analytics_index_audit_events_on_created_at_and_author_id ON public.audit_events USING btree (created_at, author_id); -- table audit_events
CREATE INDEX CONCURRENTLY index_board_group_recent_visits_on_user_id ON public.board_group_recent_visits USING btree (user_id); -- table board_group_recent_visits
CREATE INDEX CONCURRENTLY index_board_project_recent_visits_on_user_id ON public.board_project_recent_visits USING btree (user_id); -- table board_project_recent_visits
CREATE INDEX CONCURRENTLY index_ci_builds_on_artifacts_expire_at ON public.ci_builds USING btree (artifacts_expire_at) WHERE (artifacts_file <> ''::text); -- table ci_builds
CREATE INDEX CONCURRENTLY index_ci_builds_on_protected ON public.ci_builds USING btree (protected); -- table ci_builds
CREATE INDEX CONCURRENTLY index_ci_builds_on_queued_at ON public.ci_builds USING btree (queued_at); -- table ci_builds
CREATE INDEX CONCURRENTLY index_ci_builds_on_stage_id ON public.ci_builds USING btree (stage_id); -- table ci_builds
CREATE INDEX CONCURRENTLY index_ci_builds_metadata_on_build_id_and_interruptible ON public.ci_builds_metadata USING btree (build_id) WHERE (interruptible = true); -- table ci_builds_metadata
CREATE INDEX CONCURRENTLY index_ci_job_artifacts_on_file_store ON public.ci_job_artifacts USING btree (file_store); -- table ci_job_artifacts
CREATE INDEX CONCURRENTLY index_ci_job_artifacts_on_project_id ON public.ci_job_artifacts USING btree (project_id); -- table ci_job_artifacts
CREATE INDEX CONCURRENTLY index_ci_job_artifacts_on_project_id_for_security_reports ON public.ci_job_artifacts USING btree (project_id) WHERE (file_type = ANY (ARRAY[5, 6, 7, 8])); -- table ci_job_artifacts
CREATE INDEX CONCURRENTLY index_ci_pipeline_schedules_on_next_run_at_and_active ON public.ci_pipeline_schedules USING btree (next_run_at, active); -- table ci_pipeline_schedules
CREATE INDEX CONCURRENTLY index_ci_pipelines_on_project_id ON public.ci_pipelines USING btree (project_id); -- table ci_pipelines
CREATE INDEX CONCURRENTLY index_ci_pipelines_on_status ON public.ci_pipelines USING btree (status); -- table ci_pipelines
CREATE INDEX CONCURRENTLY index_ci_runners_on_contacted_at ON public.ci_runners USING btree (contacted_at); -- table ci_runners
CREATE INDEX CONCURRENTLY index_ci_runners_on_is_shared ON public.ci_runners USING btree (is_shared); -- table ci_runners
CREATE INDEX CONCURRENTLY index_ci_runners_on_locked ON public.ci_runners USING btree (locked); -- table ci_runners
CREATE INDEX CONCURRENTLY index_ci_runners_on_token ON public.ci_runners USING btree (token); -- table ci_runners
CREATE INDEX CONCURRENTLY index_ci_stages_on_pipeline_id ON public.ci_stages USING btree (pipeline_id); -- table ci_stages
CREATE INDEX CONCURRENTLY index_ci_stages_on_pipeline_id_and_position ON public.ci_stages USING btree (pipeline_id, "position"); -- table ci_stages
CREATE INDEX CONCURRENTLY index_clusters_kubernetes_namespaces_on_cluster_id ON public.clusters_kubernetes_namespaces USING btree (cluster_id); -- table clusters_kubernetes_namespaces
CREATE INDEX CONCURRENTLY index_container_repositories_on_project_id ON public.container_repositories USING btree (project_id); -- table container_repositories
CREATE INDEX CONCURRENTLY index_deploy_tokens_on_token_and_expires_at_and_id ON public.deploy_tokens USING btree (token, expires_at, id) WHERE (revoked IS FALSE); -- table deploy_tokens
CREATE INDEX CONCURRENTLY index_deployments_on_created_at ON public.deployments USING btree (created_at); -- table deployments
CREATE INDEX CONCURRENTLY index_deployments_on_project_id_and_status ON public.deployments USING btree (project_id, status); -- table deployments
CREATE INDEX CONCURRENTLY partial_index_deployments_for_legacy_successful_deployments ON public.deployments USING btree (id) WHERE ((finished_at IS NULL) AND (status = 2)); -- table deployments
CREATE INDEX CONCURRENTLY index_design_management_designs_versions_on_design_id ON public.design_management_designs_versions USING btree (design_id); -- table design_management_designs_versions
CREATE INDEX CONCURRENTLY index_design_management_designs_versions_on_event ON public.design_management_designs_versions USING btree (event); -- table design_management_designs_versions
CREATE INDEX CONCURRENTLY index_epics_on_end_date ON public.epics USING btree (end_date); -- table epics
CREATE INDEX CONCURRENTLY index_epics_on_start_date ON public.epics USING btree (start_date); -- table epics
CREATE INDEX CONCURRENTLY index_milestone ON public.epics USING btree (milestone_id); -- table epics
CREATE INDEX CONCURRENTLY index_geo_node_namespace_links_on_geo_node_id ON public.geo_node_namespace_links USING btree (geo_node_id); -- table geo_node_namespace_links
CREATE INDEX CONCURRENTLY index_issue_links_on_source_id ON public.issue_links USING btree (source_id); -- table issue_links
CREATE INDEX CONCURRENTLY idx_jira_connect_subscriptions_on_installation_id ON public.jira_connect_subscriptions USING btree (jira_connect_installation_id); -- table jira_connect_subscriptions
CREATE INDEX CONCURRENTLY index_label_priorities_on_priority ON public.label_priorities USING btree (priority); -- table label_priorities
CREATE INDEX CONCURRENTLY index_list_user_preferences_on_user_id ON public.list_user_preferences USING btree (user_id); -- table list_user_preferences
CREATE INDEX CONCURRENTLY index_members_on_access_level ON public.members USING btree (access_level); -- table members
CREATE INDEX CONCURRENTLY index_merge_request_assignees_on_merge_request_id ON public.merge_request_assignees USING btree (merge_request_id); -- table merge_request_assignees
CREATE INDEX CONCURRENTLY index_merge_request_diffs_on_merge_request_id_and_id ON public.merge_request_diffs USING btree (merge_request_id, id); -- table merge_request_diffs
CREATE INDEX CONCURRENTLY index_merge_request_diffs_on_merge_request_id_and_id_partial ON public.merge_request_diffs USING btree (merge_request_id, id) WHERE ((NOT stored_externally) OR (stored_externally IS NULL)); -- table merge_request_diffs
CREATE INDEX CONCURRENTLY index_merge_request_metrics ON public.merge_request_metrics USING btree (merge_request_id); -- table merge_request_metrics
CREATE INDEX CONCURRENTLY index_merge_request_metrics_on_first_deployed_to_production_at ON public.merge_request_metrics USING btree (first_deployed_to_production_at); -- table merge_request_metrics
CREATE INDEX CONCURRENTLY index_merge_request_metrics_on_latest_closed_at ON public.merge_request_metrics USING btree (latest_closed_at) WHERE (latest_closed_at IS NOT NULL); -- table merge_request_metrics
CREATE INDEX CONCURRENTLY index_merge_requests_on_source_project_and_branch_state_opened ON public.merge_requests USING btree (source_project_id, source_branch) WHERE ((state)::text = 'opened'::text); -- table merge_requests
CREATE INDEX CONCURRENTLY index_merge_requests_on_source_project_id_and_source_branch ON public.merge_requests USING btree (source_project_id, source_branch); -- table merge_requests
CREATE INDEX CONCURRENTLY index_merge_requests_on_state_and_merge_status ON public.merge_requests USING btree (state, merge_status) WHERE (((state)::text = 'opened'::text) AND ((merge_status)::text = 'can_be_merged'::text)); -- table merge_requests
CREATE INDEX CONCURRENTLY index_merge_requests_on_target_project_id_and_iid_opened ON public.merge_requests USING btree (target_project_id, iid) WHERE ((state)::text = 'opened'::text); -- table merge_requests
CREATE INDEX CONCURRENTLY index_merge_requests_on_title ON public.merge_requests USING btree (title); -- table merge_requests
CREATE UNIQUE INDEX index_namespace_aggregation_schedules_on_namespace_id ON public.namespace_aggregation_schedules USING btree (namespace_id); -- table namespace_aggregation_schedules
CREATE UNIQUE INDEX index_namespace_root_storage_statistics_on_namespace_id ON public.namespace_root_storage_statistics USING btree (namespace_id); -- table namespace_root_storage_statistics
CREATE INDEX CONCURRENTLY index_namespaces_on_created_at ON public.namespaces USING btree (created_at); -- table namespaces
CREATE INDEX CONCURRENTLY index_namespaces_on_ldap_sync_last_successful_update_at ON public.namespaces USING btree (ldap_sync_last_successful_update_at); -- table namespaces
CREATE INDEX CONCURRENTLY index_namespaces_on_ldap_sync_last_update_at ON public.namespaces USING btree (ldap_sync_last_update_at); -- table namespaces
CREATE INDEX CONCURRENTLY index_namespaces_on_path ON public.namespaces USING btree (path); -- table namespaces
CREATE INDEX CONCURRENTLY index_namespaces_on_plan_id ON public.namespaces USING btree (plan_id); -- table namespaces
CREATE INDEX CONCURRENTLY index_namespaces_on_require_two_factor_authentication ON public.namespaces USING btree (require_two_factor_authentication); -- table namespaces
CREATE INDEX CONCURRENTLY index_namespaces_on_shared_and_extra_runners_minutes_limit ON public.namespaces USING btree (shared_runners_minutes_limit, extra_shared_runners_minutes_limit); -- table namespaces
CREATE INDEX CONCURRENTLY index_namespaces_on_trial_ends_on ON public.namespaces USING btree (trial_ends_on) WHERE (trial_ends_on IS NOT NULL); -- table namespaces
CREATE INDEX CONCURRENTLY index_on_namespaces_lower_name ON public.namespaces USING btree (lower((name)::text)); -- table namespaces
CREATE INDEX CONCURRENTLY index_on_namespaces_lower_path ON public.namespaces USING btree (lower((path)::text)); -- table namespaces
CREATE INDEX CONCURRENTLY index_notification_settings_on_user_id ON public.notification_settings USING btree (user_id); -- table notification_settings
CREATE INDEX CONCURRENTLY index_pages_domain_acme_orders_on_challenge_token ON public.pages_domain_acme_orders USING btree (challenge_token); -- table pages_domain_acme_orders
CREATE INDEX CONCURRENTLY index_pages_domains_on_project_id ON public.pages_domains USING btree (project_id); -- table pages_domains
CREATE INDEX CONCURRENTLY index_pages_domains_on_verified_at ON public.pages_domains USING btree (verified_at); -- table pages_domains
CREATE INDEX CONCURRENTLY index_pages_domains_on_verified_at_and_enabled_until ON public.pages_domains USING btree (verified_at, enabled_until); -- table pages_domains
CREATE INDEX CONCURRENTLY index_pool_repositories_on_shard_id ON public.pool_repositories USING btree (shard_id); -- table pool_repositories
CREATE INDEX CONCURRENTLY index_project_custom_attributes_on_key_and_value ON public.project_custom_attributes USING btree (key, value); -- table project_custom_attributes
CREATE INDEX CONCURRENTLY index_project_feature_usages_on_project_id ON public.project_feature_usages USING btree (project_id); -- table project_feature_usages
CREATE INDEX CONCURRENTLY index_project_mirror_data_on_jid ON public.project_mirror_data USING btree (jid); -- table project_mirror_data
CREATE INDEX CONCURRENTLY index_project_mirror_data_on_last_successful_update_at ON public.project_mirror_data USING btree (last_successful_update_at); -- table project_mirror_data
CREATE INDEX CONCURRENTLY index_project_repositories_on_shard_id ON public.project_repositories USING btree (shard_id); -- table project_repositories
CREATE INDEX CONCURRENTLY idx_repository_states_on_last_repository_verification_ran_at ON public.project_repository_states USING btree (project_id, last_repository_verification_ran_at) WHERE ((repository_verification_checksum IS NOT NULL) AND (last_repository_verification_failure IS NULL)); -- table project_repository_states
CREATE INDEX CONCURRENTLY idx_repository_states_on_last_wiki_verification_ran_at ON public.project_repository_states USING btree (project_id, last_wiki_verification_ran_at) WHERE ((wiki_verification_checksum IS NOT NULL) AND (last_wiki_verification_failure IS NULL)); -- table project_repository_states
CREATE INDEX CONCURRENTLY idx_repository_states_on_repository_failure_partial ON public.project_repository_states USING btree (last_repository_verification_failure) WHERE (last_repository_verification_failure IS NOT NULL); -- table project_repository_states
CREATE INDEX CONCURRENTLY idx_repository_states_on_wiki_failure_partial ON public.project_repository_states USING btree (last_wiki_verification_failure) WHERE (last_wiki_verification_failure IS NOT NULL); -- table project_repository_states
CREATE INDEX CONCURRENTLY idx_repository_states_outdated_checksums ON public.project_repository_states USING btree (project_id) WHERE (((repository_verification_checksum IS NULL) AND (last_repository_verification_failure IS NULL)) OR ((wiki_verification_checksum IS NULL) AND (last_wiki_verification_failure IS NULL))); -- table project_repository_states
CREATE INDEX CONCURRENTLY idx_project_repository_check_partial ON public.projects USING btree (repository_storage, created_at) WHERE (last_repository_check_at IS NULL); -- table projects
CREATE INDEX CONCURRENTLY index_on_projects_lower_path ON public.projects USING btree (lower((path)::text)); -- table projects
CREATE INDEX CONCURRENTLY index_on_projects_path ON public.projects USING btree (path); -- table projects
CREATE UNIQUE INDEX index_projects_on_id_partial_for_visibility ON public.projects USING btree (id) WHERE (visibility_level = ANY (ARRAY[10, 20])); -- table projects
CREATE INDEX CONCURRENTLY index_projects_on_last_repository_check_at ON public.projects USING btree (last_repository_check_at) WHERE (last_repository_check_at IS NOT NULL); -- table projects
CREATE INDEX CONCURRENTLY index_projects_on_last_repository_check_failed ON public.projects USING btree (last_repository_check_failed); -- table projects
CREATE INDEX CONCURRENTLY index_projects_on_lower_name ON public.projects USING btree (lower((name)::text)); -- table projects
CREATE INDEX CONCURRENTLY index_projects_on_mirror_and_mirror_trigger_builds_both_true ON public.projects USING btree (id) WHERE ((mirror IS TRUE) AND (mirror_trigger_builds IS TRUE)); -- table projects
CREATE INDEX CONCURRENTLY index_projects_on_mirror_last_successful_update_at ON public.projects USING btree (mirror_last_successful_update_at); -- table projects
CREATE INDEX CONCURRENTLY index_projects_on_pending_delete ON public.projects USING btree (pending_delete); -- table projects
CREATE INDEX CONCURRENTLY index_projects_on_repository_storage ON public.projects USING btree (repository_storage); -- table projects
CREATE INDEX CONCURRENTLY index_prometheus_metrics_on_group ON public.prometheus_metrics USING btree ("group"); -- table prometheus_metrics
CREATE INDEX CONCURRENTLY index_protected_branches_on_project_id ON public.protected_branches USING btree (project_id); -- table protected_branches
CREATE INDEX CONCURRENTLY index_protected_environments_on_project_id ON public.protected_environments USING btree (project_id); -- table protected_environments
CREATE INDEX CONCURRENTLY index_protected_tags_on_project_id ON public.protected_tags USING btree (project_id); -- table protected_tags
CREATE INDEX CONCURRENTLY index_remote_mirrors_on_last_successful_update_at ON public.remote_mirrors USING btree (last_successful_update_at); -- table remote_mirrors
CREATE INDEX CONCURRENTLY index_snippets_on_updated_at ON public.snippets USING btree (updated_at); -- table snippets
CREATE INDEX CONCURRENTLY index_taggings_on_tag_id ON public.taggings USING btree (tag_id); -- table taggings
CREATE INDEX CONCURRENTLY index_taggings_on_taggable_id_and_taggable_type ON public.taggings USING btree (taggable_id, taggable_type); -- table taggings
CREATE INDEX CONCURRENTLY index_term_agreements_on_term_id ON public.term_agreements USING btree (term_id); -- table term_agreements
CREATE INDEX CONCURRENTLY index_term_agreements_on_user_id ON public.term_agreements USING btree (user_id); -- table term_agreements
CREATE INDEX CONCURRENTLY index_timelogs_on_user_id ON public.timelogs USING btree (user_id); -- table timelogs
CREATE INDEX CONCURRENTLY index_todos_on_user_id ON public.todos USING btree (user_id); -- table todos
CREATE INDEX CONCURRENTLY index_todos_on_user_id_and_id_done ON public.todos USING btree (user_id, id) WHERE ((state)::text = 'done'::text); -- table todos
CREATE INDEX CONCURRENTLY index_todos_on_user_id_and_id_pending ON public.todos USING btree (user_id, id) WHERE ((state)::text = 'pending'::text); -- table todos
CREATE INDEX CONCURRENTLY index_u2f_registrations_on_key_handle ON public.u2f_registrations USING btree (key_handle); -- table u2f_registrations
CREATE INDEX CONCURRENTLY index_user_callouts_on_user_id ON public.user_callouts USING btree (user_id); -- table user_callouts
CREATE INDEX CONCURRENTLY index_user_statuses_on_user_id ON public.user_statuses USING btree (user_id); -- table user_statuses
CREATE INDEX CONCURRENTLY index_on_users_lower_email ON public.users USING btree (lower((email)::text)); -- table users
CREATE INDEX CONCURRENTLY index_on_users_lower_username ON public.users USING btree (lower((username)::text)); -- table users
CREATE INDEX CONCURRENTLY index_on_users_name_lower ON public.users USING btree (lower((name)::text)); -- table users
CREATE INDEX CONCURRENTLY index_users_on_accepted_term_id ON public.users USING btree (accepted_term_id); -- table users
CREATE INDEX CONCURRENTLY index_users_on_created_at ON public.users USING btree (created_at); -- table users
CREATE INDEX CONCURRENTLY index_users_on_email_trigram ON public.users USING gin (email gin_trgm_ops); -- table users
CREATE INDEX CONCURRENTLY index_users_on_state ON public.users USING btree (state); -- table users
CREATE INDEX CONCURRENTLY index_users_on_state_and_internal ON public.users USING btree (state) WHERE (ghost IS NOT TRUE); -- table users
CREATE INDEX CONCURRENTLY index_users_on_state_and_internal_ee ON public.users USING btree (state) WHERE ((ghost IS NOT TRUE) AND (bot_type IS NULL)); -- table users
```
---
<a name="postgres-checkup_H003"> </a>
[Table of contents](#postgres-checkup_top)
# H003 Non-indexed Foreign Keys #
## Observations ##
Data collected: 2019-09-30 13:37:57 +0000 UTC
Current database: gitlabhq_production
### Master (`10.220.16.101`) ###
| Num | Schema name | Table name | FK name | Issue | Table mb | writes | Table scans | Parent name | Parent mb | Parent writes | Cols list | Indexdef |
|----|-------------|------------|---------|-------|----------|--------|-------------|-------------|-----------|---------------|-----------|----------|
|1 | `public` | `ci_builds` | `fk_87f4cefcda` |questionable index |298553 |61590381 |0 |ci_pipelines |16866 |17087895 |[upstream_pipeline_id] |CREATE INDEX index_ci_builds_on_upstream_pipeline_id ON public.ci_builds USING btree (upstream_pipeline_id) WHERE (upstream_pipeline_id IS NOT NULL)|
|2 | `public` | `ci_builds` | `fk_d3130c9a7f` |questionable index |298553 |61590381 |0 |ci_pipelines |16866 |17087895 |[commit_id] |CREATE INDEX index_ci_builds_on_commit_id_and_artifacts_expireatandidpartial ON public.ci_builds USING btree (commit_id, artifacts_expire_at, id) WHERE (((type)::text = 'Ci::Build'::text) AND ((retried = false) OR (retried IS NULL)) AND ((name)::text = ANY ((ARRAY['sast'::character varying, 'dependency_scanning'::character varying, 'sast:container'::character varying, 'container_scanning'::character varying, 'dast'::character varying])::text[])))|
|3 | `public` | `ci_builds` | `fk_d3130c9a7f` |questionable index |298553 |61590381 |0 |ci_pipelines |16866 |17087895 |[commit_id] |CREATE INDEX index_ci_builds_on_commit_id_and_type_and_ref ON public.ci_builds USING btree (commit_id, type, ref)|
|4 | `public` | `ci_builds` | `fk_d3130c9a7f` |questionable index |298553 |61590381 |0 |ci_pipelines |16866 |17087895 |[commit_id] |CREATE INDEX index_ci_builds_on_commit_id_and_stage_idx_and_created_at ON public.ci_builds USING btree (commit_id, stage_idx, created_at)|
|5 | `public` | `ci_builds` | `fk_d3130c9a7f` |questionable index |298553 |61590381 |0 |ci_pipelines |16866 |17087895 |[commit_id] |CREATE INDEX index_ci_builds_on_commit_id_and_type_and_name_and_ref ON public.ci_builds USING btree (commit_id, type, name, ref)|
|6 | `public` | `ci_builds` | `fk_d3130c9a7f` |questionable index |298553 |61590381 |0 |ci_pipelines |16866 |17087895 |[commit_id] |CREATE INDEX index_ci_builds_on_commit_id_and_status_and_type ON public.ci_builds USING btree (commit_id, status, type)|
|7 | `public` | `events` | `fk_61fbf6ca48` |questionable index |29432 |21500241 |4 |namespaces |718 |896445 |[group_id] |CREATE INDEX index_events_on_group_id_partial ON public.events USING btree (group_id) WHERE (group_id IS NOT NULL)|
|8 | `public` | `ci_pipelines` | `fk_190998ef09` |questionable index |16866 |17087895 |2 |external_pull_requests |0 |12276 |[external_pull_request_id] |CREATE INDEX index_ci_pipelines_on_external_pull_request_id ON public.ci_pipelines USING btree (external_pull_request_id) WHERE (external_pull_request_id IS NOT NULL)|
|9 | `public` | `ci_pipelines` | `fk_a23be95014` |questionable index |16866 |17087895 |2 |merge_requests |13737 |27847227 |[merge_request_id] |CREATE INDEX index_ci_pipelines_on_merge_request_id ON public.ci_pipelines USING btree (merge_request_id) WHERE (merge_request_id IS NOT NULL)|
|10 | `public` | `merge_requests` | `fk_641731faff` |questionable index |13737 |27847227 |6 |users |1996 |15477966 |[updated_by_id] |CREATE INDEX index_merge_requests_on_updated_by_id ON public.merge_requests USING btree (updated_by_id) WHERE (updated_by_id IS NOT NULL)|
|11 | `public` | `merge_requests` | `fk_ad525e1f87` |questionable index |13737 |27847227 |6 |users |1996 |15477966 |[merge_user_id] |CREATE INDEX index_merge_requests_on_merge_user_id ON public.merge_requests USING btree (merge_user_id) WHERE (merge_user_id IS NOT NULL)|
|12 | `public` | `issues` | `fk_9c4516d665` |questionable index |12856 |6677639 |2222 |issues |12856 |6677639 |[duplicated_to_id] |CREATE INDEX index_issues_on_duplicated_to_id ON public.issues USING btree (duplicated_to_id) WHERE (duplicated_to_id IS NOT NULL)|
|13 | `public` | `issues` | `fk_a194299be1` |questionable index |12856 |6677639 |2222 |issues |12856 |6677639 |[moved_to_id] |CREATE INDEX index_issues_on_moved_to_id ON public.issues USING btree (moved_to_id) WHERE (moved_to_id IS NOT NULL)|
|14 | `public` | `issues` | `fk_ffed080f01` |questionable index |12856 |6677639 |2222 |users |1996 |15477966 |[updated_by_id] |CREATE INDEX index_issues_on_updated_by_id ON public.issues USING btree (updated_by_id) WHERE (updated_by_id IS NOT NULL)|
|15 | `public` | `projects` | `fk_6e5c14658a` |questionable index |2850 |22381071 |93440 |pool_repositories |1 |11033 |[pool_repository_id] |CREATE INDEX index_projects_on_pool_repository_id ON public.projects USING btree (pool_repository_id) WHERE (pool_repository_id IS NOT NULL)|
|16 | `public` | `project_authorizations` | `fk_rails_11e7aa3ed9` |questionable index |1727 |6398788 |0 |users |1996 |15477966 |[user_id] |CREATE UNIQUE INDEX index_project_authorizations_on_user_id_project_id_access_level ON public.project_authorizations USING btree (user_id, project_id, access_level)|
|17 | `public` | `labels` | `fk_rails_c1ac5161d8` |questionable index |928 |378327 |20 |namespaces |718 |896445 |[group_id] |CREATE UNIQUE INDEX index_labels_on_group_id_and_project_id_and_title ON public.labels USING btree (group_id, project_id, title)|
|18 | `public` | `vulnerability_occurrences` | `fk_rails_90fed4faba` |questionable index |731 |144337 |0 |projects |2850 |22381071 |[project_id] |CREATE UNIQUE INDEX index_vulnerability_occurrences_on_unique_keys ON public.vulnerability_occurrences USING btree (project_id, primary_identifier_id, location_fingerprint, scanner_id)|
|19 | `public` | `namespaces` | `fk_e7a0b20a6b` |questionable index |718 |896445 |20086 |namespaces |718 |896445 |[custom_project_templates_group_id] |CREATE INDEX index_namespaces_on_custom_project_templates_group_id_and_type ON public.namespaces USING btree (custom_project_templates_group_id, type) WHERE (custom_project_templates_group_id IS NOT NULL)|
|20 | `public` | `ci_variables` | `fk_ada5eb64b3` |questionable index |225 |824385 |0 |projects |2850 |22381071 |[project_id] |CREATE UNIQUE INDEX index_ci_variables_on_project_id_and_key_and_environment_scope ON public.ci_variables USING btree (project_id, key, environment_scope)|
## Conclusions ##
## Recommendations ##
---
<a name="postgres-checkup_K001"> </a>
[Table of contents](#postgres-checkup_top)
# K001 Globally Aggregated Query Metrics
## Observations ##
Data collected: 2019-09-30 13:57:28 +0000 UTC
Current database: gitlabhq_production
### Master (`10.220.16.101`) ###
Start: 2019-09-30T13:06:11.519966+00:00
End: 2019-09-30T13:37:59.792427+00:00
Period seconds: 1908.27246
Period age: 00:31:48.272461
Error (calls): 0.00 (0.00%)
Error (total time): 0.00 (0.00%)
| Calls | Total time | Rows | shared_blks_hit | shared_blks_read | shared_blks_dirtied | shared_blks_written | blk_read_time | blk_write_time | kcache_reads | kcache_writes | kcache_user_time_ms | kcache_system_time |
|-------|------------|------|-----------------|------------------|---------------------|---------------------|---------------|----------------|--------------|---------------|---------------------|--------------------|
|29,701,831<br/>15.57K/sec<br/>1.00/call<br/>100.00% |6,113,505.21 ms<br/>3203.686 ms/sec<br/>0.206 ms/call<br/>100.00% |126,260,839<br/>66.17K/sec<br/>4.25/call<br/>100.00% |1,225,683,429 blks<br/>642.31K blks/sec<br/>41.27 blks/call<br/>100.00% |1,204,989 blks<br/>631.46 blks/sec<br/>0.04 blks/call<br/>100.00% |2,224,707 blks<br/>1.17K blks/sec<br/>0.07 blks/call<br/>100.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |563,630.82 ms<br/>295.362 ms/sec<br/>0.019 ms/call<br/>100.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
### Replica servers: ###
#### Replica (`10.220.16.102`) ####
Start: 2019-09-30T13:06:14.399331+00:00
End: 2019-09-30T13:39:13.29931+00:00
Period seconds: 1978.89998
Period age: 00:32:58.899979
| Calls | Total time | Rows | shared_blks_hit | shared_blks_read | shared_blks_dirtied | shared_blks_written | blk_read_time | blk_write_time | kcache_reads | kcache_writes | kcache_user_time_ms | kcache_system_time |
|-------|------------|------|-----------------|------------------|---------------------|---------------------|---------------|----------------|--------------|---------------|---------------------|--------------------|
|9,075,973<br/>4.59K/sec<br/>1.00/call<br/>100.00% |3,216,173.56 ms<br/>1625.233 ms/sec<br/>0.354 ms/call<br/>100.00% |30,031,897<br/>15.18K/sec<br/>3.31/call<br/>100.00% |1,218,572,413 blks<br/>615.79K blks/sec<br/>134.26 blks/call<br/>100.00% |1,544,001 blks<br/>780.23 blks/sec<br/>0.17 blks/call<br/>100.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |156,240.06 ms<br/>78.953 ms/sec<br/>0.017 ms/call<br/>100.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
#### Replica (`10.220.16.103`) ####
Start: 2019-09-30T13:06:17.052557+00:00
End: 2019-09-30T13:40:33.301941+00:00
Period seconds: 2056.24938
Period age: 00:34:16.249384
| Calls | Total time | Rows | shared_blks_hit | shared_blks_read | shared_blks_dirtied | shared_blks_written | blk_read_time | blk_write_time | kcache_reads | kcache_writes | kcache_user_time_ms | kcache_system_time |
|-------|------------|------|-----------------|------------------|---------------------|---------------------|---------------|----------------|--------------|---------------|---------------------|--------------------|
|9,623,347<br/>4.69K/sec<br/>1.00/call<br/>100.00% |3,461,444.67 ms<br/>1683.378 ms/sec<br/>0.360 ms/call<br/>100.00% |31,127,854<br/>15.14K/sec<br/>3.23/call<br/>100.00% |1,357,604,276 blks<br/>660.24K blks/sec<br/>141.07 blks/call<br/>100.00% |1,543,432 blks<br/>750.61 blks/sec<br/>0.16 blks/call<br/>100.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |152,011.98 ms<br/>73.927 ms/sec<br/>0.016 ms/call<br/>100.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
#### Replica (`10.220.16.104`) ####
Start: 2019-09-30T13:06:20.434612+00:00
End: 2019-09-30T13:42:07.554666+00:00
Period seconds: 2147.12006
Period age: 00:35:47.120054
| Calls | Total time | Rows | shared_blks_hit | shared_blks_read | shared_blks_dirtied | shared_blks_written | blk_read_time | blk_write_time | kcache_reads | kcache_writes | kcache_user_time_ms | kcache_system_time |
|-------|------------|------|-----------------|------------------|---------------------|---------------------|---------------|----------------|--------------|---------------|---------------------|--------------------|
|9,969,462<br/>4.65K/sec<br/>1.00/call<br/>100.00% |3,258,244.34 ms<br/>1517.495 ms/sec<br/>0.327 ms/call<br/>100.00% |32,380,580<br/>15.09K/sec<br/>3.25/call<br/>100.00% |1,402,260,910 blks<br/>653.09K blks/sec<br/>140.66 blks/call<br/>100.00% |1,864,136 blks<br/>868.20 blks/sec<br/>0.19 blks/call<br/>100.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |192,584.40 ms<br/>89.694 ms/sec<br/>0.019 ms/call<br/>100.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
#### Replica (`10.220.16.105`) ####
Start: 2019-09-30T13:06:23.43192+00:00
End: 2019-09-30T13:44:07.798909+00:00
Period seconds: 2264.36699
Period age: 00:37:44.366989
| Calls | Total time | Rows | shared_blks_hit | shared_blks_read | shared_blks_dirtied | shared_blks_written | blk_read_time | blk_write_time | kcache_reads | kcache_writes | kcache_user_time_ms | kcache_system_time |
|-------|------------|------|-----------------|------------------|---------------------|---------------------|---------------|----------------|--------------|---------------|---------------------|--------------------|
|10,512,382<br/>4.65K/sec<br/>1.00/call<br/>100.00% |3,289,304.64 ms<br/>1452.638 ms/sec<br/>0.313 ms/call<br/>100.00% |34,381,232<br/>15.19K/sec<br/>3.27/call<br/>100.00% |1,427,241,439 blks<br/>630.31K blks/sec<br/>135.77 blks/call<br/>100.00% |1,795,630 blks<br/>792.99 blks/sec<br/>0.17 blks/call<br/>100.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |149,260.34 ms<br/>65.917 ms/sec<br/>0.014 ms/call<br/>100.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
#### Replica (`10.220.16.106`) ####
Start: 2019-09-30T13:06:25.816873+00:00
End: 2019-09-30T13:46:29.215889+00:00
Period seconds: 2403.39902
Period age: 00:40:03.399016
| Calls | Total time | Rows | shared_blks_hit | shared_blks_read | shared_blks_dirtied | shared_blks_written | blk_read_time | blk_write_time | kcache_reads | kcache_writes | kcache_user_time_ms | kcache_system_time |
|-------|------------|------|-----------------|------------------|---------------------|---------------------|---------------|----------------|--------------|---------------|---------------------|--------------------|
|11,314,919<br/>4.71K/sec<br/>1.00/call<br/>100.00% |3,283,939.05 ms<br/>1366.373 ms/sec<br/>0.290 ms/call<br/>100.00% |36,477,028<br/>15.18K/sec<br/>3.22/call<br/>100.00% |1,351,662,312 blks<br/>562.40K blks/sec<br/>119.46 blks/call<br/>100.00% |2,087,432 blks<br/>868.53 blks/sec<br/>0.18 blks/call<br/>100.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |129,672.34 ms<br/>53.954 ms/sec<br/>0.011 ms/call<br/>100.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
#### Replica (`10.220.16.107`) ####
Start: 2019-09-30T13:06:28.521327+00:00
End: 2019-09-30T13:49:34.408897+00:00
Period seconds: 2585.88757
Period age: 00:43:05.88757
| Calls | Total time | Rows | shared_blks_hit | shared_blks_read | shared_blks_dirtied | shared_blks_written | blk_read_time | blk_write_time | kcache_reads | kcache_writes | kcache_user_time_ms | kcache_system_time |
|-------|------------|------|-----------------|------------------|---------------------|---------------------|---------------|----------------|--------------|---------------|---------------------|--------------------|
|12,071,806<br/>4.67K/sec<br/>1.00/call<br/>100.00% |3,955,324.76 ms<br/>1529.581 ms/sec<br/>0.328 ms/call<br/>100.00% |39,290,972<br/>15.20K/sec<br/>3.25/call<br/>100.00% |1,631,062,292 blks<br/>630.76K blks/sec<br/>135.11 blks/call<br/>100.00% |1,992,208 blks<br/>770.42 blks/sec<br/>0.17 blks/call<br/>100.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |123,828.77 ms<br/>47.886 ms/sec<br/>0.010 ms/call<br/>100.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
#### Replica (`10.220.16.108`) ####
Start: 2019-09-30T13:06:29.835321+00:00
End: 2019-09-30T13:53:16.626097+00:00
Period seconds: 2806.79078
Period age: 00:46:46.790776
| Calls | Total time | Rows | shared_blks_hit | shared_blks_read | shared_blks_dirtied | shared_blks_written | blk_read_time | blk_write_time | kcache_reads | kcache_writes | kcache_user_time_ms | kcache_system_time |
|-------|------------|------|-----------------|------------------|---------------------|---------------------|---------------|----------------|--------------|---------------|---------------------|--------------------|
|13,673,685<br/>4.88K/sec<br/>1.00/call<br/>100.00% |4,802,648.32 ms<br/>1711.082 ms/sec<br/>0.351 ms/call<br/>100.00% |41,000,330<br/>14.61K/sec<br/>3.00/call<br/>100.00% |1,874,453,340 blks<br/>667.83K blks/sec<br/>137.08 blks/call<br/>100.00% |2,401,212 blks<br/>855.50 blks/sec<br/>0.18 blks/call<br/>100.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |148,591.43 ms<br/>52.940 ms/sec<br/>0.011 ms/call<br/>100.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
#### Replica (`10.220.16.109`) ####
Start: 2019-09-30T13:06:31.947164+00:00
End: 2019-09-30T13:57:29.023066+00:00
Period seconds: 3057.07591
Period age: 00:50:57.075902
| Calls | Total time | Rows | shared_blks_hit | shared_blks_read | shared_blks_dirtied | shared_blks_written | blk_read_time | blk_write_time | kcache_reads | kcache_writes | kcache_user_time_ms | kcache_system_time |
|-------|------------|------|-----------------|------------------|---------------------|---------------------|---------------|----------------|--------------|---------------|---------------------|--------------------|
|14,197,116<br/>4.65K/sec<br/>1.00/call<br/>100.00% |5,176,462.98 ms<br/>1693.273 ms/sec<br/>0.365 ms/call<br/>100.00% |46,548,326<br/>15.23K/sec<br/>3.28/call<br/>100.00% |2,046,043,112 blks<br/>669.29K blks/sec<br/>144.12 blks/call<br/>100.00% |2,536,458 blks<br/>829.70 blks/sec<br/>0.18 blks/call<br/>100.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |136,801.17 ms<br/>44.749 ms/sec<br/>0.010 ms/call<br/>100.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
## Conclusions ##
## Recommendations ##
---
<a name="postgres-checkup_K002"> </a>
[Table of contents](#postgres-checkup_top)
# K002 Workload Type ("The First Word" Analysis)
## Observations ##
Data collected: 2019-09-30 13:57:28 +0000 UTC
Current database: gitlabhq_production
### Master (`10.220.16.101`) ###
Start: 2019-09-30T13:06:11.519966+00:00
End: 2019-09-30T13:37:59.792427+00:00
Period seconds: 1908.27246
Period age: 00:31:48.272461
Error (calls): 0.00 (0.00%)
Error (total time): 0.00 (0.00%)
|\# | Workload type | Calls | ▼ Total time | Rows | shared_blks_hit | shared_blks_read | shared_blks_dirtied | shared_blks_written | blk_read_time | blk_write_time | kcache_reads | kcache_writes | kcache_user_time_ms | kcache_system_time |
|----|-------|------------|------|-----------------|------------------|---------------------|---------------------|---------------|----------------|--------------|---------------|---------------------|--------------------|-------|
|1 |select |25,969,558<br/>13.61K/sec<br/>1.00/call<br/>87.43% |3,589,921.18 ms<br/>1881.241 ms/sec<br/>0.138 ms/call<br/>58.72% |122,913,284<br/>64.42K/sec<br/>4.73/call<br/>97.35% |1,171,560,253 blks<br/>613.94K blks/sec<br/>45.11 blks/call<br/>95.58% |780,113 blks<br/>408.81 blks/sec<br/>0.03 blks/call<br/>64.74% |91,804 blks<br/>48.11 blks/sec<br/>0.00 blks/call<br/>4.13% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |355,598.20 ms<br/>186.346 ms/sec<br/>0.014 ms/call<br/>63.09% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
|2 |update |752,177<br/>394.17/sec<br/>1.00/call<br/>2.53% |2,035,787.87 ms<br/>1066.822 ms/sec<br/>2.707 ms/call<br/>33.30% |560,477<br/>293.71/sec<br/>0.75/call<br/>0.44% |30,957,908 blks<br/>16.23K blks/sec<br/>41.16 blks/call<br/>2.53% |228,764 blks<br/>119.88 blks/sec<br/>0.30 blks/call<br/>18.98% |1,517,812 blks<br/>795.39 blks/sec<br/>2.02 blks/call<br/>68.23% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |88,938.11 ms<br/>46.607 ms/sec<br/>0.118 ms/call<br/>15.78% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
|3 |select ... for [no key] update |44,475<br/>23.31/sec<br/>1.00/call<br/>0.15% |223,189.44 ms<br/>116.959 ms/sec<br/>5.018 ms/call<br/>3.65% |44,475<br/>23.31/sec<br/>1.00/call<br/>0.04% |226,742 blks<br/>118.82 blks/sec<br/>5.10 blks/call<br/>0.02% |1,003 blks<br/>0.53 blks/sec<br/>0.02 blks/call<br/>0.08% |3,801 blks<br/>1.99 blks/sec<br/>0.09 blks/call<br/>0.17% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |56.09 ms<br/>0.029 ms/sec<br/>0.001 ms/call<br/>0.01% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
|4 |insert |181,192<br/>94.95/sec<br/>1.00/call<br/>0.61% |184,006.18 ms<br/>96.426 ms/sec<br/>1.016 ms/call<br/>3.01% |326,720<br/>171.21/sec<br/>1.80/call<br/>0.26% |13,591,664 blks<br/>7.13K blks/sec<br/>75.01 blks/call<br/>1.11% |164,134 blks<br/>86.01 blks/sec<br/>0.91 blks/call<br/>13.62% |583,809 blks<br/>305.94 blks/sec<br/>3.22 blks/call<br/>26.24% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |99,757.49 ms<br/>52.276 ms/sec<br/>0.551 ms/call<br/>17.70% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
|5 |set |2,745,747<br/>1.44K/sec<br/>1.00/call<br/>9.24% |31,957.87 ms<br/>16.747 ms/sec<br/>0.012 ms/call<br/>0.52% |0<br/>0.00/sec<br/>0.00/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
|6 |with |6,379<br/>3.34/sec<br/>1.00/call<br/>0.02% |24,690.51 ms<br/>12.939 ms/sec<br/>3.871 ms/call<br/>0.40% |2,365,872<br/>1.24K/sec<br/>370.88/call<br/>1.87% |8,635,765 blks<br/>4.53K blks/sec<br/>1.36K blks/call<br/>0.70% |2,303 blks<br/>1.21 blks/sec<br/>0.36 blks/call<br/>0.19% |290 blks<br/>0.15 blks/sec<br/>0.05 blks/call<br/>0.01% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |1,203.32 ms<br/>0.631 ms/sec<br/>0.189 ms/call<br/>0.21% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
|7 |delete |2,303<br/>1.21/sec<br/>1.00/call<br/>0.01% |23,952.17 ms<br/>12.552 ms/sec<br/>10.400 ms/call<br/>0.39% |50,011<br/>26.21/sec<br/>21.72/call<br/>0.04% |711,097 blks<br/>372.64 blks/sec<br/>308.77 blks/call<br/>0.06% |28,672 blks<br/>15.03 blks/sec<br/>12.45 blks/call<br/>2.38% |27,191 blks<br/>14.25 blks/sec<br/>11.81 blks/call<br/>1.22% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |18,077.61 ms<br/>9.473 ms/sec<br/>7.850 ms/call<br/>3.21% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
### Replica servers: ###
#### Replica (`10.220.16.102`) ####
Start: 2019-09-30T13:06:14.399331+00:00
End: 2019-09-30T13:39:13.29931+00:00
Period seconds: 1978.89998
Period age: 00:32:58.899979
| \# | Workload type | Calls | ▼ Total time | Rows | shared_blks_hit | shared_blks_read | shared_blks_dirtied | shared_blks_written | blk_read_time | blk_write_time | kcache_reads | kcache_writes | kcache_user_time_ms | kcache_system_time |
|----|-------|------------|------|-----------------|------------------|---------------------|---------------------|---------------|----------------|--------------|---------------|---------------------|--------------------|-------|
|1 |select |8,609,343<br/>4.36K/sec<br/>1.00/call<br/>94.86% |3,000,363.83 ms<br/>1516.178 ms/sec<br/>0.349 ms/call<br/>93.29% |29,205,642<br/>14.76K/sec<br/>3.39/call<br/>97.25% |1,130,615,691 blks<br/>571.34K blks/sec<br/>131.32 blks/call<br/>92.78% |1,543,966 blks<br/>780.21 blks/sec<br/>0.18 blks/call<br/>100.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |156,219.72 ms<br/>78.943 ms/sec<br/>0.018 ms/call<br/>99.99% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
|2 |with |466,630<br/>235.80/sec<br/>1.00/call<br/>5.14% |215,809.73 ms<br/>109.055 ms/sec<br/>0.462 ms/call<br/>6.71% |826,255<br/>417.53/sec<br/>1.77/call<br/>2.75% |87,956,722 blks<br/>44.45K blks/sec<br/>188.49 blks/call<br/>7.22% |35 blks<br/>0.02 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |20.34 ms<br/>0.010 ms/sec<br/>0.000 ms/call<br/>0.01% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
#### Replica (`10.220.16.103`) ####
Start: 2019-09-30T13:06:17.052557+00:00
End: 2019-09-30T13:40:33.301941+00:00
Period seconds: 2056.24938
Period age: 00:34:16.249384
| \# | Workload type | Calls | ▼ Total time | Rows | shared_blks_hit | shared_blks_read | shared_blks_dirtied | shared_blks_written | blk_read_time | blk_write_time | kcache_reads | kcache_writes | kcache_user_time_ms | kcache_system_time |
|----|-------|------------|------|-----------------|------------------|---------------------|---------------------|---------------|----------------|--------------|---------------|---------------------|--------------------|-------|
|1 |select |9,147,692<br/>4.45K/sec<br/>1.00/call<br/>95.06% |3,275,101.45 ms<br/>1592.755 ms/sec<br/>0.358 ms/call<br/>94.62% |30,291,523<br/>14.74K/sec<br/>3.31/call<br/>97.31% |1,283,348,294 blks<br/>624.13K blks/sec<br/>140.29 blks/call<br/>94.53% |1,543,429 blks<br/>750.60 blks/sec<br/>0.17 blks/call<br/>100.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |152,011.94 ms<br/>73.927 ms/sec<br/>0.017 ms/call<br/>100.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
|2 |with |475,655<br/>231.32/sec<br/>1.00/call<br/>4.94% |186,343.22 ms<br/>90.623 ms/sec<br/>0.392 ms/call<br/>5.38% |836,331<br/>406.73/sec<br/>1.76/call<br/>2.69% |74,255,982 blks<br/>36.12K blks/sec<br/>156.11 blks/call<br/>5.47% |3 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.04 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
#### Replica (`10.220.16.104`) ####
Start: 2019-09-30T13:06:20.434612+00:00
End: 2019-09-30T13:42:07.554666+00:00
Period seconds: 2147.12006
Period age: 00:35:47.120054
| \# | Workload type | Calls | ▼ Total time | Rows | shared_blks_hit | shared_blks_read | shared_blks_dirtied | shared_blks_written | blk_read_time | blk_write_time | kcache_reads | kcache_writes | kcache_user_time_ms | kcache_system_time |
|----|-------|------------|------|-----------------|------------------|---------------------|---------------------|---------------|----------------|--------------|---------------|---------------------|--------------------|-------|
|1 |select |9,465,311<br/>4.41K/sec<br/>1.00/call<br/>94.94% |3,100,529.96 ms<br/>1444.041 ms/sec<br/>0.328 ms/call<br/>95.16% |31,486,265<br/>14.67K/sec<br/>3.33/call<br/>97.24% |1,333,396,833 blks<br/>621.02K blks/sec<br/>140.87 blks/call<br/>95.09% |1,864,131 blks<br/>868.20 blks/sec<br/>0.20 blks/call<br/>100.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |192,583.52 ms<br/>89.694 ms/sec<br/>0.020 ms/call<br/>100.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
|2 |with |504,151<br/>234.80/sec<br/>1.00/call<br/>5.06% |157,714.39 ms<br/>73.454 ms/sec<br/>0.313 ms/call<br/>4.84% |894,315<br/>416.52/sec<br/>1.77/call<br/>2.76% |68,864,077 blks<br/>32.08K blks/sec<br/>136.59 blks/call<br/>4.91% |5 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.88 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
#### Replica (`10.220.16.105`) ####
Start: 2019-09-30T13:06:23.43192+00:00
End: 2019-09-30T13:44:07.798909+00:00
Period seconds: 2264.36699
Period age: 00:37:44.366989
| \# | Workload type | Calls | ▼ Total time | Rows | shared_blks_hit | shared_blks_read | shared_blks_dirtied | shared_blks_written | blk_read_time | blk_write_time | kcache_reads | kcache_writes | kcache_user_time_ms | kcache_system_time |
|----|-------|------------|------|-----------------|------------------|---------------------|---------------------|---------------|----------------|--------------|---------------|---------------------|--------------------|-------|
|1 |select |9,977,839<br/>4.41K/sec<br/>1.00/call<br/>94.92% |3,119,842.05 ms<br/>1377.799 ms/sec<br/>0.313 ms/call<br/>94.85% |33,435,290<br/>14.77K/sec<br/>3.35/call<br/>97.25% |1,353,450,510 blks<br/>597.72K blks/sec<br/>135.65 blks/call<br/>94.83% |1,795,611 blks<br/>792.99 blks/sec<br/>0.18 blks/call<br/>100.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |149,259.22 ms<br/>65.917 ms/sec<br/>0.015 ms/call<br/>100.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
|2 |with |534,543<br/>236.07/sec<br/>1.00/call<br/>5.08% |169,462.59 ms<br/>74.839 ms/sec<br/>0.317 ms/call<br/>5.15% |945,942<br/>417.75/sec<br/>1.77/call<br/>2.75% |73,790,929 blks<br/>32.59K blks/sec<br/>138.04 blks/call<br/>5.17% |19 blks<br/>0.01 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |1.12 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
#### Replica (`10.220.16.106`) ####
Start: 2019-09-30T13:06:25.816873+00:00
End: 2019-09-30T13:46:29.215889+00:00
Period seconds: 2403.39902
Period age: 00:40:03.399016
| \# | Workload type | Calls | ▼ Total time | Rows | shared_blks_hit | shared_blks_read | shared_blks_dirtied | shared_blks_written | blk_read_time | blk_write_time | kcache_reads | kcache_writes | kcache_user_time_ms | kcache_system_time |
|----|-------|------------|------|-----------------|------------------|---------------------|---------------------|---------------|----------------|--------------|---------------|---------------------|--------------------|-------|
|1 |select |10,749,555<br/>4.48K/sec<br/>1.00/call<br/>95.00% |3,116,959.07 ms<br/>1296.896 ms/sec<br/>0.290 ms/call<br/>94.92% |35,485,183<br/>14.77K/sec<br/>3.30/call<br/>97.28% |1,288,544,409 blks<br/>536.14K blks/sec<br/>119.87 blks/call<br/>95.33% |2,087,412 blks<br/>868.52 blks/sec<br/>0.19 blks/call<br/>100.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |129,671.95 ms<br/>53.954 ms/sec<br/>0.012 ms/call<br/>100.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
|2 |with |565,364<br/>235.24/sec<br/>1.00/call<br/>5.00% |166,979.99 ms<br/>69.477 ms/sec<br/>0.295 ms/call<br/>5.08% |991,845<br/>412.68/sec<br/>1.75/call<br/>2.72% |63,117,903 blks<br/>26.27K blks/sec<br/>111.64 blks/call<br/>4.67% |20 blks<br/>0.01 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.39 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
#### Replica (`10.220.16.107`) ####
Start: 2019-09-30T13:06:28.521327+00:00
End: 2019-09-30T13:49:34.408897+00:00
Period seconds: 2585.88757
Period age: 00:43:05.88757
| \# | Workload type | Calls | ▼ Total time | Rows | shared_blks_hit | shared_blks_read | shared_blks_dirtied | shared_blks_written | blk_read_time | blk_write_time | kcache_reads | kcache_writes | kcache_user_time_ms | kcache_system_time |
|----|-------|------------|------|-----------------|------------------|---------------------|---------------------|---------------|----------------|--------------|---------------|---------------------|--------------------|-------|
|1 |select |11,450,260<br/>4.43K/sec<br/>1.00/call<br/>94.85% |3,761,352.05 ms<br/>1454.569 ms/sec<br/>0.328 ms/call<br/>95.10% |38,183,938<br/>14.77K/sec<br/>3.33/call<br/>97.18% |1,545,746,832 blks<br/>597.77K blks/sec<br/>135.00 blks/call<br/>94.77% |1,992,183 blks<br/>770.41 blks/sec<br/>0.17 blks/call<br/>100.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |123,821.57 ms<br/>47.884 ms/sec<br/>0.011 ms/call<br/>99.99% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
|2 |with |621,546<br/>240.36/sec<br/>1.00/call<br/>5.15% |193,972.72 ms<br/>75.012 ms/sec<br/>0.312 ms/call<br/>4.90% |1,107,034<br/>428.11/sec<br/>1.78/call<br/>2.82% |85,315,460 blks<br/>33.00K blks/sec<br/>137.26 blks/call<br/>5.23% |25 blks<br/>0.01 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |7.20 ms<br/>0.003 ms/sec<br/>0.000 ms/call<br/>0.01% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
#### Replica (`10.220.16.108`) ####
Start: 2019-09-30T13:06:29.835321+00:00
End: 2019-09-30T13:53:16.626097+00:00
Period seconds: 2806.79078
Period age: 00:46:46.790776
| \# | Workload type | Calls | ▼ Total time | Rows | shared_blks_hit | shared_blks_read | shared_blks_dirtied | shared_blks_written | blk_read_time | blk_write_time | kcache_reads | kcache_writes | kcache_user_time_ms | kcache_system_time |
|----|-------|------------|------|-----------------|------------------|---------------------|---------------------|---------------|----------------|--------------|---------------|---------------------|--------------------|-------|
|1 |select |13,003,918<br/>4.64K/sec<br/>1.00/call<br/>95.10% |4,548,868.54 ms<br/>1620.665 ms/sec<br/>0.350 ms/call<br/>94.72% |39,812,402<br/>14.19K/sec<br/>3.06/call<br/>97.10% |1,782,251,750 blks<br/>634.98K blks/sec<br/>137.05 blks/call<br/>95.08% |2,401,180 blks<br/>855.49 blks/sec<br/>0.18 blks/call<br/>100.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |148,590.90 ms<br/>52.940 ms/sec<br/>0.011 ms/call<br/>100.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
|2 |with |669,767<br/>238.62/sec<br/>1.00/call<br/>4.90% |253,779.78 ms<br/>90.416 ms/sec<br/>0.379 ms/call<br/>5.28% |1,187,928<br/>423.23/sec<br/>1.77/call<br/>2.90% |92,201,590 blks<br/>32.85K blks/sec<br/>137.66 blks/call<br/>4.92% |32 blks<br/>0.01 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.53 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
#### Replica (`10.220.16.109`) ####
Start: 2019-09-30T13:06:31.947164+00:00
End: 2019-09-30T13:57:29.023066+00:00
Period seconds: 3057.07591
Period age: 00:50:57.075902
| \# | Workload type | Calls | ▼ Total time | Rows | shared_blks_hit | shared_blks_read | shared_blks_dirtied | shared_blks_written | blk_read_time | blk_write_time | kcache_reads | kcache_writes | kcache_user_time_ms | kcache_system_time |
|----|-------|------------|------|-----------------|------------------|---------------------|---------------------|---------------|----------------|--------------|---------------|---------------------|--------------------|-------|
|1 |select |13,475,550<br/>4.41K/sec<br/>1.00/call<br/>94.92% |4,923,472.70 ms<br/>1610.517 ms/sec<br/>0.365 ms/call<br/>95.11% |45,276,021<br/>14.82K/sec<br/>3.36/call<br/>97.27% |1,946,765,513 blks<br/>636.81K blks/sec<br/>144.47 blks/call<br/>95.15% |2,536,417 blks<br/>829.69 blks/sec<br/>0.19 blks/call<br/>100.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |136,791.15 ms<br/>44.746 ms/sec<br/>0.010 ms/call<br/>99.99% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
|2 |with |721,566<br/>236.03/sec<br/>1.00/call<br/>5.08% |252,990.29 ms<br/>82.756 ms/sec<br/>0.351 ms/call<br/>4.89% |1,272,305<br/>416.18/sec<br/>1.76/call<br/>2.73% |99,277,599 blks<br/>32.48K blks/sec<br/>137.59 blks/call<br/>4.85% |41 blks<br/>0.01 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |10.02 ms<br/>0.003 ms/sec<br/>0.000 ms/call<br/>0.01% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00%|
## Conclusions ##
## Recommendations ##
---
<a name="postgres-checkup_K003"> </a>
[Table of contents](#postgres-checkup_top)
# K003 Top-20 Queries by total_time
## Observations ##
Data collected: 2019-09-30 13:57:28 +0000 UTC
Current database: gitlabhq_production
### Master (`10.220.16.101`) ###
Start: 2019-09-30T13:06:11.519966+00:00
End: 2019-09-30T13:37:59.792427+00:00
Period seconds: 1908.27246
Period age: 00:31:48.272461
Error (calls): 0.00 (0.00%)
Error (total time): 0.00 (0.00%)
The list is limited to 20 items.
| \# | Query | Calls | ▼ Total time | Rows | shared_blks_hit | shared_blks_read | shared_blks_dirtied | shared_blks_written | blk_read_time | blk_write_time | kcache_reads | kcache_writes | kcache_user_time_ms | kcache_system_time |
|----|----------|-------|------------|------|-----------------|------------------|---------------------|---------------------|---------------|----------------|--------------|---------------|---------------------|--------------------|
|1 |SELECT COUNT(\*) FROM "projects" <br/>WHERE (EXISTS (SELECT ? FROM "project\_authorizations" <br/>WHERE "project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= projects.id)) OR projects.visibility\_level <br/>IN (?,?))<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/1_1.sql) |220<br/>0.12/sec<br/>1.00/call<br/>0.00% |737,993.22 ms<br/>386.734 ms/sec<br/>3354.515 ms/call<br/>12.07% |220<br/>0.12/sec<br/>1.00/call<br/>0.00% |80,241,577 blks<br/>42.05K blks/sec<br/>364.74K blks/call<br/>6.55% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |3,589 blks<br/>1.88 blks/sec<br/>16.31 blks/call<br/>0.16% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|2 |UPDATE "project\_statistics" SET <br/>build\_artifacts\_size = COALESCE(<br/>build\_artifacts\_size, ?) + (?),<br/> storage\_size = COALESCE(storage\_size,<br/> ?) + (?) WHERE "project\_statistics"."project\_id" <br/>= ?<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/2_1.sql) |40,624<br/>21.29/sec<br/>1.00/call<br/>0.14% |729,680.80 ms<br/>382.378 ms/sec<br/>17.962 ms/call<br/>11.94% |40,624<br/>21.29/sec<br/>1.00/call<br/>0.03% |1,415,705 blks<br/>741.88 blks/sec<br/>34.85 blks/call<br/>0.12% |456 blks<br/>0.24 blks/sec<br/>0.01 blks/call<br/>0.04% |34,647 blks<br/>18.16 blks/sec<br/>0.85 blks/call<br/>1.56% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |20.96 ms<br/>0.011 ms/sec<br/>0.001 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|3 |UPDATE "ci\_builds" SET "status" <br/>= ?, "updated\_at" = ?, "lock\_version" <br/>= ? WHERE "ci\_builds"."type" IN <br/>(?) AND ("ci\_builds"."lock\_version" <br/>= ? OR "ci\_builds"."lock\_version" <br/>IS NULL) AND "ci\_builds"."id" = <br/>?<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/3_1.sql) |166,790<br/>87.40/sec<br/>1.00/call<br/>0.56% |467,495.82 ms<br/>244.984 ms/sec<br/>2.803 ms/call<br/>7.65% |8,410<br/>4.41/sec<br/>0.05/call<br/>0.01% |1,757,493 blks<br/>920.99 blks/sec<br/>10.54 blks/call<br/>0.14% |3,468 blks<br/>1.82 blks/sec<br/>0.02 blks/call<br/>0.29% |13,628 blks<br/>7.14 blks/sec<br/>0.08 blks/call<br/>0.61% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |1,221.66 ms<br/>0.640 ms/sec<br/>0.007 ms/call<br/>0.22% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|4 |SELECT "projects".\* FROM "projects" <br/>INNER JOIN project\_mirror\_data <br/>import\_state ON import\_state.project\_id <br/>= projects.id WHERE "projects"."mirror" <br/>= TRUE AND "import\_state"."status" <br/>NOT IN ('scheduled', 'started') <br/>AND (import\_state.next\_execution\_timestamp <br/><= '2019\-09\-09 20:35:08.814893') <br/>AND (import\_state.retry\_count <= <br/>14) ORDER BY import\_state.next\_execution\_timestamp <br/>LIMIT 500<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/4_1.sql) |2,295<br/>1.20/sec<br/>1.00/call<br/>0.01% |460,944.67 ms<br/>241.551 ms/sec<br/>200.847 ms/call<br/>7.54% |96,686<br/>50.67/sec<br/>42.13/call<br/>0.08% |262,104,122 blks<br/>137.36K blks/sec<br/>114.21K blks/call<br/>21.38% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |886 blks<br/>0.46 blks/sec<br/>0.39 blks/call<br/>0.04% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|5 |SELECT COUNT(\*) FROM "projects" <br/>WHERE "projects"."namespace\_id" <br/>IN (WITH RECURSIVE "base\_and\_descendants" <br/>AS (SELECT "namespaces".\* FROM <br/>"namespaces" INNER JOIN "members" <br/>ON "namespaces"."id" = "members"."source\_id" <br/>WHERE "members"."type" IN (?) AND <br/>"members"."source\_type" = ? AND <br/>"namespaces"."type" IN (?) AND <br/>"members"."user\_id" = ? AND "members"."requested\_at" <br/>IS NULL AND (members.access\_level <br/>>= ?)<br/>UNION<br/>SELECT "namespaces".\* <br/>FROM "namespaces", "base\_and\_descendants" <br/>WHERE "namespaces"."type" IN (?) <br/>AND "namespaces"."parent\_id" = <br/>"base\_and\_descendants"."id") SELECT <br/>DISTINCT "namespaces"."id" FROM <br/>"base\_and\_descendants" AS "namespaces" <br/>WHERE "namespaces"."id" IN (WITH <br/>RECURSIVE "base\_and\_descendants" <br/>AS (SELECT "namespaces".\* FROM <br/>"namespaces" WHERE "namespaces"."type" <br/>IN (?) AND (EXISTS (SELECT ? FROM <br/>"plans" INNER JOIN "gitlab\_subscriptions" <br/>ON "gitlab\_subscriptions"."hosted\_plan\_id" <br/>= "plans"."id" WHERE "plans"."name" <br/>IN (?, ?) AND (gitlab\_subscriptions.namespace\_id <br/>= namespaces...<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/5_1.sql) |25<br/>0.01/sec<br/>1.00/call<br/>0.00% |241,547.16 ms<br/>126.579 ms/sec<br/>9661.887 ms/call<br/>3.95% |25<br/>0.01/sec<br/>1.00/call<br/>0.00% |198,174,152 blks<br/>103.86K blks/sec<br/>7.93M blks/call<br/>16.17% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |12,190 blks<br/>6.39 blks/sec<br/>487.60 blks/call<br/>0.55% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|6 |SELECT "internal\_ids".\* FROM "internal\_ids" <br/>WHERE "internal\_ids"."id" = ? LIMIT <br/>? FOR UPDATE<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/6_1.sql) |44,475<br/>23.31/sec<br/>1.00/call<br/>0.15% |223,189.44 ms<br/>116.959 ms/sec<br/>5.018 ms/call<br/>3.65% |44,475<br/>23.31/sec<br/>1.00/call<br/>0.04% |226,742 blks<br/>118.82 blks/sec<br/>5.10 blks/call<br/>0.02% |1,003 blks<br/>0.53 blks/sec<br/>0.02 blks/call<br/>0.08% |3,801 blks<br/>1.99 blks/sec<br/>0.09 blks/call<br/>0.17% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |56.09 ms<br/>0.029 ms/sec<br/>0.001 ms/call<br/>0.01% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|7 |UPDATE "project\_mirror\_data" SET <br/>"status" = ?, "last\_update\_scheduled\_at" <br/>= ? WHERE "project\_mirror\_data"."id" <br/>= ?<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/7_1.sql) |91,512<br/>47.96/sec<br/>1.00/call<br/>0.31% |220,568.75 ms<br/>115.586 ms/sec<br/>2.410 ms/call<br/>3.61% |91,512<br/>47.96/sec<br/>1.00/call<br/>0.07% |3,092,237 blks<br/>1.63K blks/sec<br/>33.79 blks/call<br/>0.25% |7 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |221,867 blks<br/>116.27 blks/sec<br/>2.42 blks/call<br/>9.97% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|8 |SELECT "web\_hooks".\* FROM "web\_hooks" <br/>WHERE "web\_hooks"."type" IN (?) <br/>AND "web\_hooks"."group\_id" = ? <br/>AND "web\_hooks"."job\_events" = <br/>?<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/8_1.sql) |43,998<br/>23.06/sec<br/>1.00/call<br/>0.15% |194,149.11 ms<br/>101.741 ms/sec<br/>4.413 ms/call<br/>3.18% |761<br/>0.40/sec<br/>0.02/call<br/>0.00% |117,518,658 blks<br/>61.59K blks/sec<br/>2.68K blks/call<br/>9.59% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|9 |SELECT (CASE<br/> WHEN (SELECT <br/>count(\*) FROM "ci\_builds" WHERE <br/>"ci\_builds"."stage\_id" = ? AND <br/>("ci\_builds"."retried" = ? OR "ci\_builds"."retried" <br/>IS NULL) AND (allow\_failure = ? <br/>OR status IN (?,?,?,?,?,?,?)))=(<br/>SELECT count(\*) FROM "ci\_builds" <br/>WHERE "ci\_builds"."stage\_id" = <br/>? AND ("ci\_builds"."retried" = <br/>? OR "ci\_builds"."retried" IS NULL) <br/>AND (allow\_failure = ? OR status <br/>IN (?,?,?,?,?,?,?)) AND ("ci\_builds"."status" <br/>IN (?))) AND (SELECT count(\*) > <br/>? FROM "ci\_builds" WHERE "ci\_builds"."stage\_id" <br/>= ? AND ("ci\_builds"."retried" <br/>= ? OR "ci\_builds"."retried" IS <br/>NULL) AND "ci\_builds"."allow\_failure" <br/>= ? AND "ci\_builds"."status" IN <br/>(?, ?)) THEN ?<br/> WHEN (<br/>SELECT count(\*) FROM "ci\_builds" <br/>WHERE "ci\_builds"."stage\_id" = <br/>? AND ("ci\_builds"."retried" = <br/>? OR "ci\_builds"."retried" IS NULL) <br/>AND (allow\_failure = ? OR status <br/>IN (?,?,?,?,?,?,?)))=(SELECT count(<br/>\*) FROM "ci\_builds" WHERE "ci\_builds"."stage\_id" <br/>= ? AND ("ci\_builds"."retried" <br/>= ? OR "ci\_builds"."retried" IS <br/>NULL) AND (allow\_fa...<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/9_1.sql) |96,459<br/>50.55/sec<br/>1.00/call<br/>0.32% |193,585.51 ms<br/>101.445 ms/sec<br/>2.007 ms/call<br/>3.17% |1,008,764<br/>528.63/sec<br/>10.46/call<br/>0.80% |80,329,197 blks<br/>42.10K blks/sec<br/>832.78 blks/call<br/>6.55% |137 blks<br/>0.07 blks/sec<br/>0.00 blks/call<br/>0.01% |662 blks<br/>0.35 blks/sec<br/>0.01 blks/call<br/>0.03% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |85.53 ms<br/>0.045 ms/sec<br/>0.001 ms/call<br/>0.02% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|10 |UPDATE "project\_mirror\_data" SET <br/>"status" = ?, "last\_update\_started\_at" <br/>= ? WHERE "project\_mirror\_data"."id" <br/>= ?<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/10_1.sql) |90,581<br/>47.47/sec<br/>1.00/call<br/>0.30% |186,163.95 ms<br/>97.556 ms/sec<br/>2.055 ms/call<br/>3.05% |90,581<br/>47.47/sec<br/>1.00/call<br/>0.07% |3,422,785 blks<br/>1.80K blks/sec<br/>37.79 blks/call<br/>0.28% |5 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |1,755 blks<br/>0.92 blks/sec<br/>0.02 blks/call<br/>0.08% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|11 |SELECT "users".\* FROM "users" WHERE <br/>"users"."unlock\_token" = '55800f789c61ad88d5b37088e4a2c9708de838f236be56c31edef601baedbfec' <br/>ORDER BY "users"."id" ASC LIMIT <br/>1<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/11_1.sql) |19<br/>0.01/sec<br/>1.00/call<br/>0.00% |131,771.74 ms<br/>69.053 ms/sec<br/>6935.355 ms/call<br/>2.16% |0<br/>0.00/sec<br/>0.00/call<br/>0.00% |80,430,563 blks<br/>42.15K blks/sec<br/>4.24M blks/call<br/>6.56% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |12,269 blks<br/>6.43 blks/sec<br/>645.74 blks/call<br/>0.55% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|12 |SELECT ? AS one FROM (SELECT "projects".\* <br/>FROM "projects" WHERE "projects"."namespace\_id" <br/>IN (WITH RECURSIVE "base\_and\_descendants" <br/>AS (SELECT "namespaces".\* FROM <br/>"namespaces" WHERE "namespaces"."id" <br/>IN (SELECT "elasticsearch\_indexed\_namespaces"."namespace\_id" <br/>FROM "elasticsearch\_indexed\_namespaces")<br/>UNION<br/>SELECT <br/>"namespaces".\* FROM "namespaces",<br/> "base\_and\_descendants" WHERE "namespaces"."parent\_id" <br/>= "base\_and\_descendants"."id") <br/>SELECT "id" FROM "base\_and\_descendants" <br/>AS "namespaces")<br/>UNION<br/>SELECT "projects".\* <br/>FROM "projects" WHERE "projects"."id" <br/>IN (SELECT "elasticsearch\_indexed\_projects"."project\_id" <br/>FROM "elasticsearch\_indexed\_projects")) <br/>projects WHERE "projects"."id" <br/>= ? LIMIT ?<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/12_1.sql) |166,649<br/>87.33/sec<br/>1.00/call<br/>0.56% |123,999.00 ms<br/>64.980 ms/sec<br/>0.744 ms/call<br/>2.03% |2,465<br/>1.29/sec<br/>0.01/call<br/>0.00% |44,709,266 blks<br/>23.43K blks/sec<br/>268.28 blks/call<br/>3.65% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |1,994 blks<br/>1.04 blks/sec<br/>0.01 blks/call<br/>0.09% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|13 |UPDATE "project\_mirror\_data" SET <br/>"jid" = ? WHERE "project\_mirror\_data"."id" <br/>= ?<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/13_1.sql) |91,564<br/>47.98/sec<br/>1.00/call<br/>0.31% |86,137.18 ms<br/>45.139 ms/sec<br/>0.941 ms/call<br/>1.41% |91,564<br/>47.98/sec<br/>1.00/call<br/>0.07% |3,331,983 blks<br/>1.75K blks/sec<br/>36.39 blks/call<br/>0.27% |6 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |58,164 blks<br/>30.48 blks/sec<br/>0.64 blks/call<br/>2.61% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|14 |UPDATE "notes" SET "note\_html" = <br/>?, "cached\_markdown\_version" = <br/>? WHERE "notes"."id" = ?<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/14_1.sql) |29,522<br/>15.47/sec<br/>1.00/call<br/>0.10% |82,923.71 ms<br/>43.455 ms/sec<br/>2.809 ms/call<br/>1.36% |29,522<br/>15.47/sec<br/>1.00/call<br/>0.02% |2,139,723 blks<br/>1.13K blks/sec<br/>72.48 blks/call<br/>0.17% |111,439 blks<br/>58.40 blks/sec<br/>3.77 blks/call<br/>9.25% |262,922 blks<br/>137.78 blks/sec<br/>8.91 blks/call<br/>11.82% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |64,721.70 ms<br/>33.916 ms/sec<br/>2.192 ms/call<br/>11.48% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|15 |SELECT (CASE<br/> WHEN (SELECT <br/>count(\*) FROM "ci\_builds" WHERE <br/>"ci\_builds"."commit\_id" = ? AND <br/>("ci\_builds"."retried" = ? OR "ci\_builds"."retried" <br/>IS NULL) AND (allow\_failure = ? <br/>OR status IN (?,?,?,?,?,?,?)))=(<br/>SELECT count(\*) FROM "ci\_builds" <br/>WHERE "ci\_builds"."commit\_id" = <br/>? AND ("ci\_builds"."retried" = <br/>? OR "ci\_builds"."retried" IS NULL) <br/>AND (allow\_failure = ? OR status <br/>IN (?,?,?,?,?,?,?)) AND ("ci\_builds"."status" <br/>IN (?))) AND (SELECT count(\*) > <br/>? FROM "ci\_builds" WHERE "ci\_builds"."commit\_id" <br/>= ? AND ("ci\_builds"."retried" <br/>= ? OR "ci\_builds"."retried" IS <br/>NULL) AND "ci\_builds"."allow\_failure" <br/>= ? AND "ci\_builds"."status" IN <br/>(?, ?)) THEN ?<br/> WHEN (<br/>SELECT count(\*) FROM "ci\_builds" <br/>WHERE "ci\_builds"."commit\_id" = <br/>? AND ("ci\_builds"."retried" = <br/>? OR "ci\_builds"."retried" IS NULL) <br/>AND (allow\_failure = ? OR status <br/>IN (?,?,?,?,?,?,?)))=(SELECT count(<br/>\*) FROM "ci\_builds" WHERE "ci\_builds"."commit\_id" <br/>= ? AND ("ci\_builds"."retried" <br/>= ? OR "ci\_builds"."retried" IS <br/>NULL) AND (all...<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/15_1.sql) |116,654<br/>61.13/sec<br/>1.00/call<br/>0.39% |66,336.49 ms<br/>34.763 ms/sec<br/>0.569 ms/call<br/>1.09% |2,323,325<br/>1.22K/sec<br/>19.92/call<br/>1.84% |45,849,688 blks<br/>24.03K blks/sec<br/>393.04 blks/call<br/>3.74% |278 blks<br/>0.15 blks/sec<br/>0.00 blks/call<br/>0.02% |545 blks<br/>0.29 blks/sec<br/>0.00 blks/call<br/>0.02% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |173.39 ms<br/>0.091 ms/sec<br/>0.001 ms/call<br/>0.03% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|16 |SELECT "projects".\* FROM "projects" <br/>WHERE "projects"."id" = ? LIMIT <br/>?<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/16_1.sql) |1,207,668<br/>632.86/sec<br/>1.00/call<br/>4.07% |58,080.94 ms<br/>30.436 ms/sec<br/>0.048 ms/call<br/>0.95% |1,207,251<br/>632.64/sec<br/>1.00/call<br/>0.96% |4,945,834 blks<br/>2.60K blks/sec<br/>4.10 blks/call<br/>0.40% |5 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |38 blks<br/>0.02 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.73 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|17 |SELECT "clusters".\* FROM "clusters" <br/>WHERE "clusters"."cluster\_type" <br/>= ? AND "clusters"."enabled" = <br/>? AND "clusters"."environment\_scope" <br/>= ? ORDER BY "clusters"."id" ASC <br/>LIMIT ?<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/17_1.sql) |6,045<br/>3.17/sec<br/>1.00/call<br/>0.02% |56,294.52 ms<br/>29.500 ms/sec<br/>9.313 ms/call<br/>0.92% |0<br/>0.00/sec<br/>0.00/call<br/>0.00% |22,438,136 blks<br/>11.76K blks/sec<br/>3.72K blks/call<br/>1.83% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |2 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|18 |SELECT "routes".\* FROM "routes" <br/>WHERE "routes"."source\_id" = ? <br/>AND "routes"."source\_type" = ? <br/>LIMIT ?<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/18_1.sql) |1,273,223<br/>667.21/sec<br/>1.00/call<br/>4.29% |54,833.81 ms<br/>28.735 ms/sec<br/>0.043 ms/call<br/>0.90% |1,273,223<br/>667.21/sec<br/>1.00/call<br/>1.01% |6,368,982 blks<br/>3.34K blks/sec<br/>5.00 blks/call<br/>0.52% |1,706 blks<br/>0.89 blks/sec<br/>0.00 blks/call<br/>0.14% |193 blks<br/>0.10 blks/sec<br/>0.00 blks/call<br/>0.01% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |627.50 ms<br/>0.329 ms/sec<br/>0.000 ms/call<br/>0.11% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|19 |INSERT INTO "notes" ("note", "noteable\_type",<br/> "author\_id", "created\_at", "updated\_at",<br/> "project\_id", "noteable\_id", "system",<br/> "discussion\_id", "note\_html", <br/>"cached\_markdown\_version") VALUES <br/>(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, <br/>?) RETURNING "id"<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/19_1.sql) |19,450<br/>10.19/sec<br/>1.00/call<br/>0.07% |51,516.89 ms<br/>26.997 ms/sec<br/>2.649 ms/call<br/>0.84% |19,450<br/>10.19/sec<br/>1.00/call<br/>0.02% |1,706,845 blks<br/>894.45 blks/sec<br/>87.76 blks/call<br/>0.14% |57,976 blks<br/>30.38 blks/sec<br/>2.98 blks/call<br/>4.81% |163,091 blks<br/>85.47 blks/sec<br/>8.39 blks/call<br/>7.33% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |35,859.01 ms<br/>18.791 ms/sec<br/>1.844 ms/call<br/>6.36% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|20 |SELECT ? AS one FROM (WITH RECURSIVE <br/>"base\_and\_ancestors" AS (SELECT <br/>"namespaces".\* FROM (SELECT "namespaces".\* <br/>FROM "namespaces" INNER JOIN "members" <br/>ON "namespaces"."id" = "members"."source\_id" <br/>WHERE "members"."type" IN (?) AND <br/>"members"."source\_type" = ? AND <br/>"namespaces"."type" IN (?) AND <br/>"members"."user\_id" = ? AND "members"."requested\_at" <br/>IS NULL<br/>UNION<br/>SELECT namespaces.\* <br/>FROM "projects" INNER JOIN "namespaces" <br/>ON "namespaces"."id" = "projects"."namespace\_id" <br/>INNER JOIN "project\_authorizations" <br/>ON "projects"."id" = "project\_authorizations"."project\_id" <br/>WHERE "project\_authorizations"."user\_id" <br/>= ?) namespaces WHERE "namespaces"."type" <br/>IN (?)<br/>UNION<br/>SELECT "namespaces".\* <br/>FROM "namespaces", "base\_and\_ancestors" <br/>WHERE "namespaces"."type" IN (?) <br/>AND "namespaces"."id" = "base\_and\_ancestors"."parent\_id"),<br/> "base\_and\_descendants" AS (SELECT <br/>"namespaces".\* FROM "namespaces" <br/>INNER JOIN "members" ON "namespaces"."id" <br/>= "members"."source\_id" WHERE "members"."type" <br/>IN (?) AND "members"."source...<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/20_1.sql) |46<br/>0.02/sec<br/>1.00/call<br/>0.00% |50,636.17 ms<br/>26.535 ms/sec<br/>1100.786 ms/call<br/>0.83% |46<br/>0.02/sec<br/>1.00/call<br/>0.00% |11,066,322 blks<br/>5.80K blks/sec<br/>240.58K blks/call<br/>0.90% |21 blks<br/>0.01 blks/sec<br/>0.46 blks/call<br/>0.00% |430 blks<br/>0.23 blks/sec<br/>9.35 blks/call<br/>0.02% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |14.44 ms<br/>0.008 ms/sec<br/>0.314 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
### Replica servers: ###
#### Replica (`10.220.16.102`) ####
Start: 2019-09-30T13:06:14.399331+00:00
End: 2019-09-30T13:39:13.29931+00:00
Period seconds: 1978.89998
Period age: 00:32:58.899979
Top 50 rows
| \# | Query | Calls | ▼ Total time | Rows | shared_blks_hit | shared_blks_read | shared_blks_dirtied | shared_blks_written | blk_read_time | blk_write_time | kcache_reads | kcache_writes | kcache_user_time_ms | kcache_system_time |
|----|----------|-------|------------|------|-----------------|------------------|---------------------|---------------------|---------------|----------------|--------------|---------------|---------------------|--------------------|
|1 |SELECT COUNT(\*) FROM "projects" <br/>WHERE "projects"."namespace\_id" <br/>IN (WITH RECURSIVE "base\_and\_descendants" <br/>AS (SELECT "namespaces".\* FROM <br/>"namespaces" INNER JOIN "members" <br/>ON "namespaces"."id" = "members"."source\_id" <br/>WHERE "members"."type" IN (?) AND <br/>"members"."source\_type" = ? AND <br/>"namespaces"."type" IN (?) AND <br/>"members"."user\_id" = ? AND "members"."requested\_at" <br/>IS NULL AND (members.access\_level <br/>>= ?)<br/>UNION<br/>SELECT "namespaces".\* <br/>FROM "namespaces", "base\_and\_descendants" <br/>WHERE "namespaces"."type" IN (?) <br/>AND "namespaces"."parent\_id" = <br/>"base\_and\_descendants"."id") SELECT <br/>DISTINCT "namespaces"."id" FROM <br/>"base\_and\_descendants" AS "namespaces" <br/>WHERE "namespaces"."id" IN (WITH <br/>RECURSIVE "base\_and\_descendants" <br/>AS (SELECT "namespaces".\* FROM <br/>"namespaces" WHERE "namespaces"."type" <br/>IN (?) AND (EXISTS (SELECT ? FROM <br/>"plans" INNER JOIN "gitlab\_subscriptions" <br/>ON "gitlab\_subscriptions"."hosted\_plan\_id" <br/>= "plans"."id" WHERE "plans"."name" <br/>IN (?, ?) AND (gitlab\_subscriptions.namespace\_id <br/>= namespaces...<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/1_2.sql) |52<br/>0.03/sec<br/>1.00/call<br/>0.00% |451,082.95 ms<br/>227.946 ms/sec<br/>8674.672 ms/call<br/>14.03% |52<br/>0.03/sec<br/>1.00/call<br/>0.00% |394,807,081 blks<br/>199.51K blks/sec<br/>7.60M blks/call<br/>32.40% |33 blks<br/>0.02 blks/sec<br/>0.63 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |1.81 ms<br/>0.001 ms/sec<br/>0.035 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|2 |SELECT "projects".\* FROM "projects" <br/>WHERE (EXISTS (SELECT ? FROM "project\_authorizations" <br/>WHERE "project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= projects.id)) OR projects.visibility\_level <br/>IN (?,?)) AND "projects"."pending\_delete" <br/>= ? ORDER BY "projects"."created\_at" <br/>DESC, "projects"."id" DESC LIMIT <br/>? OFFSET ?<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/2_2.sql) |34<br/>0.02/sec<br/>1.00/call<br/>0.00% |236,908.33 ms<br/>119.717 ms/sec<br/>6967.892 ms/call<br/>7.37% |1,674<br/>0.85/sec<br/>49.24/call<br/>0.01% |12,401,998 blks<br/>6.27K blks/sec<br/>364.77K blks/call<br/>1.02% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|3 |WITH RECURSIVE "base\_and\_descendants" <br/>AS (SELECT "namespaces".\* FROM <br/>"namespaces" WHERE "namespaces"."type" <br/>IN (?) AND (EXISTS (SELECT ? FROM <br/>"plans" INNER JOIN "gitlab\_subscriptions" <br/>ON "gitlab\_subscriptions"."hosted\_plan\_id" <br/>= "plans"."id" WHERE "plans"."name" <br/>IN (?, ?) AND (gitlab\_subscriptions.namespace\_id <br/>= namespaces.id)))<br/>UNION<br/>SELECT <br/>"namespaces".\* FROM "namespaces",<br/> "base\_and\_descendants" WHERE "namespaces"."type" <br/>IN (?) AND "namespaces"."parent\_id" <br/>= "base\_and\_descendants"."id") <br/>SELECT "namespaces".\* FROM "base\_and\_descendants" <br/>AS "namespaces" WHERE "namespaces"."id" <br/>= ? LIMIT ?<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/3_2.sql) |31<br/>0.02/sec<br/>1.00/call<br/>0.00% |187,810.70 ms<br/>94.907 ms/sec<br/>6058.410 ms/call<br/>5.84% |1<br/>0.00/sec<br/>0.03/call<br/>0.00% |83,445,623 blks<br/>42.17K blks/sec<br/>2.70M blks/call<br/>6.85% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|4 |SELECT "projects".\* FROM "projects" <br/>WHERE (EXISTS (SELECT ? FROM "project\_authorizations" <br/>WHERE "project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= projects.id)) OR projects.visibility\_level <br/>IN (?,?)) AND "projects"."visibility\_level" <br/>= ? AND "projects"."archived" = <br/>? AND "projects"."pending\_delete" <br/>= ? ORDER BY "projects"."last\_activity\_at" <br/>DESC, "projects"."id" DESC LIMIT <br/>? OFFSET ?<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/4_2.sql) |42<br/>0.02/sec<br/>1.00/call<br/>0.00% |163,579.17 ms<br/>82.662 ms/sec<br/>3894.742 ms/call<br/>5.09% |4,152<br/>2.10/sec<br/>98.86/call<br/>0.01% |57,287,866 blks<br/>28.95K blks/sec<br/>1.37M blks/call<br/>4.70% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|5 |SELECT "ci\_builds".\* FROM "ci\_builds" <br/>INNER JOIN "projects" ON "projects"."id" <br/>= "ci\_builds"."project\_id" LEFT <br/>JOIN project\_features ON ci\_builds.project\_id <br/>= project\_features.project\_id LEFT <br/>JOIN (SELECT "ci\_builds"."project\_id",<br/> count(\*) AS running\_builds FROM <br/>"ci\_builds" WHERE "ci\_builds"."type" <br/>IN (?) AND ("ci\_builds"."status" <br/>IN (?)) AND "ci\_builds"."runner\_id" <br/>IN (SELECT "ci\_runners"."id" FROM <br/>"ci\_runners" WHERE "ci\_runners"."runner\_type" <br/>= ?) GROUP BY "ci\_builds"."project\_id") <br/>AS project\_builds ON ci\_builds.project\_id=project\_builds.project\_id <br/>WHERE "ci\_builds"."type" IN (?) <br/>AND ("ci\_builds"."status" IN (?)) <br/>AND "ci\_builds"."runner\_id" IS <br/>NULL AND "projects"."shared\_runners\_enabled" <br/>= ? AND "projects"."pending\_delete" <br/>= ? AND (project\_features.builds\_access\_level <br/>IS NULL or project\_features.builds\_access\_level <br/>> ?) AND (projects.visibility\_level=? <br/>OR (WITH RECURSIVE "base\_and\_ancestors" <br/>AS (SELECT "namespaces".\* FROM <br/>"namespaces" WHERE (namespaces.id <br/>= projects.namespace\_id)<br/>UN...<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/5_2.sql) |559<br/>0.28/sec<br/>1.00/call<br/>0.01% |162,246.43 ms<br/>81.988 ms/sec<br/>290.244 ms/call<br/>5.04% |6,212<br/>3.14/sec<br/>11.11/call<br/>0.02% |100,758,779 blks<br/>50.92K blks/sec<br/>180.25K blks/call<br/>8.27% |113 blks<br/>0.06 blks/sec<br/>0.20 blks/call<br/>0.01% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |4.42 ms<br/>0.002 ms/sec<br/>0.008 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|6 |SELECT "ci\_builds".\* FROM "ci\_builds" <br/>INNER JOIN "projects" ON "projects"."id" <br/>= "ci\_builds"."project\_id" LEFT <br/>JOIN project\_features ON ci\_builds.project\_id <br/>= project\_features.project\_id LEFT <br/>JOIN (SELECT "ci\_builds"."project\_id",<br/> count(\*) AS running\_builds FROM <br/>"ci\_builds" WHERE "ci\_builds"."type" <br/>IN (?) AND ("ci\_builds"."status" <br/>IN (?)) AND "ci\_builds"."runner\_id" <br/>IN (SELECT "ci\_runners"."id" FROM <br/>"ci\_runners" WHERE "ci\_runners"."runner\_type" <br/>= ?) GROUP BY "ci\_builds"."project\_id") <br/>AS project\_builds ON ci\_builds.project\_id=project\_builds.project\_id <br/>WHERE "ci\_builds"."type" IN (?) <br/>AND ("ci\_builds"."status" IN (?)) <br/>AND "ci\_builds"."runner\_id" IS <br/>NULL AND "projects"."shared\_runners\_enabled" <br/>= ? AND "projects"."pending\_delete" <br/>= ? AND (project\_features.builds\_access\_level <br/>IS NULL or project\_features.builds\_access\_level <br/>> ?) AND (projects.visibility\_level=? <br/>OR (WITH RECURSIVE "base\_and\_ancestors" <br/>AS (SELECT "namespaces".\* FROM <br/>"namespaces" WHERE (namespaces.id <br/>= projects.namespace\_id)<br/>UN...<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/6_2.sql) |546<br/>0.28/sec<br/>1.00/call<br/>0.01% |160,752.82 ms<br/>81.233 ms/sec<br/>294.419 ms/call<br/>5.00% |5,371<br/>2.71/sec<br/>9.84/call<br/>0.02% |98,070,050 blks<br/>49.56K blks/sec<br/>179.62K blks/call<br/>8.05% |139 blks<br/>0.07 blks/sec<br/>0.25 blks/call<br/>0.01% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |27.80 ms<br/>0.014 ms/sec<br/>0.051 ms/call<br/>0.02% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|7 |SELECT COUNT(\*) FROM (SELECT ? <br/>AS one FROM "projects" WHERE (EXISTS <br/>(SELECT ? FROM "project\_authorizations" <br/>WHERE "project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= projects.id)) OR projects.visibility\_level <br/>IN (?,?)) AND "projects"."visibility\_level" <br/>= ? AND "projects"."pending\_delete" <br/>= ? LIMIT ?) subquery\_for\_count<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/7_2.sql) |10<br/>0.01/sec<br/>1.00/call<br/>0.00% |129,722.60 ms<br/>65.553 ms/sec<br/>12972.260 ms/call<br/>4.03% |10<br/>0.01/sec<br/>1.00/call<br/>0.00% |49,930,977 blks<br/>25.24K blks/sec<br/>5.00M blks/call<br/>4.10% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|8 |SELECT COUNT(\*) FROM "projects" <br/>WHERE (EXISTS (SELECT ? FROM "project\_authorizations" <br/>WHERE "project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= projects.id)) OR projects.visibility\_level <br/>IN (?,?))<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/8_2.sql) |32<br/>0.02/sec<br/>1.00/call<br/>0.00% |121,173.32 ms<br/>61.233 ms/sec<br/>3786.666 ms/call<br/>3.77% |32<br/>0.02/sec<br/>1.00/call<br/>0.00% |11,671,502 blks<br/>5.90K blks/sec<br/>364.74K blks/call<br/>0.96% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|9 |SELECT "projects".\* FROM "projects" <br/>WHERE (EXISTS (SELECT ? FROM "project\_authorizations" <br/>WHERE "project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= projects.id)) OR projects.visibility\_level <br/>IN (?,?)) AND "projects"."visibility\_level" <br/>= ? AND "projects"."pending\_delete" <br/>= ? ORDER BY "projects"."last\_activity\_at" <br/>DESC, "projects"."id" DESC LIMIT <br/>? OFFSET ?<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/9_2.sql) |9<br/>0.00/sec<br/>1.00/call<br/>0.00% |115,950.76 ms<br/>58.594 ms/sec<br/>12883.418 ms/call<br/>3.61% |490<br/>0.25/sec<br/>54.44/call<br/>0.00% |44,961,851 blks<br/>22.73K blks/sec<br/>5.00M blks/call<br/>3.69% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|10 |SELECT "members".\* FROM "members" <br/>WHERE "members"."source\_type" = <br/>? AND "members"."type" IN (?) AND <br/>"members"."user\_id" = ? AND "members"."requested\_at" <br/>IS NULL AND "members"."source\_id" <br/>IN (SELECT "projects"."namespace\_id" <br/>FROM "projects" WHERE (EXISTS (<br/>SELECT ? FROM "project\_authorizations" <br/>WHERE "project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= projects.id)) OR projects.visibility\_level <br/>IN (?,?)) AND "projects"."visibility\_level" <br/>= ? AND "projects"."pending\_delete" <br/>= ? ORDER BY "projects"."last\_activity\_at" <br/>DESC, "projects"."id" DESC LIMIT <br/>? OFFSET ?)<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/10_2.sql) |9<br/>0.00/sec<br/>1.00/call<br/>0.00% |114,797.43 ms<br/>58.011 ms/sec<br/>12755.269 ms/call<br/>3.57% |19<br/>0.01/sec<br/>2.11/call<br/>0.00% |44,963,940 blks<br/>22.73K blks/sec<br/>5.00M blks/call<br/>3.69% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|11 |SELECT "members".\* FROM "members" <br/>WHERE "members"."source\_type" = <br/>? AND "members"."type" IN (?) AND <br/>"members"."user\_id" = ? AND "members"."requested\_at" <br/>IS NULL AND "members"."source\_id" <br/>IN (SELECT projects.id FROM "projects" <br/>WHERE (EXISTS (SELECT ? FROM "project\_authorizations" <br/>WHERE "project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= projects.id)) OR projects.visibility\_level <br/>IN (?,?)) AND "projects"."visibility\_level" <br/>= ? AND "projects"."archived" = <br/>? AND "projects"."pending\_delete" <br/>= ? ORDER BY "projects"."last\_activity\_at" <br/>DESC, "projects"."id" DESC LIMIT <br/>? OFFSET ?)<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/11_2.sql) |24<br/>0.01/sec<br/>1.00/call<br/>0.00% |102,680.51 ms<br/>51.888 ms/sec<br/>4278.355 ms/call<br/>3.19% |55<br/>0.03/sec<br/>2.29/call<br/>0.00% |41,830,019 blks<br/>21.14K blks/sec<br/>1.75M blks/call<br/>3.43% |33 blks<br/>0.02 blks/sec<br/>1.38 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.32 ms<br/>0.000 ms/sec<br/>0.013 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|12 |SELECT "members".\* FROM "members" <br/>WHERE "members"."source\_type" = <br/>? AND "members"."type" IN (?) AND <br/>"members"."user\_id" = ? AND "members"."requested\_at" <br/>IS NULL AND "members"."source\_id" <br/>IN (SELECT "projects"."namespace\_id" <br/>FROM "projects" WHERE (EXISTS (<br/>SELECT ? FROM "project\_authorizations" <br/>WHERE "project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= projects.id)) OR projects.visibility\_level <br/>IN (?,?)) AND "projects"."visibility\_level" <br/>= ? AND "projects"."archived" = <br/>? AND "projects"."pending\_delete" <br/>= ? ORDER BY "projects"."last\_activity\_at" <br/>DESC, "projects"."id" DESC LIMIT <br/>? OFFSET ?)<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/12_2.sql) |23<br/>0.01/sec<br/>1.00/call<br/>0.00% |89,190.35 ms<br/>45.071 ms/sec<br/>3877.841 ms/call<br/>2.77% |33<br/>0.02/sec<br/>1.43/call<br/>0.00% |36,851,446 blks<br/>18.63K blks/sec<br/>1.61M blks/call<br/>3.02% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|13 |SELECT COUNT(\*) FROM (SELECT ? <br/>AS one FROM "projects" WHERE (EXISTS <br/>(SELECT ? FROM "project\_authorizations" <br/>WHERE "project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= projects.id)) OR projects.visibility\_level <br/>IN (?,?)) AND "projects"."visibility\_level" <br/>= ? AND "projects"."archived" = <br/>? AND "projects"."pending\_delete" <br/>= ? LIMIT ?) subquery\_for\_count<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/13_2.sql) |23<br/>0.01/sec<br/>1.00/call<br/>0.00% |64,618.58 ms<br/>32.654 ms/sec<br/>2809.504 ms/call<br/>2.01% |23<br/>0.01/sec<br/>1.00/call<br/>0.00% |25,108,701 blks<br/>12.69K blks/sec<br/>1.10M blks/call<br/>2.06% |5 blks<br/>0.00 blks/sec<br/>0.22 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.85 ms<br/>0.000 ms/sec<br/>0.037 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|14 |SELECT "snippets".\* FROM (SELECT <br/>"snippets".\* FROM "snippets" WHERE <br/>(snippets.visibility\_level IN (<br/>?,?,?) OR snippets.author\_id = <br/>?) AND "snippets"."project\_id" <br/>IS NULL<br/>UNION<br/>SELECT "snippets".\* <br/>FROM "snippets" INNER JOIN "projects" <br/>ON "projects"."id" = "snippets"."project\_id" <br/>INNER JOIN "project\_features" ON <br/>"project\_features"."project\_id" <br/>= "projects"."id" WHERE (snippets.visibility\_level <br/>IN (?,?,?) OR snippets.author\_id <br/>= ?) AND (projects.visibility\_level <br/>IN (?,?,?)) AND "project\_features"."snippets\_access\_level" <br/>IN (?, ?)<br/>UNION<br/>SELECT "snippets".\* <br/>FROM "snippets" INNER JOIN "projects" <br/>ON "projects"."id" = "snippets"."project\_id" <br/>INNER JOIN "project\_features" ON <br/>"project\_features"."project\_id" <br/>= "projects"."id" WHERE "project\_features"."snippets\_access\_level" <br/>IN (?, ?, ?) AND (EXISTS (SELECT <br/>? FROM "project\_authorizations" <br/>WHERE (project\_id = snippets.project\_id) <br/>AND "project\_authorizations"."user\_id" <br/>= ?))) snippets WHERE "snippets"."visibility\_level" <br/>= ? ORDER BY created\_at DESC...<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/14_2.sql) |13<br/>0.01/sec<br/>1.00/call<br/>0.00% |61,682.81 ms<br/>31.170 ms/sec<br/>4744.832 ms/call<br/>1.92% |273<br/>0.14/sec<br/>21.00/call<br/>0.00% |4,955,461 blks<br/>2.51K blks/sec<br/>381.19K blks/call<br/>0.41% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|15 |SELECT COUNT(\*) FROM (SELECT ? <br/>AS one FROM (SELECT "snippets".\* <br/>FROM "snippets" WHERE (snippets.visibility\_level <br/>IN (?,?,?) OR snippets.author\_id <br/>= ?) AND "snippets"."project\_id" <br/>IS NULL<br/>UNION<br/>SELECT "snippets".\* <br/>FROM "snippets" INNER JOIN "projects" <br/>ON "projects"."id" = "snippets"."project\_id" <br/>INNER JOIN "project\_features" ON <br/>"project\_features"."project\_id" <br/>= "projects"."id" WHERE (snippets.visibility\_level <br/>IN (?,?,?) OR snippets.author\_id <br/>= ?) AND (projects.visibility\_level <br/>IN (?,?,?)) AND "project\_features"."snippets\_access\_level" <br/>IN (?, ?)<br/>UNION<br/>SELECT "snippets".\* <br/>FROM "snippets" INNER JOIN "projects" <br/>ON "projects"."id" = "snippets"."project\_id" <br/>INNER JOIN "project\_features" ON <br/>"project\_features"."project\_id" <br/>= "projects"."id" WHERE "project\_features"."snippets\_access\_level" <br/>IN (?, ?, ?) AND (EXISTS (SELECT <br/>? FROM "project\_authorizations" <br/>WHERE (project\_id = snippets.project\_id) <br/>AND "project\_authorizations"."user\_id" <br/>= ?))) snippets WHERE "snippets"."visibility\_level" <br/>= ? LIMIT ...<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/15_2.sql) |13<br/>0.01/sec<br/>1.00/call<br/>0.00% |60,630.47 ms<br/>30.638 ms/sec<br/>4663.882 ms/call<br/>1.89% |13<br/>0.01/sec<br/>1.00/call<br/>0.00% |4,951,153 blks<br/>2.51K blks/sec<br/>380.86K blks/call<br/>0.41% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|16 |SELECT COUNT(\*) FROM (SELECT ? <br/>AS one FROM "issues" INNER JOIN <br/>"projects" ON "projects"."id" = <br/>"issues"."project\_id" LEFT JOIN <br/>project\_features ON projects.id <br/>= project\_features.project\_id WHERE <br/>"issues"."confidential" = ? AND <br/>(EXISTS (SELECT ? FROM "project\_authorizations" <br/>WHERE "project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= projects.id) AND (project\_authorizations.access\_level <br/>>= ?)) OR projects.visibility\_level <br/>IN (?,?)) AND ("project\_features"."issues\_access\_level" <br/>IS NULL OR "project\_features"."issues\_access\_level" <br/>IN (?,?) OR ("project\_features"."issues\_access\_level" <br/>= ? AND EXISTS (SELECT ? FROM "project\_authorizations" <br/>WHERE "project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= projects.id) AND (project\_authorizations.access\_level <br/>>= ?)))) AND ("issues"."title" <br/>ILIKE ? OR "issues"."description" <br/>ILIKE ?) LIMIT ?) subquery\_for\_count<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/16_2.sql) |12<br/>0.01/sec<br/>1.00/call<br/>0.00% |52,907.81 ms<br/>26.736 ms/sec<br/>4408.984 ms/call<br/>1.65% |12<br/>0.01/sec<br/>1.00/call<br/>0.00% |983,484 blks<br/>496.99 blks/sec<br/>81.96K blks/call<br/>0.08% |37,372 blks<br/>18.89 blks/sec<br/>3.12K blks/call<br/>2.42% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |965.74 ms<br/>0.488 ms/sec<br/>80.478 ms/call<br/>0.62% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|17 |SELECT COUNT(\*) FROM "deploy\_keys\_projects" <br/>WHERE "deploy\_keys\_projects"."deploy\_key\_id" <br/>= ?<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/17_2.sql) |997<br/>0.50/sec<br/>1.00/call<br/>0.01% |47,081.55 ms<br/>23.792 ms/sec<br/>47.223 ms/call<br/>1.46% |997<br/>0.50/sec<br/>1.00/call<br/>0.00% |3,647,026 blks<br/>1.85K blks/sec<br/>3.66K blks/call<br/>0.30% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|18 |SELECT COUNT(\*) FROM (SELECT ? <br/>AS one FROM "issues" INNER JOIN <br/>"projects" ON "projects"."id" = <br/>"issues"."project\_id" LEFT JOIN <br/>project\_features ON projects.id <br/>= project\_features.project\_id WHERE <br/>(<br/> issues.confidential IS <br/>NOT TRUE<br/> OR (issues.confidential <br/>= ?<br/> AND (issues.author\_id <br/>= ?<br/> OR EXISTS (SELECT <br/>? FROM issue\_assignees WHERE user\_id <br/>= ? AND issue\_id = issues.id)<br/> OR EXISTS (SELECT ? FROM <br/>"project\_authorizations" WHERE <br/>"project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= issues.project\_id) AND (project\_authorizations.access\_level <br/>>= ?))))) AND (EXISTS (SELECT ? <br/>FROM "project\_authorizations" WHERE <br/>"project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= projects.id) AND (project\_authorizations.access\_level <br/>>= ?)) OR projects.visibility\_level <br/>IN (?,?)) AND ("project\_features"."issues\_access\_level" <br/>IS NULL OR "project\_features"."issues\_access\_level" <br/>IN (?,?) OR ("project\_features"."issues\_access\_l...<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/18_2.sql) |9<br/>0.00/sec<br/>1.00/call<br/>0.00% |46,152.25 ms<br/>23.322 ms/sec<br/>5128.027 ms/call<br/>1.44% |9<br/>0.00/sec<br/>1.00/call<br/>0.00% |867,386 blks<br/>438.32 blks/sec<br/>96.38K blks/call<br/>0.07% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|19 |SELECT "projects"."id" AS t0\_r0,<br/> "projects"."name" AS t0\_r1, "projects"."path" <br/>AS t0\_r2, "projects"."description" <br/>AS t0\_r3, "projects"."created\_at" <br/>AS t0\_r4, "projects"."updated\_at" <br/>AS t0\_r5, "projects"."creator\_id" <br/>AS t0\_r6, "projects"."namespace\_id" <br/>AS t0\_r7, "projects"."last\_activity\_at" <br/>AS t0\_r8, "projects"."import\_url" <br/>AS t0\_r9, "projects"."visibility\_level" <br/>AS t0\_r10, "projects"."archived" <br/>AS t0\_r11, "projects"."merge\_requests\_template" <br/>AS t0\_r12, "projects"."star\_count" <br/>AS t0\_r13, "projects"."merge\_requests\_rebase\_enabled" <br/>AS t0\_r14, "projects"."import\_type" <br/>AS t0\_r15, "projects"."import\_source" <br/>AS t0\_r16, "projects"."avatar" <br/>AS t0\_r17, "projects"."approvals\_before\_merge" <br/>AS t0\_r18, "projects"."reset\_approvals\_on\_push" <br/>AS t0\_r19, "projects"."merge\_requests\_ff\_only\_enabled" <br/>AS t0\_r20, "projects"."issues\_template" <br/>AS t0\_r21, "projects"."mirror" <br/>AS t0\_r22, "projects"."mirror\_user\_id" <br/>AS t0\_r23, "projects"."shared\_runners\_enabled" <br/>AS t0\_r24, "projects"."runners\_token" <br/>AS t0\_r25, "...<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/19_2.sql) |677,646<br/>342.44/sec<br/>1.00/call<br/>7.47% |44,137.69 ms<br/>22.304 ms/sec<br/>0.065 ms/call<br/>1.37% |668,231<br/>337.68/sec<br/>0.99/call<br/>2.23% |6,066,227 blks<br/>3.07K blks/sec<br/>8.95 blks/call<br/>0.50% |8,374 blks<br/>4.23 blks/sec<br/>0.01 blks/call<br/>0.54% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |685.72 ms<br/>0.347 ms/sec<br/>0.001 ms/call<br/>0.44% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|20 |SELECT "deployments".\* FROM "deployments" <br/>WHERE "deployments"."environment\_id" <br/>= ? AND "deployments"."status" <br/>= ? ORDER BY deployments.id DESC <br/>LIMIT ?<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/20_2.sql) |9,928<br/>5.02/sec<br/>1.00/call<br/>0.11% |36,081.84 ms<br/>18.233 ms/sec<br/>3.634 ms/call<br/>1.12% |8,186<br/>4.14/sec<br/>0.82/call<br/>0.03% |12,223,256 blks<br/>6.18K blks/sec<br/>1.24K blks/call<br/>1.00% |3,457 blks<br/>1.75 blks/sec<br/>0.35 blks/call<br/>0.22% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |238.93 ms<br/>0.121 ms/sec<br/>0.024 ms/call<br/>0.15% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
#### Replica (`10.220.16.103`) ####
Start: 2019-09-30T13:06:17.052557+00:00
End: 2019-09-30T13:40:33.301941+00:00
Period seconds: 2056.24938
Period age: 00:34:16.249384
Top 50 rows
| \# | Query | Calls | ▼ Total time | Rows | shared_blks_hit | shared_blks_read | shared_blks_dirtied | shared_blks_written | blk_read_time | blk_write_time | kcache_reads | kcache_writes | kcache_user_time_ms | kcache_system_time |
|----|----------|-------|------------|------|-----------------|------------------|---------------------|---------------------|---------------|----------------|--------------|---------------|---------------------|--------------------|
|1 |SELECT COUNT(\*) FROM "projects" <br/>WHERE "projects"."namespace\_id" <br/>IN (WITH RECURSIVE "base\_and\_descendants" <br/>AS (SELECT "namespaces".\* FROM <br/>"namespaces" INNER JOIN "members" <br/>ON "namespaces"."id" = "members"."source\_id" <br/>WHERE "members"."type" IN (?) AND <br/>"members"."source\_type" = ? AND <br/>"namespaces"."type" IN (?) AND <br/>"members"."user\_id" = ? AND "members"."requested\_at" <br/>IS NULL AND (members.access\_level <br/>>= ?)<br/>UNION<br/>SELECT "namespaces".\* <br/>FROM "namespaces", "base\_and\_descendants" <br/>WHERE "namespaces"."type" IN (?) <br/>AND "namespaces"."parent\_id" = <br/>"base\_and\_descendants"."id") SELECT <br/>DISTINCT "namespaces"."id" FROM <br/>"base\_and\_descendants" AS "namespaces" <br/>WHERE "namespaces"."id" IN (WITH <br/>RECURSIVE "base\_and\_descendants" <br/>AS (SELECT "namespaces".\* FROM <br/>"namespaces" WHERE "namespaces"."type" <br/>IN (?) AND (EXISTS (SELECT ? FROM <br/>"plans" INNER JOIN "gitlab\_subscriptions" <br/>ON "gitlab\_subscriptions"."hosted\_plan\_id" <br/>= "plans"."id" WHERE "plans"."name" <br/>IN (?, ?) AND (gitlab\_subscriptions.namespace\_id <br/>= namespaces...<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/1_3.sql) |62<br/>0.03/sec<br/>1.00/call<br/>0.00% |561,372.89 ms<br/>273.008 ms/sec<br/>9054.402 ms/call<br/>16.22% |62<br/>0.03/sec<br/>1.00/call<br/>0.00% |501,464,515 blks<br/>243.88K blks/sec<br/>8.09M blks/call<br/>36.94% |125 blks<br/>0.06 blks/sec<br/>2.02 blks/call<br/>0.01% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |4.91 ms<br/>0.002 ms/sec<br/>0.079 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|2 |SELECT "projects".\* FROM "projects" <br/>WHERE (EXISTS (SELECT ? FROM "project\_authorizations" <br/>WHERE "project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= projects.id)) OR projects.visibility\_level <br/>IN (?,?)) AND "projects"."pending\_delete" <br/>= ? ORDER BY "projects"."created\_at" <br/>DESC, "projects"."id" DESC LIMIT <br/>? OFFSET ?<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/2_3.sql) |38<br/>0.02/sec<br/>1.00/call<br/>0.00% |267,439.82 ms<br/>130.062 ms/sec<br/>7037.890 ms/call<br/>7.73% |1,278<br/>0.62/sec<br/>33.63/call<br/>0.00% |13,862,554 blks<br/>6.75K blks/sec<br/>364.81K blks/call<br/>1.02% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|3 |SELECT "projects".\* FROM "projects" <br/>WHERE (EXISTS (SELECT 1 FROM "project\_authorizations" <br/>WHERE "project\_authorizations"."user\_id" <br/>= 3611581 AND (project\_authorizations.project\_id <br/>= projects.id)) OR projects.visibility\_level <br/>IN (10,20)) AND "projects"."visibility\_level" <br/>= 20 AND "projects"."archived" <br/>= FALSE AND "projects"."pending\_delete" <br/>= FALSE ORDER BY "projects"."last\_activity\_at" <br/>DESC, "projects"."id" DESC LIMIT <br/>101 OFFSET 100<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/3_3.sql) |37<br/>0.02/sec<br/>1.00/call<br/>0.00% |179,191.59 ms<br/>87.145 ms/sec<br/>4843.016 ms/call<br/>5.18% |3,620<br/>1.76/sec<br/>97.84/call<br/>0.01% |66,893,207 blks<br/>32.54K blks/sec<br/>1.81M blks/call<br/>4.93% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|4 |SELECT "ci\_builds".\* FROM "ci\_builds" <br/>INNER JOIN "projects" ON "projects"."id" <br/>= "ci\_builds"."project\_id" LEFT <br/>JOIN project\_features ON ci\_builds.project\_id <br/>= project\_features.project\_id LEFT <br/>JOIN (SELECT "ci\_builds"."project\_id",<br/> count(\*) AS running\_builds FROM <br/>"ci\_builds" WHERE "ci\_builds"."type" <br/>IN (?) AND ("ci\_builds"."status" <br/>IN (?)) AND "ci\_builds"."runner\_id" <br/>IN (SELECT "ci\_runners"."id" FROM <br/>"ci\_runners" WHERE "ci\_runners"."runner\_type" <br/>= ?) GROUP BY "ci\_builds"."project\_id") <br/>AS project\_builds ON ci\_builds.project\_id=project\_builds.project\_id <br/>WHERE "ci\_builds"."type" IN (?) <br/>AND ("ci\_builds"."status" IN (?)) <br/>AND "ci\_builds"."runner\_id" IS <br/>NULL AND "projects"."shared\_runners\_enabled" <br/>= ? AND "projects"."pending\_delete" <br/>= ? AND (project\_features.builds\_access\_level <br/>IS NULL or project\_features.builds\_access\_level <br/>> ?) AND (projects.visibility\_level=? <br/>OR (WITH RECURSIVE "base\_and\_ancestors" <br/>AS (SELECT "namespaces".\* FROM <br/>"namespaces" WHERE (namespaces.id <br/>= projects.namespace\_id)<br/>UN...<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/4_3.sql) |567<br/>0.28/sec<br/>1.00/call<br/>0.01% |166,643.33 ms<br/>81.042 ms/sec<br/>293.904 ms/call<br/>4.81% |5,614<br/>2.73/sec<br/>9.90/call<br/>0.02% |102,389,171 blks<br/>49.80K blks/sec<br/>180.59K blks/call<br/>7.54% |126 blks<br/>0.06 blks/sec<br/>0.22 blks/call<br/>0.01% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |13.86 ms<br/>0.007 ms/sec<br/>0.024 ms/call<br/>0.01% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|5 |SELECT "ci\_builds".\* FROM "ci\_builds" <br/>INNER JOIN "projects" ON "projects"."id" <br/>= "ci\_builds"."project\_id" LEFT <br/>JOIN project\_features ON ci\_builds.project\_id <br/>= project\_features.project\_id LEFT <br/>JOIN (SELECT "ci\_builds"."project\_id",<br/> count(\*) AS running\_builds FROM <br/>"ci\_builds" WHERE "ci\_builds"."type" <br/>IN (?) AND ("ci\_builds"."status" <br/>IN (?)) AND "ci\_builds"."runner\_id" <br/>IN (SELECT "ci\_runners"."id" FROM <br/>"ci\_runners" WHERE "ci\_runners"."runner\_type" <br/>= ?) GROUP BY "ci\_builds"."project\_id") <br/>AS project\_builds ON ci\_builds.project\_id=project\_builds.project\_id <br/>WHERE "ci\_builds"."type" IN (?) <br/>AND ("ci\_builds"."status" IN (?)) <br/>AND "ci\_builds"."runner\_id" IS <br/>NULL AND "projects"."shared\_runners\_enabled" <br/>= ? AND "projects"."pending\_delete" <br/>= ? AND (project\_features.builds\_access\_level <br/>IS NULL or project\_features.builds\_access\_level <br/>> ?) AND (projects.visibility\_level=? <br/>OR (WITH RECURSIVE "base\_and\_ancestors" <br/>AS (SELECT "namespaces".\* FROM <br/>"namespaces" WHERE (namespaces.id <br/>= projects.namespace\_id)<br/>UN...<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/5_3.sql) |551<br/>0.27/sec<br/>1.00/call<br/>0.01% |158,427.72 ms<br/>77.047 ms/sec<br/>287.528 ms/call<br/>4.58% |5,786<br/>2.81/sec<br/>10.50/call<br/>0.02% |99,071,170 blks<br/>48.19K blks/sec<br/>179.81K blks/call<br/>7.30% |128 blks<br/>0.06 blks/sec<br/>0.23 blks/call<br/>0.01% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |9.23 ms<br/>0.004 ms/sec<br/>0.017 ms/call<br/>0.01% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|6 |WITH RECURSIVE "base\_and\_descendants" <br/>AS (SELECT "namespaces".\* FROM <br/>"namespaces" WHERE "namespaces"."type" <br/>IN (?) AND (EXISTS (SELECT ? FROM <br/>"plans" INNER JOIN "gitlab\_subscriptions" <br/>ON "gitlab\_subscriptions"."hosted\_plan\_id" <br/>= "plans"."id" WHERE "plans"."name" <br/>IN (?, ?) AND (gitlab\_subscriptions.namespace\_id <br/>= namespaces.id)))<br/>UNION<br/>SELECT <br/>"namespaces".\* FROM "namespaces",<br/> "base\_and\_descendants" WHERE "namespaces"."type" <br/>IN (?) AND "namespaces"."parent\_id" <br/>= "base\_and\_descendants"."id") <br/>SELECT "namespaces".\* FROM "base\_and\_descendants" <br/>AS "namespaces" WHERE "namespaces"."id" <br/>= ? LIMIT ?<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/6_3.sql) |26<br/>0.01/sec<br/>1.00/call<br/>0.00% |157,614.46 ms<br/>76.651 ms/sec<br/>6062.095 ms/call<br/>4.55% |1<br/>0.00/sec<br/>0.04/call<br/>0.00% |69,658,168 blks<br/>33.88K blks/sec<br/>2.68M blks/call<br/>5.13% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|7 |SELECT "members".\* FROM "members" <br/>WHERE "members"."source\_type" = <br/>? AND "members"."type" IN (?) AND <br/>"members"."user\_id" = ? AND "members"."requested\_at" <br/>IS NULL AND "members"."source\_id" <br/>IN (SELECT projects.id FROM "projects" <br/>WHERE (EXISTS (SELECT ? FROM "project\_authorizations" <br/>WHERE "project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= projects.id)) OR projects.visibility\_level <br/>IN (?,?)) AND "projects"."visibility\_level" <br/>= ? AND "projects"."archived" = <br/>? AND "projects"."pending\_delete" <br/>= ? ORDER BY "projects"."last\_activity\_at" <br/>DESC, "projects"."id" DESC LIMIT <br/>? OFFSET ?)<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/7_3.sql) |24<br/>0.01/sec<br/>1.00/call<br/>0.00% |151,120.29 ms<br/>73.493 ms/sec<br/>6296.679 ms/call<br/>4.37% |60<br/>0.03/sec<br/>2.50/call<br/>0.00% |60,910,107 blks<br/>29.63K blks/sec<br/>2.54M blks/call<br/>4.49% |22 blks<br/>0.01 blks/sec<br/>0.92 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.20 ms<br/>0.000 ms/sec<br/>0.008 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|8 |SELECT "members".\* FROM "members" <br/>WHERE "members"."source\_type" = <br/>? AND "members"."type" IN (?) AND <br/>"members"."user\_id" = ? AND "members"."requested\_at" <br/>IS NULL AND "members"."source\_id" <br/>IN (SELECT "projects"."namespace\_id" <br/>FROM "projects" WHERE (EXISTS (<br/>SELECT ? FROM "project\_authorizations" <br/>WHERE "project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= projects.id)) OR projects.visibility\_level <br/>IN (?,?)) AND "projects"."visibility\_level" <br/>= ? AND "projects"."archived" = <br/>? AND "projects"."pending\_delete" <br/>= ? ORDER BY "projects"."last\_activity\_at" <br/>DESC, "projects"."id" DESC LIMIT <br/>? OFFSET ?)<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/8_3.sql) |23<br/>0.01/sec<br/>1.00/call<br/>0.00% |138,540.35 ms<br/>67.375 ms/sec<br/>6023.493 ms/call<br/>4.00% |58<br/>0.03/sec<br/>2.52/call<br/>0.00% |55,903,581 blks<br/>27.19K blks/sec<br/>2.44M blks/call<br/>4.12% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|9 |SELECT COUNT(\*) FROM (SELECT ? <br/>AS one FROM "projects" WHERE (EXISTS <br/>(SELECT ? FROM "project\_authorizations" <br/>WHERE "project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= projects.id)) OR projects.visibility\_level <br/>IN (?,?)) AND "projects"."visibility\_level" <br/>= ? AND "projects"."archived" = <br/>? AND "projects"."pending\_delete" <br/>= ? LIMIT ?) subquery\_for\_count<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/9_3.sql) |24<br/>0.01/sec<br/>1.00/call<br/>0.00% |127,105.34 ms<br/>61.814 ms/sec<br/>5296.056 ms/call<br/>3.67% |24<br/>0.01/sec<br/>1.00/call<br/>0.00% |50,142,813 blks<br/>24.39K blks/sec<br/>2.09M blks/call<br/>3.69% |2 blks<br/>0.00 blks/sec<br/>0.08 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.02 ms<br/>0.000 ms/sec<br/>0.001 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|10 |SELECT COUNT(\*) FROM "projects" <br/>WHERE (EXISTS (SELECT ? FROM "project\_authorizations" <br/>WHERE "project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= projects.id)) OR projects.visibility\_level <br/>IN (?,?))<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/10_3.sql) |28<br/>0.01/sec<br/>1.00/call<br/>0.00% |103,456.12 ms<br/>50.313 ms/sec<br/>3694.861 ms/call<br/>2.99% |28<br/>0.01/sec<br/>1.00/call<br/>0.00% |10,212,574 blks<br/>4.97K blks/sec<br/>364.74K blks/call<br/>0.75% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|11 |SELECT "projects".\* FROM "projects" <br/>WHERE (EXISTS (SELECT ? FROM "project\_authorizations" <br/>WHERE "project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= projects.id)) OR projects.visibility\_level <br/>IN (?,?)) AND "projects"."visibility\_level" <br/>= ? AND "projects"."pending\_delete" <br/>= ? ORDER BY "projects"."last\_activity\_at" <br/>DESC, "projects"."id" DESC LIMIT <br/>? OFFSET ?<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/11_3.sql) |7<br/>0.00/sec<br/>1.00/call<br/>0.00% |90,003.33 ms<br/>43.771 ms/sec<br/>12857.619 ms/call<br/>2.60% |274<br/>0.13/sec<br/>39.14/call<br/>0.00% |34,897,574 blks<br/>16.98K blks/sec<br/>4.99M blks/call<br/>2.57% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|12 |SELECT "members".\* FROM "members" <br/>WHERE "members"."source\_type" = <br/>? AND "members"."type" IN (?) AND <br/>"members"."user\_id" = ? AND "members"."requested\_at" <br/>IS NULL AND "members"."source\_id" <br/>IN (SELECT "projects"."namespace\_id" <br/>FROM "projects" WHERE (EXISTS (<br/>SELECT ? FROM "project\_authorizations" <br/>WHERE "project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= projects.id)) OR projects.visibility\_level <br/>IN (?,?)) AND "projects"."visibility\_level" <br/>= ? AND "projects"."pending\_delete" <br/>= ? ORDER BY "projects"."last\_activity\_at" <br/>DESC, "projects"."id" DESC LIMIT <br/>? OFFSET ?)<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/12_3.sql) |7<br/>0.00/sec<br/>1.00/call<br/>0.00% |89,049.36 ms<br/>43.307 ms/sec<br/>12721.338 ms/call<br/>2.57% |11<br/>0.01/sec<br/>1.57/call<br/>0.00% |34,899,872 blks<br/>16.98K blks/sec<br/>4.99M blks/call<br/>2.57% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|13 |SELECT COUNT(\*) FROM (SELECT ? <br/>AS one FROM "projects" WHERE (EXISTS <br/>(SELECT ? FROM "project\_authorizations" <br/>WHERE "project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= projects.id)) OR projects.visibility\_level <br/>IN (?,?)) AND "projects"."visibility\_level" <br/>= ? AND "projects"."pending\_delete" <br/>= ? LIMIT ?) subquery\_for\_count<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/13_3.sql) |7<br/>0.00/sec<br/>1.00/call<br/>0.00% |88,862.12 ms<br/>43.216 ms/sec<br/>12694.589 ms/call<br/>2.57% |7<br/>0.00/sec<br/>1.00/call<br/>0.00% |34,895,771 blks<br/>16.98K blks/sec<br/>4.99M blks/call<br/>2.57% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|14 |SELECT COUNT(\*) FROM (SELECT ? <br/>AS one FROM "issues" INNER JOIN <br/>"projects" ON "projects"."id" = <br/>"issues"."project\_id" LEFT JOIN <br/>project\_features ON projects.id <br/>= project\_features.project\_id WHERE <br/>"issues"."confidential" = ? AND <br/>(EXISTS (SELECT ? FROM "project\_authorizations" <br/>WHERE "project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= projects.id) AND (project\_authorizations.access\_level <br/>>= ?)) OR projects.visibility\_level <br/>IN (?,?)) AND ("project\_features"."issues\_access\_level" <br/>IS NULL OR "project\_features"."issues\_access\_level" <br/>IN (?,?) OR ("project\_features"."issues\_access\_level" <br/>= ? AND EXISTS (SELECT ? FROM "project\_authorizations" <br/>WHERE "project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= projects.id) AND (project\_authorizations.access\_level <br/>>= ?)))) AND ("issues"."title" <br/>ILIKE ? OR "issues"."description" <br/>ILIKE ?) LIMIT ?) subquery\_for\_count<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/14_3.sql) |15<br/>0.01/sec<br/>1.00/call<br/>0.00% |78,303.15 ms<br/>38.081 ms/sec<br/>5220.210 ms/call<br/>2.26% |15<br/>0.01/sec<br/>1.00/call<br/>0.00% |1,325,925 blks<br/>644.83 blks/sec<br/>88.40K blks/call<br/>0.10% |61,529 blks<br/>29.92 blks/sec<br/>4.11K blks/call<br/>3.99% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |1,732.31 ms<br/>0.842 ms/sec<br/>115.487 ms/call<br/>1.14% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|15 |SELECT COUNT(\*) FROM (SELECT ? <br/>AS one FROM "issues" INNER JOIN <br/>"projects" ON "projects"."id" = <br/>"issues"."project\_id" LEFT JOIN <br/>project\_features ON projects.id <br/>= project\_features.project\_id WHERE <br/>(<br/> issues.confidential IS <br/>NOT TRUE<br/> OR (issues.confidential <br/>= ?<br/> AND (issues.author\_id <br/>= ?<br/> OR EXISTS (SELECT <br/>? FROM issue\_assignees WHERE user\_id <br/>= ? AND issue\_id = issues.id)<br/> OR EXISTS (SELECT ? FROM <br/>"project\_authorizations" WHERE <br/>"project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= issues.project\_id) AND (project\_authorizations.access\_level <br/>>= ?))))) AND (EXISTS (SELECT ? <br/>FROM "project\_authorizations" WHERE <br/>"project\_authorizations"."user\_id" <br/>= ? AND (project\_authorizations.project\_id <br/>= projects.id) AND (project\_authorizations.access\_level <br/>>= ?)) OR projects.visibility\_level <br/>IN (?,?)) AND ("project\_features"."issues\_access\_level" <br/>IS NULL OR "project\_features"."issues\_access\_level" <br/>IN (?,?) OR ("project\_features"."issues\_access\_l...<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/15_3.sql) |13<br/>0.01/sec<br/>1.00/call<br/>0.00% |70,936.47 ms<br/>34.498 ms/sec<br/>5456.651 ms/call<br/>2.05% |13<br/>0.01/sec<br/>1.00/call<br/>0.00% |1,291,857 blks<br/>628.26 blks/sec<br/>99.38K blks/call<br/>0.10% |2 blks<br/>0.00 blks/sec<br/>0.15 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0 blks<br/>0.00 blks/sec<br/>0.00 blks/call<br/>0.00% |0.89 ms<br/>0.000 ms/sec<br/>0.069 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 bytes<br/>0.00 bytes/sec<br/>0.00 bytes/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |0.00 ms<br/>0.000 ms/sec<br/>0.000 ms/call<br/>0.00% |
|16 |SELECT "snippets".\* FROM (SELECT <br/>"snippets".\* FROM "snippets" WHERE <br/>(snippets.visibility\_level IN (<br/>?,?,?) OR snippets.author\_id = <br/>?) AND "snippets"."project\_id" <br/>IS NULL<br/>UNION<br/>SELECT "snippets".\* <br/>FROM "snippets" INNER JOIN "projects" <br/>ON "projects"."id" = "snippets"."project\_id" <br/>INNER JOIN "project\_features" ON <br/>"project\_features"."project\_id" <br/>= "projects"."id" WHERE (snippets.visibility\_level <br/>IN (?,?,?) OR snippets.author\_id <br/>= ?) AND (projects.visibility\_level <br/>IN (?,?,?)) AND "project\_features"."snippets\_access\_level" <br/>IN (?, ?)<br/>UNION<br/>SELECT "snippets".\* <br/>FROM "snippets" INNER JOIN "projects" <br/>ON "projects"."id" = "snippets"."project\_id" <br/>INNER JOIN "project\_features" ON <br/>"project\_features"."project\_id" <br/>= "projects"."id" WHERE "project\_features"."snippets\_access\_level" <br/>IN (?, ?, ?) AND (EXISTS (SELECT <br/>? FROM "project\_authorizations" <br/>WHERE (project\_id = snippets.project\_id) <br/>AND "project\_authorizations"."user\_id" <br/>= ?))) snippets WHERE "snippets"."visibility\_level" <br/>= ? ORDER BY created\_at DESC...<br/>[Full query](../../json_reports/20190930001_2019_09_30T13_06_11_+0000/K_query_groups/16_3.sql) |13<br/>0.01/sec<b