Skip to content
Snippets Groups Projects

Add index for events to efficiently query user contributions [SYNC]

What does this MR do and why?

The index index_events_author_id_group_id_action_target_type_created_at was already created on Gitlab.com async as part of !139928 (merged). This migration creates it sync for self-hosted

Migration output

UP
bin/rails db:migrate:down:main db:migrate:down:ci VERSION=20240112143548
main: == [advisory_lock_connection] object_id: 182600, pg_backend_pid: 8312
main: == [advisory_lock_connection] object_id: 182600, pg_backend_pid: 8312
ci: == [advisory_lock_connection] object_id: 183180, pg_backend_pid: 8570
ci: == 20240112143548 AddIndexToEventsAuthorGroupActionTargetType: migrating ======
ci: -- transaction_open?(nil)
ci:    -> 0.0000s
ci: -- view_exists?(:postgres_partitions)
ci:    -> 0.0621s
ci: -- index_exists?(:events, [:author_id, :group_id, :action, :target_type, :created_at], {:name=>"index_events_author_id_group_id_action_target_type_created_at", :algorithm=>:concurrently})
ci:    -> 0.0305s
ci: -- execute("SET statement_timeout TO 0")
ci:    -> 0.0011s
ci: -- add_index(:events, [:author_id, :group_id, :action, :target_type, :created_at], {:name=>"index_events_author_id_group_id_action_target_type_created_at", :algorithm=>:concurrently})
ci:    -> 0.0067s
ci: -- execute("RESET statement_timeout")
ci:    -> 0.0005s
ci: == 20240112143548 AddIndexToEventsAuthorGroupActionTargetType: migrated (0.2082s)

ci: == [advisory_lock_connection] object_id: 183180, pg_backend_pid: 8570

DOWN
bin/rails db:migrate:down:main db:migrate:down:ci VERSION=20240112143548
main: == [advisory_lock_connection] object_id: 182660, pg_backend_pid: 7573
main: == 20240112143548 AddIndexToEventsAuthorGroupActionTargetType: reverting ======
main: -- transaction_open?(nil)
main:    -> 0.0000s
main: -- view_exists?(:postgres_partitions)
main:    -> 0.0540s
main: -- indexes(:events)
main:    -> 0.0131s
main: -- execute("SET statement_timeout TO 0")
main:    -> 0.0003s
main: -- remove_index(:events, {:algorithm=>:concurrently, :name=>"index_events_author_id_group_id_action_target_type_created_at"})
main:    -> 0.0051s
main: -- execute("RESET statement_timeout")
main:    -> 0.0002s
main: == 20240112143548 AddIndexToEventsAuthorGroupActionTargetType: reverted (0.0906s)

main: == [advisory_lock_connection] object_id: 182660, pg_backend_pid: 7573 ci: == [advisory_lock_connection] object_id: 201240, pg_backend_pid: 7832 ci: == 20240112143548 AddIndexToEventsAuthorGroupActionTargetType: reverting ====== ci: -- transaction_open?(nil) ci: -> 0.0000s ci: -- view_exists?(:postgres_partitions) ci: -> 0.0048s ci: -- indexes(:events) ci: -> 0.0346s ci: -- execute("SET statement_timeout TO 0") ci: -> 0.0097s ci: -- remove_index(:events, {:algorithm=>:concurrently, :name=>"index_events_author_id_group_id_action_target_type_created_at"}) ci: -> 0.0318s ci: -- execute("RESET statement_timeout") ci: -> 0.0061s ci: == 20240112143548 AddIndexToEventsAuthorGroupActionTargetType: reverted (0.1859s)

ci: == [advisory_lock_connection] object_id: 201240, pg_backend_pid: 7832

Related to #435524 (closed)

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Please register or sign in to reply
    Loading