Refinement: Partition the events table by ~year~ month
## Description
#### **This issue is to discuss and refine the partition of the `events` table. We will do the work on https://gitlab.com/gitlab-org/gitlab/-/issues/396798 and https://gitlab.com/gitlab-org/gitlab/-/issues/396804.**
We have a [prune events worker](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/app/workers/prune_old_events_worker.rb) which prunes user activity every 2 years.
This was extended from 12 months in https://gitlab.com/gitlab-org/gitlab-ce/issues/52246, where we implemented this short-term fix to give us some additional time to consider a scaling strategy for the related table (the `events` table). This fix was merged in 11.4, which means a more permanent solution must take place by October 2019.
This data is very useful, and **we should not ever prune data** unless explicitly done by an instance administrator.
### Further details
See context from @yorickpeterse in https://gitlab.com/gitlab-org/gitlab-ce/issues/24244#note_60995986 on the DB challenges.
### Proposal
* Partition the `events` table by range on the `created_at` column.
* Tables should be created for each year with a schema like `events-yyyy` specifying the year of the relevant records.
* Once `events` is no longer being pruned, we should remove `prune_old_events_worker.rb`.
### Usage
Events are used in the following pages:
* https://docs.gitlab.com/ee/user/profile/contributions_calendar.html, e.g https://gitlab.com/tkuah
* https://docs.gitlab.com/ee/user/project/working_with_projects.html#view-project-activity, e.g. https://gitlab.com/gitlab-org/gitlab/activity
* https://docs.gitlab.com/ee/user/group/contribution_analytics/
* API https://docs.gitlab.com/ee/api/events.html#events-api
* View activity of users you are following
### Schema
```
# \d+ events
Table "public.events"
Column | Type | Collation | Nullable | Default | Storage | Stats target | Description
-------------+--------------------------+-----------+----------+------------------------------------+----------+--------------+-------------
project_id | integer | | | | plain | |
author_id | integer | | not null | | plain | |
target_id | integer | | | | plain | |
created_at | timestamp with time zone | | not null | | plain | |
updated_at | timestamp with time zone | | not null | | plain | |
action | smallint | | not null | | plain | |
target_type | character varying | | | | extended | |
group_id | bigint | | | | plain | |
fingerprint | bytea | | | | extended | |
id | bigint | | not null | nextval('events_id_seq'::regclass) | plain | |
Indexes:
"events_pkey" PRIMARY KEY, btree (id)
"index_events_on_target_type_and_target_id_and_fingerprint" UNIQUE, btree (target_type, target_id, fingerprint)
"analytics_index_events_on_created_at_and_author_id" btree (created_at, author_id)
"index_events_author_id_project_id_action_target_type_created_at" btree (author_id, project_id, action, target_type, created_at)
"index_events_for_followed_users" btree (author_id, target_type, action, id)
"index_events_for_group_activity" btree (group_id, target_type, action, id) WHERE group_id IS NOT NULL
"index_events_for_project_activity" btree (project_id, target_type, action, id)
"index_events_on_action" btree (action)
"index_events_on_author_id_and_created_at" btree (author_id, created_at)
"index_events_on_author_id_and_created_at_merge_requests" btree (author_id, created_at) WHERE target_type::text = 'MergeRequest'::text
"index_events_on_author_id_and_id" btree (author_id, id)
"index_events_on_created_at_and_id" btree (created_at, id) WHERE created_at > '2021-08-27 00:00:00+00'::timestamp with time zone
"index_events_on_group_id_and_id" btree (group_id, id) WHERE group_id IS NOT NULL
"index_events_on_group_id_partial" btree (group_id) WHERE group_id IS NOT NULL
"index_events_on_project_id_and_created_at" btree (project_id, created_at)
"index_events_on_project_id_and_id" btree (project_id, id)
"index_events_on_project_id_and_id_desc_on_merged_action" btree (project_id, id DESC) WHERE action = 7
"index_on_events_to_improve_contribution_analytics_performance" btree (project_id, target_type, action, created_at, author_id, id)
Check constraints:
"check_97e06e05ad" CHECK (octet_length(fingerprint) <= 128)
Foreign-key constraints:
"fk_61fbf6ca48" FOREIGN KEY (group_id) REFERENCES namespaces(id) ON DELETE CASCADE
"fk_edfd187b6f" FOREIGN KEY (author_id) REFERENCES users(id) ON DELETE CASCADE
"fk_rails_0434b48643" FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE
Referenced by:
TABLE "push_event_payloads" CONSTRAINT "fk_36c74129da" FOREIGN KEY (event_id) REFERENCES events(id) ON DELETE CASCADE
Access method: heap
```
#### Sizes
| # | Table | Rows | ▼ Total size | Table size | Index(es) Size | TOAST Size |
|---|---|------|------------|------------|----------------|------------|
|4 |`events` | ~3B |1.04 TiB |171.75 GiB |892.94 GiB |8.00 KiB |
## Backfill
At 50,000 rows every two minutes, it will take 83 days to complete the backfill
## Queries
We classify the queries below in 4 categories
| Query classification | count | Recommendation |
| ------ | ------ | ---- |
| Has created_at | 72 | keep |
| no limit, no created_at | 43 | add limit, add `created_at` |
| has limit, no created_at, has `events"."id" (ASC\|DESC)` | 36 | update id order to id, created_at order |
| has limit, no created_at, no `events"."id" (ASC\|DESC)` | 16 | add `created_at` |
### Kibana
All queries from [Postgres slowlogs](https://log.gprd.gitlab.net/goto/bed5ac5a9a84e1ee311269d71b580b2b) from last 7 days
| Top values of json.sql.keyword |
|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| INSERT INTO "events" ("project_id", "author_id", "target_id", "created_at", "updated_at", "action", "target_type", "fingerprint") VALUES ($1, $2, $3, $4, $5, $6, $7, $8) RETURNING "id" |
| SELECT "events".* FROM "events" WHERE "events"."action" = $1 AND "events"."author_id" = $2 AND "events"."fingerprint" = $3 AND "events"."target_id" = $4 AND "events"."target_type" = $5 AND "events"."project_id" = $6 LIMIT $7 |
| SELECT COUNT(*) FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" WHERE "events"."project_id" = $1 AND "projects"."visibility_level" = $2 AND "events"."action" = $3 |
| SELECT "events".* FROM "events" WHERE "events"."author_id" = $1 ORDER BY "events"."created_at" DESC LIMIT $2 OFFSET $3 |
| SELECT COUNT(*) FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" WHERE "events"."project_id" = $1 AND "projects"."visibility_level" = $2 AND "events"."target_type" = $3 |
| SELECT "events".* FROM "events" WHERE "events"."author_id" = $1 ORDER BY "events"."created_at" DESC LIMIT $2 |
| INSERT INTO "events" ("project_id", "author_id", "created_at", "updated_at", "action") VALUES ($1, $2, $3, $4, $5) RETURNING "id" |
| SELECT "events".* FROM "events" WHERE "events"."author_id" = $1 AND "events"."action" = $2 ORDER BY "events"."created_at" DESC LIMIT $3 OFFSET $4 |
| DELETE FROM "events" WHERE "events"."id" IN (SELECT "events"."id" FROM "events" WHERE "events"."project_id" = $1 LIMIT $2) |
| INSERT INTO "events" ("project_id", "author_id", "target_id", "created_at", "updated_at", "action", "target_type") VALUES ($1, $2, $3, $4, $5, $6, $7) RETURNING "id" |
| SELECT "events".* FROM "events" WHERE "events"."author_id" = $1 ORDER BY "events"."id" ASC LIMIT $2 |
| DELETE FROM "events" WHERE "events"."id" = $1 |
| DELETE FROM "events" WHERE "events"."author_id" = $1 |
| SELECT "events".* FROM "events" WHERE "events"."author_id" = $1 AND "events"."action" IN ($2, $3, $4) ORDER BY "events"."created_at" DESC LIMIT $5 OFFSET $6 |
| SELECT COUNT(*) FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" WHERE "events"."project_id" = $1 AND "projects"."visibility_level" = $2 AND "events"."target_type" = $3 AND (events.created_at > $4) |
### All possible queries to "events" table (Query recorder)
Download the query recorder log from `merge-query-recorder-logs` job in https://gitlab.com/gitlab-org/gitlab/-/merge_requests/111638/pipelines.
```
grep "FROM \\\\\"events\\\\\"" ~/Downloads/rspec.ndjson | jq ".normalized" | sed "s/\\\\\"/\"/g" | sed "s/^\"//g" | sort | uniq | pbcopy
```
<details><summary>events queries</summary>
```
DELETE FROM "events" WHERE "events"."author_id" = ?"
DELETE FROM "events" WHERE "events"."id" = ?"
DELETE FROM "events" WHERE "events"."id" BETWEEN ? AND ?"
DELETE FROM "events" WHERE "events"."id" IN (SELECT "events"."id" FROM "events" WHERE "events"."created_at" <= ? LIMIT ?)"
DELETE FROM "events" WHERE "events"."id" IN (SELECT "events"."id" FROM "events" WHERE "events"."project_id" = ? LIMIT ?)"
DELETE FROM "events" WHERE "events"."target_id" = ? AND "events"."target_type" = ?"
SELECT "events"."id" FROM "events" WHERE "events"."created_at" BETWEEN ? AND ? ORDER BY "events"."created_at" ASC LIMIT ?"
SELECT "events"."id" FROM "events" WHERE "events"."created_at" BETWEEN ? AND ? ORDER BY "events"."created_at" DESC LIMIT ?"
SELECT "events"."id" FROM "events" WHERE "events"."id" >= ? AND "events"."id" >= ? ORDER BY "events"."id" ASC LIMIT ? OFFSET ?"
SELECT "events"."id" FROM "events" WHERE "events"."id" >= ? ORDER BY "events"."id" ASC LIMIT ?"
SELECT "events"."project_id" AS t0_r0, "events"."author_id" AS t0_r1, "events"."target_id" AS t0_r2, "events"."created_at" AS t0_r3, "events"."updated_at" AS t0_r4, "events"."action" AS t0_r5, "events"."target_type" AS t0_r6, "events"."group_id" AS t0_r7, "events"."fingerprint" AS t0_r8, "events"."id" AS t0_r9, "users"."id" AS t1_r0, "users"."email" AS t1_r1, "users"."encrypted_password" AS t1_r2, "users"."reset_password_token" AS t1_r3, "users"."reset_password_sent_at" AS t1_r4, "users"."remember_created_at" AS t1_r5, "users"."sign_in_count" AS t1_r6, "users"."current_sign_in_at" AS t1_r7, "users"."last_sign_in_at" AS t1_r8, "users"."current_sign_in_ip" AS t1_r9, "users"."last_sign_in_ip" AS t1_r10, "users"."created_at" AS t1_r11, "users"."updated_at" AS t1_r12, "users"."name" AS t1_r13, "users"."admin" AS t1_r14, "users"."projects_limit" AS t1_r15, "users"."failed_attempts" AS t1_r16, "users"."locked_at" AS t1_r17, "users"."username" AS t1_r18, "users"."can_create_group" AS t1_r19, "users"."can_create_team" AS t1_r20, "users"."state" AS t1_r21, "users"."color_scheme_id" AS t1_r22, "users"."password_expires_at" AS t1_r23, "users"."created_by_id" AS t1_r24, "users"."last_credential_check_at" AS t1_r25, "users"."avatar" AS t1_r26, "users"."confirmation_token" AS t1_r27, "users"."confirmed_at" AS t1_r28, "users"."confirmation_sent_at" AS t1_r29, "users"."unconfirmed_email" AS t1_r30, "users"."hide_no_ssh_key" AS t1_r31, "users"."admin_email_unsubscribed_at" AS t1_r32, "users"."notification_email" AS t1_r33, "users"."hide_no_password" AS t1_r34, "users"."password_automatically_set" AS t1_r35, "users"."encrypted_otp_secret" AS t1_r36, "users"."encrypted_otp_secret_iv" AS t1_r37, "users"."encrypted_otp_secret_salt" AS t1_r38, "users"."otp_required_for_login" AS t1_r39, "users"."otp_backup_codes" AS t1_r40, "users"."public_email" AS t1_r41, "users"."dashboard" AS t1_r42, "users"."project_view" AS t1_r43, "users"."consumed_timestep" AS t1_r44, "users"."layout" AS t1_r45, "users"."hide_project_limit" AS t1_r46, "users"."note" AS t1_r47, "users"."unlock_token" AS t1_r48, "users"."otp_grace_period_started_at" AS t1_r49, "users"."external" AS t1_r50, "users"."incoming_email_token" AS t1_r51, "users"."auditor" AS t1_r52, "users"."require_two_factor_authentication_from_group" AS t1_r53, "users"."two_factor_grace_period" AS t1_r54, "users"."last_activity_on" AS t1_r55, "users"."notified_of_own_activity" AS t1_r56, "users"."preferred_language" AS t1_r57, "users"."email_opted_in" AS t1_r58, "users"."email_opted_in_ip" AS t1_r59, "users"."email_opted_in_source_id" AS t1_r60, "users"."email_opted_in_at" AS t1_r61, "users"."theme_id" AS t1_r62, "users"."accepted_term_id" AS t1_r63, "users"."feed_token" AS t1_r64, "users"."private_profile" AS t1_r65, "users"."roadmap_layout" AS t1_r66, "users"."include_private_contributions" AS t1_r67, "users"."commit_email" AS t1_r68, "users"."group_view" AS t1_r69, "users"."managing_group_id" AS t1_r70, "users"."first_name" AS t1_r71, "users"."last_name" AS t1_r72, "users"."static_object_token" AS t1_r73, "users"."role" AS t1_r74, "users"."user_type" AS t1_r75, "users"."static_object_token_encrypted" AS t1_r76, "users"."otp_secret_expires_at" AS t1_r77, "users"."onboarding_in_progress" AS t1_r78, "projects"."id" AS t2_r0, "projects"."name" AS t2_r1, "projects"."path" AS t2_r2, "projects"."description" AS t2_r3, "projects"."created_at" AS t2_r4, "projects"."updated_at" AS t2_r5, "projects"."creator_id" AS t2_r6, "projects"."namespace_id" AS t2_r7, "projects"."last_activity_at" AS t2_r8, "projects"."import_url" AS t2_r9, "projects"."visibility_level" AS t2_r10, "projects"."archived" AS t2_r11, "projects"."avatar" AS t2_r12, "projects"."merge_requests_template" AS t2_r13, "projects"."star_count" AS t2_r14, "projects"."merge_requests_rebase_enabled" AS t2_r15, "projects"."import_type" AS t2_r16, "projects"."import_source" AS t2_r17, "projects"."approvals_before_merge" AS t2_r18, "projects"."reset_approvals_on_push" AS t2_r19, "projects"."merge_requests_ff_only_enabled" AS t2_r20, "projects"."issues_template" AS t2_r21, "projects"."mirror" AS t2_r22, "projects"."mirror_last_update_at" AS t2_r23, "projects"."mirror_last_successful_update_at" AS t2_r24, "projects"."mirror_user_id" AS t2_r25, "projects"."shared_runners_enabled" AS t2_r26, "projects"."runners_token" AS t2_r27, "projects"."build_allow_git_fetch" AS t2_r28, "projects"."build_timeout" AS t2_r29, "projects"."mirror_trigger_builds" AS t2_r30, "projects"."pending_delete" AS t2_r31, "projects"."public_builds" AS t2_r32, "projects"."last_repository_check_failed" AS t2_r33, "projects"."last_repository_check_at" AS t2_r34, "projects"."only_allow_merge_if_pipeline_succeeds" AS t2_r35, "projects"."has_external_issue_tracker" AS t2_r36, "projects"."repository_storage" AS t2_r37, "projects"."repository_read_only" AS t2_r38, "projects"."request_access_enabled" AS t2_r39, "projects"."has_external_wiki" AS t2_r40, "projects"."ci_config_path" AS t2_r41, "projects"."lfs_enabled" AS t2_r42, "projects"."description_html" AS t2_r43, "projects"."only_allow_merge_if_all_discussions_are_resolved" AS t2_r44, "projects"."repository_size_limit" AS t2_r45, "projects"."printing_merge_request_link_enabled" AS t2_r46, "projects"."auto_cancel_pending_pipelines" AS t2_r47, "projects"."service_desk_enabled" AS t2_r48, "projects"."cached_markdown_version" AS t2_r49, "projects"."delete_error" AS t2_r50, "projects"."last_repository_updated_at" AS t2_r51, "projects"."disable_overriding_approvers_per_merge_request" AS t2_r52, "projects"."storage_version" AS t2_r53, "projects"."resolve_outdated_diff_discussions" AS t2_r54, "projects"."remote_mirror_available_overridden" AS t2_r55, "projects"."only_mirror_protected_branches" AS t2_r56, "projects"."pull_mirror_available_overridden" AS t2_r57, "projects"."jobs_cache_index" AS t2_r58, "projects"."external_authorization_classification_label" AS t2_r59, "projects"."mirror_overwrites_diverged_branches" AS t2_r60, "projects"."pages_https_only" AS t2_r61, "projects"."external_webhook_token" AS t2_r62, "projects"."packages_enabled" AS t2_r63, "projects"."merge_requests_author_approval" AS t2_r64, "projects"."pool_repository_id" AS t2_r65, "projects"."runners_token_encrypted" AS t2_r66, "projects"."bfg_object_map" AS t2_r67, "projects"."detected_repository_languages" AS t2_r68, "projects"."merge_requests_disable_committers_approval" AS t2_r69, "projects"."require_password_to_approve" AS t2_r70, "projects"."emails_disabled" AS t2_r71, "projects"."max_pages_size" AS t2_r72, "projects"."max_artifacts_size" AS t2_r73, "projects"."pull_mirror_branch_prefix" AS t2_r74, "projects"."remove_source_branch_after_merge" AS t2_r75, "projects"."marked_for_deletion_at" AS t2_r76, "projects"."marked_for_deletion_by_user_id" AS t2_r77, "projects"."autoclose_referenced_issues" AS t2_r78, "projects"."suggestion_commit_message" AS t2_r79, "projects"."project_namespace_id" AS t2_r80, "projects"."hidden" AS t2_r81, "project_features"."id" AS t3_r0, "project_features"."project_id" AS t3_r1, "project_features"."merge_requests_access_level" AS t3_r2, "project_features"."issues_access_level" AS t3_r3, "project_features"."wiki_access_level" AS t3_r4, "project_features"."snippets_access_level" AS t3_r5, "project_features"."builds_access_level" AS t3_r6, "project_features"."created_at" AS t3_r7, "project_features"."updated_at" AS t3_r8, "project_features"."repository_access_level" AS t3_r9, "project_features"."pages_access_level" AS t3_r10, "project_features"."forking_access_level" AS t3_r11, "project_features"."metrics_dashboard_access_level" AS t3_r12, "project_features"."requirements_access_level" AS t3_r13, "project_features"."operations_access_level" AS t3_r14, "project_features"."analytics_access_level" AS t3_r15, "project_features"."security_and_compliance_access_level" AS t3_r16, "project_features"."container_registry_access_level" AS t3_r17, "project_features"."package_registry_access_level" AS t3_r18, "project_features"."monitor_access_level" AS t3_r19, "project_features"."infrastructure_access_level" AS t3_r20, "project_features"."feature_flags_access_level" AS t3_r21, "project_features"."environments_access_level" AS t3_r22, "project_features"."releases_access_level" AS t3_r23, "project_import_data"."id" AS t4_r0, "project_import_data"."project_id" AS t4_r1, "project_import_data"."data" AS t4_r2, "project_import_data"."encrypted_credentials" AS t4_r3, "project_import_data"."encrypted_credentials_iv" AS t4_r4, "project_import_data"."encrypted_credentials_salt" AS t4_r5, "namespaces"."id" AS t5_r0, "namespaces"."name" AS t5_r1, "namespaces"."path" AS t5_r2, "namespaces"."owner_id" AS t5_r3, "namespaces"."created_at" AS t5_r4, "namespaces"."updated_at" AS t5_r5, "namespaces"."type" AS t5_r6, "namespaces"."description" AS t5_r7, "namespaces"."avatar" AS t5_r8, "namespaces"."membership_lock" AS t5_r9, "namespaces"."share_with_group_lock" AS t5_r10, "namespaces"."visibility_level" AS t5_r11, "namespaces"."request_access_enabled" AS t5_r12, "namespaces"."ldap_sync_status" AS t5_r13, "namespaces"."ldap_sync_error" AS t5_r14, "namespaces"."ldap_sync_last_update_at" AS t5_r15, "namespaces"."ldap_sync_last_successful_update_at" AS t5_r16, "namespaces"."ldap_sync_last_sync_at" AS t5_r17, "namespaces"."description_html" AS t5_r18, "namespaces"."lfs_enabled" AS t5_r19, "namespaces"."parent_id" AS t5_r20, "namespaces"."shared_runners_minutes_limit" AS t5_r21, "namespaces"."repository_size_limit" AS t5_r22, "namespaces"."require_two_factor_authentication" AS t5_r23, "namespaces"."two_factor_grace_period" AS t5_r24, "namespaces"."cached_markdown_version" AS t5_r25, "namespaces"."project_creation_level" AS t5_r26, "namespaces"."runners_token" AS t5_r27, "namespaces"."file_template_project_id" AS t5_r28, "namespaces"."saml_discovery_token" AS t5_r29, "namespaces"."runners_token_encrypted" AS t5_r30, "namespaces"."custom_project_templates_group_id" AS t5_r31, "namespaces"."auto_devops_enabled" AS t5_r32, "namespaces"."extra_shared_runners_minutes_limit" AS t5_r33, "namespaces"."last_ci_minutes_notification_at" AS t5_r34, "namespaces"."last_ci_minutes_usage_notification_level" AS t5_r35, "namespaces"."subgroup_creation_level" AS t5_r36, "namespaces"."emails_disabled" AS t5_r37, "namespaces"."max_pages_size" AS t5_r38, "namespaces"."max_artifacts_size" AS t5_r39, "namespaces"."mentions_disabled" AS t5_r40, "namespaces"."default_branch_protection" AS t5_r41, "namespaces"."unlock_membership_to_ldap" AS t5_r42, "namespaces"."max_personal_access_token_lifetime" AS t5_r43, "namespaces"."push_rule_id" AS t5_r44, "namespaces"."shared_runners_enabled" AS t5_r45, "namespaces"."allow_descendants_override_disabled_shared_runners" AS t5_r46, "namespaces"."traversal_ids" AS t5_r47 FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" LEFT OUTER JOIN "project_features" ON "project_features"."project_id" = "projects"."id" LEFT OUTER JOIN "project_import_data" ON "project_import_data"."project_id" = "projects"."id" LEFT OUTER JOIN "namespaces" ON "namespaces"."id" = "projects"."namespace_id" LEFT OUTER JOIN "users" ON "users"."id" = "events"."author_id" WHERE "events"."author_id" = ? AND "projects"."visibility_level" = ? ORDER BY "events"."id" DESC LIMIT ? OFFSET ?"
SELECT "events"."project_id" AS t0_r0, "events"."author_id" AS t0_r1, "events"."target_id" AS t0_r2, "events"."created_at" AS t0_r3, "events"."updated_at" AS t0_r4, "events"."action" AS t0_r5, "events"."target_type" AS t0_r6, "events"."group_id" AS t0_r7, "events"."fingerprint" AS t0_r8, "events"."id" AS t0_r9, "users"."id" AS t1_r0, "users"."email" AS t1_r1, "users"."encrypted_password" AS t1_r2, "users"."reset_password_token" AS t1_r3, "users"."reset_password_sent_at" AS t1_r4, "users"."remember_created_at" AS t1_r5, "users"."sign_in_count" AS t1_r6, "users"."current_sign_in_at" AS t1_r7, "users"."last_sign_in_at" AS t1_r8, "users"."current_sign_in_ip" AS t1_r9, "users"."last_sign_in_ip" AS t1_r10, "users"."created_at" AS t1_r11, "users"."updated_at" AS t1_r12, "users"."name" AS t1_r13, "users"."admin" AS t1_r14, "users"."projects_limit" AS t1_r15, "users"."failed_attempts" AS t1_r16, "users"."locked_at" AS t1_r17, "users"."username" AS t1_r18, "users"."can_create_group" AS t1_r19, "users"."can_create_team" AS t1_r20, "users"."state" AS t1_r21, "users"."color_scheme_id" AS t1_r22, "users"."password_expires_at" AS t1_r23, "users"."created_by_id" AS t1_r24, "users"."last_credential_check_at" AS t1_r25, "users"."avatar" AS t1_r26, "users"."confirmation_token" AS t1_r27, "users"."confirmed_at" AS t1_r28, "users"."confirmation_sent_at" AS t1_r29, "users"."unconfirmed_email" AS t1_r30, "users"."hide_no_ssh_key" AS t1_r31, "users"."admin_email_unsubscribed_at" AS t1_r32, "users"."notification_email" AS t1_r33, "users"."hide_no_password" AS t1_r34, "users"."password_automatically_set" AS t1_r35, "users"."encrypted_otp_secret" AS t1_r36, "users"."encrypted_otp_secret_iv" AS t1_r37, "users"."encrypted_otp_secret_salt" AS t1_r38, "users"."otp_required_for_login" AS t1_r39, "users"."otp_backup_codes" AS t1_r40, "users"."public_email" AS t1_r41, "users"."dashboard" AS t1_r42, "users"."project_view" AS t1_r43, "users"."consumed_timestep" AS t1_r44, "users"."layout" AS t1_r45, "users"."hide_project_limit" AS t1_r46, "users"."note" AS t1_r47, "users"."unlock_token" AS t1_r48, "users"."otp_grace_period_started_at" AS t1_r49, "users"."external" AS t1_r50, "users"."incoming_email_token" AS t1_r51, "users"."auditor" AS t1_r52, "users"."require_two_factor_authentication_from_group" AS t1_r53, "users"."two_factor_grace_period" AS t1_r54, "users"."last_activity_on" AS t1_r55, "users"."notified_of_own_activity" AS t1_r56, "users"."preferred_language" AS t1_r57, "users"."email_opted_in" AS t1_r58, "users"."email_opted_in_ip" AS t1_r59, "users"."email_opted_in_source_id" AS t1_r60, "users"."email_opted_in_at" AS t1_r61, "users"."theme_id" AS t1_r62, "users"."accepted_term_id" AS t1_r63, "users"."feed_token" AS t1_r64, "users"."private_profile" AS t1_r65, "users"."roadmap_layout" AS t1_r66, "users"."include_private_contributions" AS t1_r67, "users"."commit_email" AS t1_r68, "users"."group_view" AS t1_r69, "users"."managing_group_id" AS t1_r70, "users"."first_name" AS t1_r71, "users"."last_name" AS t1_r72, "users"."static_object_token" AS t1_r73, "users"."role" AS t1_r74, "users"."user_type" AS t1_r75, "users"."static_object_token_encrypted" AS t1_r76, "users"."otp_secret_expires_at" AS t1_r77, "users"."onboarding_in_progress" AS t1_r78, "projects"."id" AS t2_r0, "projects"."name" AS t2_r1, "projects"."path" AS t2_r2, "projects"."description" AS t2_r3, "projects"."created_at" AS t2_r4, "projects"."updated_at" AS t2_r5, "projects"."creator_id" AS t2_r6, "projects"."namespace_id" AS t2_r7, "projects"."last_activity_at" AS t2_r8, "projects"."import_url" AS t2_r9, "projects"."visibility_level" AS t2_r10, "projects"."archived" AS t2_r11, "projects"."avatar" AS t2_r12, "projects"."merge_requests_template" AS t2_r13, "projects"."star_count" AS t2_r14, "projects"."merge_requests_rebase_enabled" AS t2_r15, "projects"."import_type" AS t2_r16, "projects"."import_source" AS t2_r17, "projects"."approvals_before_merge" AS t2_r18, "projects"."reset_approvals_on_push" AS t2_r19, "projects"."merge_requests_ff_only_enabled" AS t2_r20, "projects"."issues_template" AS t2_r21, "projects"."mirror" AS t2_r22, "projects"."mirror_last_update_at" AS t2_r23, "projects"."mirror_last_successful_update_at" AS t2_r24, "projects"."mirror_user_id" AS t2_r25, "projects"."shared_runners_enabled" AS t2_r26, "projects"."runners_token" AS t2_r27, "projects"."build_allow_git_fetch" AS t2_r28, "projects"."build_timeout" AS t2_r29, "projects"."mirror_trigger_builds" AS t2_r30, "projects"."pending_delete" AS t2_r31, "projects"."public_builds" AS t2_r32, "projects"."last_repository_check_failed" AS t2_r33, "projects"."last_repository_check_at" AS t2_r34, "projects"."only_allow_merge_if_pipeline_succeeds" AS t2_r35, "projects"."has_external_issue_tracker" AS t2_r36, "projects"."repository_storage" AS t2_r37, "projects"."repository_read_only" AS t2_r38, "projects"."request_access_enabled" AS t2_r39, "projects"."has_external_wiki" AS t2_r40, "projects"."ci_config_path" AS t2_r41, "projects"."lfs_enabled" AS t2_r42, "projects"."description_html" AS t2_r43, "projects"."only_allow_merge_if_all_discussions_are_resolved" AS t2_r44, "projects"."repository_size_limit" AS t2_r45, "projects"."printing_merge_request_link_enabled" AS t2_r46, "projects"."auto_cancel_pending_pipelines" AS t2_r47, "projects"."service_desk_enabled" AS t2_r48, "projects"."cached_markdown_version" AS t2_r49, "projects"."delete_error" AS t2_r50, "projects"."last_repository_updated_at" AS t2_r51, "projects"."disable_overriding_approvers_per_merge_request" AS t2_r52, "projects"."storage_version" AS t2_r53, "projects"."resolve_outdated_diff_discussions" AS t2_r54, "projects"."remote_mirror_available_overridden" AS t2_r55, "projects"."only_mirror_protected_branches" AS t2_r56, "projects"."pull_mirror_available_overridden" AS t2_r57, "projects"."jobs_cache_index" AS t2_r58, "projects"."external_authorization_classification_label" AS t2_r59, "projects"."mirror_overwrites_diverged_branches" AS t2_r60, "projects"."pages_https_only" AS t2_r61, "projects"."external_webhook_token" AS t2_r62, "projects"."packages_enabled" AS t2_r63, "projects"."merge_requests_author_approval" AS t2_r64, "projects"."pool_repository_id" AS t2_r65, "projects"."runners_token_encrypted" AS t2_r66, "projects"."bfg_object_map" AS t2_r67, "projects"."detected_repository_languages" AS t2_r68, "projects"."merge_requests_disable_committers_approval" AS t2_r69, "projects"."require_password_to_approve" AS t2_r70, "projects"."emails_disabled" AS t2_r71, "projects"."max_pages_size" AS t2_r72, "projects"."max_artifacts_size" AS t2_r73, "projects"."pull_mirror_branch_prefix" AS t2_r74, "projects"."remove_source_branch_after_merge" AS t2_r75, "projects"."marked_for_deletion_at" AS t2_r76, "projects"."marked_for_deletion_by_user_id" AS t2_r77, "projects"."autoclose_referenced_issues" AS t2_r78, "projects"."suggestion_commit_message" AS t2_r79, "projects"."project_namespace_id" AS t2_r80, "projects"."hidden" AS t2_r81, "project_features"."id" AS t3_r0, "project_features"."project_id" AS t3_r1, "project_features"."merge_requests_access_level" AS t3_r2, "project_features"."issues_access_level" AS t3_r3, "project_features"."wiki_access_level" AS t3_r4, "project_features"."snippets_access_level" AS t3_r5, "project_features"."builds_access_level" AS t3_r6, "project_features"."created_at" AS t3_r7, "project_features"."updated_at" AS t3_r8, "project_features"."repository_access_level" AS t3_r9, "project_features"."pages_access_level" AS t3_r10, "project_features"."forking_access_level" AS t3_r11, "project_features"."metrics_dashboard_access_level" AS t3_r12, "project_features"."requirements_access_level" AS t3_r13, "project_features"."operations_access_level" AS t3_r14, "project_features"."analytics_access_level" AS t3_r15, "project_features"."security_and_compliance_access_level" AS t3_r16, "project_features"."container_registry_access_level" AS t3_r17, "project_features"."package_registry_access_level" AS t3_r18, "project_features"."monitor_access_level" AS t3_r19, "project_features"."infrastructure_access_level" AS t3_r20, "project_features"."feature_flags_access_level" AS t3_r21, "project_features"."environments_access_level" AS t3_r22, "project_features"."releases_access_level" AS t3_r23, "project_import_data"."id" AS t4_r0, "project_import_data"."project_id" AS t4_r1, "project_import_data"."data" AS t4_r2, "project_import_data"."encrypted_credentials" AS t4_r3, "project_import_data"."encrypted_credentials_iv" AS t4_r4, "project_import_data"."encrypted_credentials_salt" AS t4_r5, "namespaces"."id" AS t5_r0, "namespaces"."name" AS t5_r1, "namespaces"."path" AS t5_r2, "namespaces"."owner_id" AS t5_r3, "namespaces"."created_at" AS t5_r4, "namespaces"."updated_at" AS t5_r5, "namespaces"."type" AS t5_r6, "namespaces"."description" AS t5_r7, "namespaces"."avatar" AS t5_r8, "namespaces"."membership_lock" AS t5_r9, "namespaces"."share_with_group_lock" AS t5_r10, "namespaces"."visibility_level" AS t5_r11, "namespaces"."request_access_enabled" AS t5_r12, "namespaces"."ldap_sync_status" AS t5_r13, "namespaces"."ldap_sync_error" AS t5_r14, "namespaces"."ldap_sync_last_update_at" AS t5_r15, "namespaces"."ldap_sync_last_successful_update_at" AS t5_r16, "namespaces"."ldap_sync_last_sync_at" AS t5_r17, "namespaces"."description_html" AS t5_r18, "namespaces"."lfs_enabled" AS t5_r19, "namespaces"."parent_id" AS t5_r20, "namespaces"."shared_runners_minutes_limit" AS t5_r21, "namespaces"."repository_size_limit" AS t5_r22, "namespaces"."require_two_factor_authentication" AS t5_r23, "namespaces"."two_factor_grace_period" AS t5_r24, "namespaces"."cached_markdown_version" AS t5_r25, "namespaces"."project_creation_level" AS t5_r26, "namespaces"."runners_token" AS t5_r27, "namespaces"."file_template_project_id" AS t5_r28, "namespaces"."saml_discovery_token" AS t5_r29, "namespaces"."runners_token_encrypted" AS t5_r30, "namespaces"."custom_project_templates_group_id" AS t5_r31, "namespaces"."auto_devops_enabled" AS t5_r32, "namespaces"."extra_shared_runners_minutes_limit" AS t5_r33, "namespaces"."last_ci_minutes_notification_at" AS t5_r34, "namespaces"."last_ci_minutes_usage_notification_level" AS t5_r35, "namespaces"."subgroup_creation_level" AS t5_r36, "namespaces"."emails_disabled" AS t5_r37, "namespaces"."max_pages_size" AS t5_r38, "namespaces"."max_artifacts_size" AS t5_r39, "namespaces"."mentions_disabled" AS t5_r40, "namespaces"."default_branch_protection" AS t5_r41, "namespaces"."unlock_membership_to_ldap" AS t5_r42, "namespaces"."max_personal_access_token_lifetime" AS t5_r43, "namespaces"."push_rule_id" AS t5_r44, "namespaces"."shared_runners_enabled" AS t5_r45, "namespaces"."allow_descendants_override_disabled_shared_runners" AS t5_r46, "namespaces"."traversal_ids" AS t5_r47 FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" LEFT OUTER JOIN "project_features" ON "project_features"."project_id" = "projects"."id" LEFT OUTER JOIN "project_import_data" ON "project_import_data"."project_id" = "projects"."id" LEFT OUTER JOIN "namespaces" ON "namespaces"."id" = "projects"."namespace_id" LEFT OUTER JOIN "users" ON "users"."id" = "events"."author_id" WHERE "events"."author_id" = ? AND (EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (?,?,?)) AND "events"."action" = ? AND "events"."target_type" = ? AND (events.created_at < ?) AND (events.created_at > ?) ORDER BY "events"."id" DESC LIMIT ? OFFSET ?"
SELECT "events"."project_id" AS t0_r0, "events"."author_id" AS t0_r1, "events"."target_id" AS t0_r2, "events"."created_at" AS t0_r3, "events"."updated_at" AS t0_r4, "events"."action" AS t0_r5, "events"."target_type" AS t0_r6, "events"."group_id" AS t0_r7, "events"."fingerprint" AS t0_r8, "events"."id" AS t0_r9, "users"."id" AS t1_r0, "users"."email" AS t1_r1, "users"."encrypted_password" AS t1_r2, "users"."reset_password_token" AS t1_r3, "users"."reset_password_sent_at" AS t1_r4, "users"."remember_created_at" AS t1_r5, "users"."sign_in_count" AS t1_r6, "users"."current_sign_in_at" AS t1_r7, "users"."last_sign_in_at" AS t1_r8, "users"."current_sign_in_ip" AS t1_r9, "users"."last_sign_in_ip" AS t1_r10, "users"."created_at" AS t1_r11, "users"."updated_at" AS t1_r12, "users"."name" AS t1_r13, "users"."admin" AS t1_r14, "users"."projects_limit" AS t1_r15, "users"."failed_attempts" AS t1_r16, "users"."locked_at" AS t1_r17, "users"."username" AS t1_r18, "users"."can_create_group" AS t1_r19, "users"."can_create_team" AS t1_r20, "users"."state" AS t1_r21, "users"."color_scheme_id" AS t1_r22, "users"."password_expires_at" AS t1_r23, "users"."created_by_id" AS t1_r24, "users"."last_credential_check_at" AS t1_r25, "users"."avatar" AS t1_r26, "users"."confirmation_token" AS t1_r27, "users"."confirmed_at" AS t1_r28, "users"."confirmation_sent_at" AS t1_r29, "users"."unconfirmed_email" AS t1_r30, "users"."hide_no_ssh_key" AS t1_r31, "users"."admin_email_unsubscribed_at" AS t1_r32, "users"."notification_email" AS t1_r33, "users"."hide_no_password" AS t1_r34, "users"."password_automatically_set" AS t1_r35, "users"."encrypted_otp_secret" AS t1_r36, "users"."encrypted_otp_secret_iv" AS t1_r37, "users"."encrypted_otp_secret_salt" AS t1_r38, "users"."otp_required_for_login" AS t1_r39, "users"."otp_backup_codes" AS t1_r40, "users"."public_email" AS t1_r41, "users"."dashboard" AS t1_r42, "users"."project_view" AS t1_r43, "users"."consumed_timestep" AS t1_r44, "users"."layout" AS t1_r45, "users"."hide_project_limit" AS t1_r46, "users"."note" AS t1_r47, "users"."unlock_token" AS t1_r48, "users"."otp_grace_period_started_at" AS t1_r49, "users"."external" AS t1_r50, "users"."incoming_email_token" AS t1_r51, "users"."auditor" AS t1_r52, "users"."require_two_factor_authentication_from_group" AS t1_r53, "users"."two_factor_grace_period" AS t1_r54, "users"."last_activity_on" AS t1_r55, "users"."notified_of_own_activity" AS t1_r56, "users"."preferred_language" AS t1_r57, "users"."email_opted_in" AS t1_r58, "users"."email_opted_in_ip" AS t1_r59, "users"."email_opted_in_source_id" AS t1_r60, "users"."email_opted_in_at" AS t1_r61, "users"."theme_id" AS t1_r62, "users"."accepted_term_id" AS t1_r63, "users"."feed_token" AS t1_r64, "users"."private_profile" AS t1_r65, "users"."roadmap_layout" AS t1_r66, "users"."include_private_contributions" AS t1_r67, "users"."commit_email" AS t1_r68, "users"."group_view" AS t1_r69, "users"."managing_group_id" AS t1_r70, "users"."first_name" AS t1_r71, "users"."last_name" AS t1_r72, "users"."static_object_token" AS t1_r73, "users"."role" AS t1_r74, "users"."user_type" AS t1_r75, "users"."static_object_token_encrypted" AS t1_r76, "users"."otp_secret_expires_at" AS t1_r77, "users"."onboarding_in_progress" AS t1_r78, "projects"."id" AS t2_r0, "projects"."name" AS t2_r1, "projects"."path" AS t2_r2, "projects"."description" AS t2_r3, "projects"."created_at" AS t2_r4, "projects"."updated_at" AS t2_r5, "projects"."creator_id" AS t2_r6, "projects"."namespace_id" AS t2_r7, "projects"."last_activity_at" AS t2_r8, "projects"."import_url" AS t2_r9, "projects"."visibility_level" AS t2_r10, "projects"."archived" AS t2_r11, "projects"."avatar" AS t2_r12, "projects"."merge_requests_template" AS t2_r13, "projects"."star_count" AS t2_r14, "projects"."merge_requests_rebase_enabled" AS t2_r15, "projects"."import_type" AS t2_r16, "projects"."import_source" AS t2_r17, "projects"."approvals_before_merge" AS t2_r18, "projects"."reset_approvals_on_push" AS t2_r19, "projects"."merge_requests_ff_only_enabled" AS t2_r20, "projects"."issues_template" AS t2_r21, "projects"."mirror" AS t2_r22, "projects"."mirror_last_update_at" AS t2_r23, "projects"."mirror_last_successful_update_at" AS t2_r24, "projects"."mirror_user_id" AS t2_r25, "projects"."shared_runners_enabled" AS t2_r26, "projects"."runners_token" AS t2_r27, "projects"."build_allow_git_fetch" AS t2_r28, "projects"."build_timeout" AS t2_r29, "projects"."mirror_trigger_builds" AS t2_r30, "projects"."pending_delete" AS t2_r31, "projects"."public_builds" AS t2_r32, "projects"."last_repository_check_failed" AS t2_r33, "projects"."last_repository_check_at" AS t2_r34, "projects"."only_allow_merge_if_pipeline_succeeds" AS t2_r35, "projects"."has_external_issue_tracker" AS t2_r36, "projects"."repository_storage" AS t2_r37, "projects"."repository_read_only" AS t2_r38, "projects"."request_access_enabled" AS t2_r39, "projects"."has_external_wiki" AS t2_r40, "projects"."ci_config_path" AS t2_r41, "projects"."lfs_enabled" AS t2_r42, "projects"."description_html" AS t2_r43, "projects"."only_allow_merge_if_all_discussions_are_resolved" AS t2_r44, "projects"."repository_size_limit" AS t2_r45, "projects"."printing_merge_request_link_enabled" AS t2_r46, "projects"."auto_cancel_pending_pipelines" AS t2_r47, "projects"."service_desk_enabled" AS t2_r48, "projects"."cached_markdown_version" AS t2_r49, "projects"."delete_error" AS t2_r50, "projects"."last_repository_updated_at" AS t2_r51, "projects"."disable_overriding_approvers_per_merge_request" AS t2_r52, "projects"."storage_version" AS t2_r53, "projects"."resolve_outdated_diff_discussions" AS t2_r54, "projects"."remote_mirror_available_overridden" AS t2_r55, "projects"."only_mirror_protected_branches" AS t2_r56, "projects"."pull_mirror_available_overridden" AS t2_r57, "projects"."jobs_cache_index" AS t2_r58, "projects"."external_authorization_classification_label" AS t2_r59, "projects"."mirror_overwrites_diverged_branches" AS t2_r60, "projects"."pages_https_only" AS t2_r61, "projects"."external_webhook_token" AS t2_r62, "projects"."packages_enabled" AS t2_r63, "projects"."merge_requests_author_approval" AS t2_r64, "projects"."pool_repository_id" AS t2_r65, "projects"."runners_token_encrypted" AS t2_r66, "projects"."bfg_object_map" AS t2_r67, "projects"."detected_repository_languages" AS t2_r68, "projects"."merge_requests_disable_committers_approval" AS t2_r69, "projects"."require_password_to_approve" AS t2_r70, "projects"."emails_disabled" AS t2_r71, "projects"."max_pages_size" AS t2_r72, "projects"."max_artifacts_size" AS t2_r73, "projects"."pull_mirror_branch_prefix" AS t2_r74, "projects"."remove_source_branch_after_merge" AS t2_r75, "projects"."marked_for_deletion_at" AS t2_r76, "projects"."marked_for_deletion_by_user_id" AS t2_r77, "projects"."autoclose_referenced_issues" AS t2_r78, "projects"."suggestion_commit_message" AS t2_r79, "projects"."project_namespace_id" AS t2_r80, "projects"."hidden" AS t2_r81, "project_features"."id" AS t3_r0, "project_features"."project_id" AS t3_r1, "project_features"."merge_requests_access_level" AS t3_r2, "project_features"."issues_access_level" AS t3_r3, "project_features"."wiki_access_level" AS t3_r4, "project_features"."snippets_access_level" AS t3_r5, "project_features"."builds_access_level" AS t3_r6, "project_features"."created_at" AS t3_r7, "project_features"."updated_at" AS t3_r8, "project_features"."repository_access_level" AS t3_r9, "project_features"."pages_access_level" AS t3_r10, "project_features"."forking_access_level" AS t3_r11, "project_features"."metrics_dashboard_access_level" AS t3_r12, "project_features"."requirements_access_level" AS t3_r13, "project_features"."operations_access_level" AS t3_r14, "project_features"."analytics_access_level" AS t3_r15, "project_features"."security_and_compliance_access_level" AS t3_r16, "project_features"."container_registry_access_level" AS t3_r17, "project_features"."package_registry_access_level" AS t3_r18, "project_features"."monitor_access_level" AS t3_r19, "project_features"."infrastructure_access_level" AS t3_r20, "project_features"."feature_flags_access_level" AS t3_r21, "project_features"."environments_access_level" AS t3_r22, "project_features"."releases_access_level" AS t3_r23, "project_import_data"."id" AS t4_r0, "project_import_data"."project_id" AS t4_r1, "project_import_data"."data" AS t4_r2, "project_import_data"."encrypted_credentials" AS t4_r3, "project_import_data"."encrypted_credentials_iv" AS t4_r4, "project_import_data"."encrypted_credentials_salt" AS t4_r5, "namespaces"."id" AS t5_r0, "namespaces"."name" AS t5_r1, "namespaces"."path" AS t5_r2, "namespaces"."owner_id" AS t5_r3, "namespaces"."created_at" AS t5_r4, "namespaces"."updated_at" AS t5_r5, "namespaces"."type" AS t5_r6, "namespaces"."description" AS t5_r7, "namespaces"."avatar" AS t5_r8, "namespaces"."membership_lock" AS t5_r9, "namespaces"."share_with_group_lock" AS t5_r10, "namespaces"."visibility_level" AS t5_r11, "namespaces"."request_access_enabled" AS t5_r12, "namespaces"."ldap_sync_status" AS t5_r13, "namespaces"."ldap_sync_error" AS t5_r14, "namespaces"."ldap_sync_last_update_at" AS t5_r15, "namespaces"."ldap_sync_last_successful_update_at" AS t5_r16, "namespaces"."ldap_sync_last_sync_at" AS t5_r17, "namespaces"."description_html" AS t5_r18, "namespaces"."lfs_enabled" AS t5_r19, "namespaces"."parent_id" AS t5_r20, "namespaces"."shared_runners_minutes_limit" AS t5_r21, "namespaces"."repository_size_limit" AS t5_r22, "namespaces"."require_two_factor_authentication" AS t5_r23, "namespaces"."two_factor_grace_period" AS t5_r24, "namespaces"."cached_markdown_version" AS t5_r25, "namespaces"."project_creation_level" AS t5_r26, "namespaces"."runners_token" AS t5_r27, "namespaces"."file_template_project_id" AS t5_r28, "namespaces"."saml_discovery_token" AS t5_r29, "namespaces"."runners_token_encrypted" AS t5_r30, "namespaces"."custom_project_templates_group_id" AS t5_r31, "namespaces"."auto_devops_enabled" AS t5_r32, "namespaces"."extra_shared_runners_minutes_limit" AS t5_r33, "namespaces"."last_ci_minutes_notification_at" AS t5_r34, "namespaces"."last_ci_minutes_usage_notification_level" AS t5_r35, "namespaces"."subgroup_creation_level" AS t5_r36, "namespaces"."emails_disabled" AS t5_r37, "namespaces"."max_pages_size" AS t5_r38, "namespaces"."max_artifacts_size" AS t5_r39, "namespaces"."mentions_disabled" AS t5_r40, "namespaces"."default_branch_protection" AS t5_r41, "namespaces"."unlock_membership_to_ldap" AS t5_r42, "namespaces"."max_personal_access_token_lifetime" AS t5_r43, "namespaces"."push_rule_id" AS t5_r44, "namespaces"."shared_runners_enabled" AS t5_r45, "namespaces"."allow_descendants_override_disabled_shared_runners" AS t5_r46, "namespaces"."traversal_ids" AS t5_r47 FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" LEFT OUTER JOIN "project_features" ON "project_features"."project_id" = "projects"."id" LEFT OUTER JOIN "project_import_data" ON "project_import_data"."project_id" = "projects"."id" LEFT OUTER JOIN "namespaces" ON "namespaces"."id" = "projects"."namespace_id" LEFT OUTER JOIN "users" ON "users"."id" = "events"."author_id" WHERE "events"."author_id" = ? AND (EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (?,?,?)) AND "events"."action" = ? ORDER BY "events"."id" DESC LIMIT ? OFFSET ?"
SELECT "events"."project_id" AS t0_r0, "events"."author_id" AS t0_r1, "events"."target_id" AS t0_r2, "events"."created_at" AS t0_r3, "events"."updated_at" AS t0_r4, "events"."action" AS t0_r5, "events"."target_type" AS t0_r6, "events"."group_id" AS t0_r7, "events"."fingerprint" AS t0_r8, "events"."id" AS t0_r9, "users"."id" AS t1_r0, "users"."email" AS t1_r1, "users"."encrypted_password" AS t1_r2, "users"."reset_password_token" AS t1_r3, "users"."reset_password_sent_at" AS t1_r4, "users"."remember_created_at" AS t1_r5, "users"."sign_in_count" AS t1_r6, "users"."current_sign_in_at" AS t1_r7, "users"."last_sign_in_at" AS t1_r8, "users"."current_sign_in_ip" AS t1_r9, "users"."last_sign_in_ip" AS t1_r10, "users"."created_at" AS t1_r11, "users"."updated_at" AS t1_r12, "users"."name" AS t1_r13, "users"."admin" AS t1_r14, "users"."projects_limit" AS t1_r15, "users"."failed_attempts" AS t1_r16, "users"."locked_at" AS t1_r17, "users"."username" AS t1_r18, "users"."can_create_group" AS t1_r19, "users"."can_create_team" AS t1_r20, "users"."state" AS t1_r21, "users"."color_scheme_id" AS t1_r22, "users"."password_expires_at" AS t1_r23, "users"."created_by_id" AS t1_r24, "users"."last_credential_check_at" AS t1_r25, "users"."avatar" AS t1_r26, "users"."confirmation_token" AS t1_r27, "users"."confirmed_at" AS t1_r28, "users"."confirmation_sent_at" AS t1_r29, "users"."unconfirmed_email" AS t1_r30, "users"."hide_no_ssh_key" AS t1_r31, "users"."admin_email_unsubscribed_at" AS t1_r32, "users"."notification_email" AS t1_r33, "users"."hide_no_password" AS t1_r34, "users"."password_automatically_set" AS t1_r35, "users"."encrypted_otp_secret" AS t1_r36, "users"."encrypted_otp_secret_iv" AS t1_r37, "users"."encrypted_otp_secret_salt" AS t1_r38, "users"."otp_required_for_login" AS t1_r39, "users"."otp_backup_codes" AS t1_r40, "users"."public_email" AS t1_r41, "users"."dashboard" AS t1_r42, "users"."project_view" AS t1_r43, "users"."consumed_timestep" AS t1_r44, "users"."layout" AS t1_r45, "users"."hide_project_limit" AS t1_r46, "users"."note" AS t1_r47, "users"."unlock_token" AS t1_r48, "users"."otp_grace_period_started_at" AS t1_r49, "users"."external" AS t1_r50, "users"."incoming_email_token" AS t1_r51, "users"."auditor" AS t1_r52, "users"."require_two_factor_authentication_from_group" AS t1_r53, "users"."two_factor_grace_period" AS t1_r54, "users"."last_activity_on" AS t1_r55, "users"."notified_of_own_activity" AS t1_r56, "users"."preferred_language" AS t1_r57, "users"."email_opted_in" AS t1_r58, "users"."email_opted_in_ip" AS t1_r59, "users"."email_opted_in_source_id" AS t1_r60, "users"."email_opted_in_at" AS t1_r61, "users"."theme_id" AS t1_r62, "users"."accepted_term_id" AS t1_r63, "users"."feed_token" AS t1_r64, "users"."private_profile" AS t1_r65, "users"."roadmap_layout" AS t1_r66, "users"."include_private_contributions" AS t1_r67, "users"."commit_email" AS t1_r68, "users"."group_view" AS t1_r69, "users"."managing_group_id" AS t1_r70, "users"."first_name" AS t1_r71, "users"."last_name" AS t1_r72, "users"."static_object_token" AS t1_r73, "users"."role" AS t1_r74, "users"."user_type" AS t1_r75, "users"."static_object_token_encrypted" AS t1_r76, "users"."otp_secret_expires_at" AS t1_r77, "users"."onboarding_in_progress" AS t1_r78, "projects"."id" AS t2_r0, "projects"."name" AS t2_r1, "projects"."path" AS t2_r2, "projects"."description" AS t2_r3, "projects"."created_at" AS t2_r4, "projects"."updated_at" AS t2_r5, "projects"."creator_id" AS t2_r6, "projects"."namespace_id" AS t2_r7, "projects"."last_activity_at" AS t2_r8, "projects"."import_url" AS t2_r9, "projects"."visibility_level" AS t2_r10, "projects"."archived" AS t2_r11, "projects"."avatar" AS t2_r12, "projects"."merge_requests_template" AS t2_r13, "projects"."star_count" AS t2_r14, "projects"."merge_requests_rebase_enabled" AS t2_r15, "projects"."import_type" AS t2_r16, "projects"."import_source" AS t2_r17, "projects"."approvals_before_merge" AS t2_r18, "projects"."reset_approvals_on_push" AS t2_r19, "projects"."merge_requests_ff_only_enabled" AS t2_r20, "projects"."issues_template" AS t2_r21, "projects"."mirror" AS t2_r22, "projects"."mirror_last_update_at" AS t2_r23, "projects"."mirror_last_successful_update_at" AS t2_r24, "projects"."mirror_user_id" AS t2_r25, "projects"."shared_runners_enabled" AS t2_r26, "projects"."runners_token" AS t2_r27, "projects"."build_allow_git_fetch" AS t2_r28, "projects"."build_timeout" AS t2_r29, "projects"."mirror_trigger_builds" AS t2_r30, "projects"."pending_delete" AS t2_r31, "projects"."public_builds" AS t2_r32, "projects"."last_repository_check_failed" AS t2_r33, "projects"."last_repository_check_at" AS t2_r34, "projects"."only_allow_merge_if_pipeline_succeeds" AS t2_r35, "projects"."has_external_issue_tracker" AS t2_r36, "projects"."repository_storage" AS t2_r37, "projects"."repository_read_only" AS t2_r38, "projects"."request_access_enabled" AS t2_r39, "projects"."has_external_wiki" AS t2_r40, "projects"."ci_config_path" AS t2_r41, "projects"."lfs_enabled" AS t2_r42, "projects"."description_html" AS t2_r43, "projects"."only_allow_merge_if_all_discussions_are_resolved" AS t2_r44, "projects"."repository_size_limit" AS t2_r45, "projects"."printing_merge_request_link_enabled" AS t2_r46, "projects"."auto_cancel_pending_pipelines" AS t2_r47, "projects"."service_desk_enabled" AS t2_r48, "projects"."cached_markdown_version" AS t2_r49, "projects"."delete_error" AS t2_r50, "projects"."last_repository_updated_at" AS t2_r51, "projects"."disable_overriding_approvers_per_merge_request" AS t2_r52, "projects"."storage_version" AS t2_r53, "projects"."resolve_outdated_diff_discussions" AS t2_r54, "projects"."remote_mirror_available_overridden" AS t2_r55, "projects"."only_mirror_protected_branches" AS t2_r56, "projects"."pull_mirror_available_overridden" AS t2_r57, "projects"."jobs_cache_index" AS t2_r58, "projects"."external_authorization_classification_label" AS t2_r59, "projects"."mirror_overwrites_diverged_branches" AS t2_r60, "projects"."pages_https_only" AS t2_r61, "projects"."external_webhook_token" AS t2_r62, "projects"."packages_enabled" AS t2_r63, "projects"."merge_requests_author_approval" AS t2_r64, "projects"."pool_repository_id" AS t2_r65, "projects"."runners_token_encrypted" AS t2_r66, "projects"."bfg_object_map" AS t2_r67, "projects"."detected_repository_languages" AS t2_r68, "projects"."merge_requests_disable_committers_approval" AS t2_r69, "projects"."require_password_to_approve" AS t2_r70, "projects"."emails_disabled" AS t2_r71, "projects"."max_pages_size" AS t2_r72, "projects"."max_artifacts_size" AS t2_r73, "projects"."pull_mirror_branch_prefix" AS t2_r74, "projects"."remove_source_branch_after_merge" AS t2_r75, "projects"."marked_for_deletion_at" AS t2_r76, "projects"."marked_for_deletion_by_user_id" AS t2_r77, "projects"."autoclose_referenced_issues" AS t2_r78, "projects"."suggestion_commit_message" AS t2_r79, "projects"."project_namespace_id" AS t2_r80, "projects"."hidden" AS t2_r81, "project_features"."id" AS t3_r0, "project_features"."project_id" AS t3_r1, "project_features"."merge_requests_access_level" AS t3_r2, "project_features"."issues_access_level" AS t3_r3, "project_features"."wiki_access_level" AS t3_r4, "project_features"."snippets_access_level" AS t3_r5, "project_features"."builds_access_level" AS t3_r6, "project_features"."created_at" AS t3_r7, "project_features"."updated_at" AS t3_r8, "project_features"."repository_access_level" AS t3_r9, "project_features"."pages_access_level" AS t3_r10, "project_features"."forking_access_level" AS t3_r11, "project_features"."metrics_dashboard_access_level" AS t3_r12, "project_features"."requirements_access_level" AS t3_r13, "project_features"."operations_access_level" AS t3_r14, "project_features"."analytics_access_level" AS t3_r15, "project_features"."security_and_compliance_access_level" AS t3_r16, "project_features"."container_registry_access_level" AS t3_r17, "project_features"."package_registry_access_level" AS t3_r18, "project_features"."monitor_access_level" AS t3_r19, "project_features"."infrastructure_access_level" AS t3_r20, "project_features"."feature_flags_access_level" AS t3_r21, "project_features"."environments_access_level" AS t3_r22, "project_features"."releases_access_level" AS t3_r23, "project_import_data"."id" AS t4_r0, "project_import_data"."project_id" AS t4_r1, "project_import_data"."data" AS t4_r2, "project_import_data"."encrypted_credentials" AS t4_r3, "project_import_data"."encrypted_credentials_iv" AS t4_r4, "project_import_data"."encrypted_credentials_salt" AS t4_r5, "namespaces"."id" AS t5_r0, "namespaces"."name" AS t5_r1, "namespaces"."path" AS t5_r2, "namespaces"."owner_id" AS t5_r3, "namespaces"."created_at" AS t5_r4, "namespaces"."updated_at" AS t5_r5, "namespaces"."type" AS t5_r6, "namespaces"."description" AS t5_r7, "namespaces"."avatar" AS t5_r8, "namespaces"."membership_lock" AS t5_r9, "namespaces"."share_with_group_lock" AS t5_r10, "namespaces"."visibility_level" AS t5_r11, "namespaces"."request_access_enabled" AS t5_r12, "namespaces"."ldap_sync_status" AS t5_r13, "namespaces"."ldap_sync_error" AS t5_r14, "namespaces"."ldap_sync_last_update_at" AS t5_r15, "namespaces"."ldap_sync_last_successful_update_at" AS t5_r16, "namespaces"."ldap_sync_last_sync_at" AS t5_r17, "namespaces"."description_html" AS t5_r18, "namespaces"."lfs_enabled" AS t5_r19, "namespaces"."parent_id" AS t5_r20, "namespaces"."shared_runners_minutes_limit" AS t5_r21, "namespaces"."repository_size_limit" AS t5_r22, "namespaces"."require_two_factor_authentication" AS t5_r23, "namespaces"."two_factor_grace_period" AS t5_r24, "namespaces"."cached_markdown_version" AS t5_r25, "namespaces"."project_creation_level" AS t5_r26, "namespaces"."runners_token" AS t5_r27, "namespaces"."file_template_project_id" AS t5_r28, "namespaces"."saml_discovery_token" AS t5_r29, "namespaces"."runners_token_encrypted" AS t5_r30, "namespaces"."custom_project_templates_group_id" AS t5_r31, "namespaces"."auto_devops_enabled" AS t5_r32, "namespaces"."extra_shared_runners_minutes_limit" AS t5_r33, "namespaces"."last_ci_minutes_notification_at" AS t5_r34, "namespaces"."last_ci_minutes_usage_notification_level" AS t5_r35, "namespaces"."subgroup_creation_level" AS t5_r36, "namespaces"."emails_disabled" AS t5_r37, "namespaces"."max_pages_size" AS t5_r38, "namespaces"."max_artifacts_size" AS t5_r39, "namespaces"."mentions_disabled" AS t5_r40, "namespaces"."default_branch_protection" AS t5_r41, "namespaces"."unlock_membership_to_ldap" AS t5_r42, "namespaces"."max_personal_access_token_lifetime" AS t5_r43, "namespaces"."push_rule_id" AS t5_r44, "namespaces"."shared_runners_enabled" AS t5_r45, "namespaces"."allow_descendants_override_disabled_shared_runners" AS t5_r46, "namespaces"."traversal_ids" AS t5_r47 FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" LEFT OUTER JOIN "project_features" ON "project_features"."project_id" = "projects"."id" LEFT OUTER JOIN "project_import_data" ON "project_import_data"."project_id" = "projects"."id" LEFT OUTER JOIN "namespaces" ON "namespaces"."id" = "projects"."namespace_id" LEFT OUTER JOIN "users" ON "users"."id" = "events"."author_id" WHERE "events"."author_id" = ? AND (EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (?,?,?)) ORDER BY "events"."id" DESC LIMIT ? OFFSET ?"
SELECT "events"."project_id" AS t0_r0, "events"."author_id" AS t0_r1, "events"."target_id" AS t0_r2, "events"."created_at" AS t0_r3, "events"."updated_at" AS t0_r4, "events"."action" AS t0_r5, "events"."target_type" AS t0_r6, "events"."group_id" AS t0_r7, "events"."fingerprint" AS t0_r8, "events"."id" AS t0_r9, "users"."id" AS t1_r0, "users"."email" AS t1_r1, "users"."encrypted_password" AS t1_r2, "users"."reset_password_token" AS t1_r3, "users"."reset_password_sent_at" AS t1_r4, "users"."remember_created_at" AS t1_r5, "users"."sign_in_count" AS t1_r6, "users"."current_sign_in_at" AS t1_r7, "users"."last_sign_in_at" AS t1_r8, "users"."current_sign_in_ip" AS t1_r9, "users"."last_sign_in_ip" AS t1_r10, "users"."created_at" AS t1_r11, "users"."updated_at" AS t1_r12, "users"."name" AS t1_r13, "users"."admin" AS t1_r14, "users"."projects_limit" AS t1_r15, "users"."failed_attempts" AS t1_r16, "users"."locked_at" AS t1_r17, "users"."username" AS t1_r18, "users"."can_create_group" AS t1_r19, "users"."can_create_team" AS t1_r20, "users"."state" AS t1_r21, "users"."color_scheme_id" AS t1_r22, "users"."password_expires_at" AS t1_r23, "users"."created_by_id" AS t1_r24, "users"."last_credential_check_at" AS t1_r25, "users"."avatar" AS t1_r26, "users"."confirmation_token" AS t1_r27, "users"."confirmed_at" AS t1_r28, "users"."confirmation_sent_at" AS t1_r29, "users"."unconfirmed_email" AS t1_r30, "users"."hide_no_ssh_key" AS t1_r31, "users"."admin_email_unsubscribed_at" AS t1_r32, "users"."notification_email" AS t1_r33, "users"."hide_no_password" AS t1_r34, "users"."password_automatically_set" AS t1_r35, "users"."encrypted_otp_secret" AS t1_r36, "users"."encrypted_otp_secret_iv" AS t1_r37, "users"."encrypted_otp_secret_salt" AS t1_r38, "users"."otp_required_for_login" AS t1_r39, "users"."otp_backup_codes" AS t1_r40, "users"."public_email" AS t1_r41, "users"."dashboard" AS t1_r42, "users"."project_view" AS t1_r43, "users"."consumed_timestep" AS t1_r44, "users"."layout" AS t1_r45, "users"."hide_project_limit" AS t1_r46, "users"."note" AS t1_r47, "users"."unlock_token" AS t1_r48, "users"."otp_grace_period_started_at" AS t1_r49, "users"."external" AS t1_r50, "users"."incoming_email_token" AS t1_r51, "users"."auditor" AS t1_r52, "users"."require_two_factor_authentication_from_group" AS t1_r53, "users"."two_factor_grace_period" AS t1_r54, "users"."last_activity_on" AS t1_r55, "users"."notified_of_own_activity" AS t1_r56, "users"."preferred_language" AS t1_r57, "users"."email_opted_in" AS t1_r58, "users"."email_opted_in_ip" AS t1_r59, "users"."email_opted_in_source_id" AS t1_r60, "users"."email_opted_in_at" AS t1_r61, "users"."theme_id" AS t1_r62, "users"."accepted_term_id" AS t1_r63, "users"."feed_token" AS t1_r64, "users"."private_profile" AS t1_r65, "users"."roadmap_layout" AS t1_r66, "users"."include_private_contributions" AS t1_r67, "users"."commit_email" AS t1_r68, "users"."group_view" AS t1_r69, "users"."managing_group_id" AS t1_r70, "users"."first_name" AS t1_r71, "users"."last_name" AS t1_r72, "users"."static_object_token" AS t1_r73, "users"."role" AS t1_r74, "users"."user_type" AS t1_r75, "users"."static_object_token_encrypted" AS t1_r76, "users"."otp_secret_expires_at" AS t1_r77, "users"."onboarding_in_progress" AS t1_r78, "projects"."id" AS t2_r0, "projects"."name" AS t2_r1, "projects"."path" AS t2_r2, "projects"."description" AS t2_r3, "projects"."created_at" AS t2_r4, "projects"."updated_at" AS t2_r5, "projects"."creator_id" AS t2_r6, "projects"."namespace_id" AS t2_r7, "projects"."last_activity_at" AS t2_r8, "projects"."import_url" AS t2_r9, "projects"."visibility_level" AS t2_r10, "projects"."archived" AS t2_r11, "projects"."avatar" AS t2_r12, "projects"."merge_requests_template" AS t2_r13, "projects"."star_count" AS t2_r14, "projects"."merge_requests_rebase_enabled" AS t2_r15, "projects"."import_type" AS t2_r16, "projects"."import_source" AS t2_r17, "projects"."approvals_before_merge" AS t2_r18, "projects"."reset_approvals_on_push" AS t2_r19, "projects"."merge_requests_ff_only_enabled" AS t2_r20, "projects"."issues_template" AS t2_r21, "projects"."mirror" AS t2_r22, "projects"."mirror_last_update_at" AS t2_r23, "projects"."mirror_last_successful_update_at" AS t2_r24, "projects"."mirror_user_id" AS t2_r25, "projects"."shared_runners_enabled" AS t2_r26, "projects"."runners_token" AS t2_r27, "projects"."build_allow_git_fetch" AS t2_r28, "projects"."build_timeout" AS t2_r29, "projects"."mirror_trigger_builds" AS t2_r30, "projects"."pending_delete" AS t2_r31, "projects"."public_builds" AS t2_r32, "projects"."last_repository_check_failed" AS t2_r33, "projects"."last_repository_check_at" AS t2_r34, "projects"."only_allow_merge_if_pipeline_succeeds" AS t2_r35, "projects"."has_external_issue_tracker" AS t2_r36, "projects"."repository_storage" AS t2_r37, "projects"."repository_read_only" AS t2_r38, "projects"."request_access_enabled" AS t2_r39, "projects"."has_external_wiki" AS t2_r40, "projects"."ci_config_path" AS t2_r41, "projects"."lfs_enabled" AS t2_r42, "projects"."description_html" AS t2_r43, "projects"."only_allow_merge_if_all_discussions_are_resolved" AS t2_r44, "projects"."repository_size_limit" AS t2_r45, "projects"."printing_merge_request_link_enabled" AS t2_r46, "projects"."auto_cancel_pending_pipelines" AS t2_r47, "projects"."service_desk_enabled" AS t2_r48, "projects"."cached_markdown_version" AS t2_r49, "projects"."delete_error" AS t2_r50, "projects"."last_repository_updated_at" AS t2_r51, "projects"."disable_overriding_approvers_per_merge_request" AS t2_r52, "projects"."storage_version" AS t2_r53, "projects"."resolve_outdated_diff_discussions" AS t2_r54, "projects"."remote_mirror_available_overridden" AS t2_r55, "projects"."only_mirror_protected_branches" AS t2_r56, "projects"."pull_mirror_available_overridden" AS t2_r57, "projects"."jobs_cache_index" AS t2_r58, "projects"."external_authorization_classification_label" AS t2_r59, "projects"."mirror_overwrites_diverged_branches" AS t2_r60, "projects"."pages_https_only" AS t2_r61, "projects"."external_webhook_token" AS t2_r62, "projects"."packages_enabled" AS t2_r63, "projects"."merge_requests_author_approval" AS t2_r64, "projects"."pool_repository_id" AS t2_r65, "projects"."runners_token_encrypted" AS t2_r66, "projects"."bfg_object_map" AS t2_r67, "projects"."detected_repository_languages" AS t2_r68, "projects"."merge_requests_disable_committers_approval" AS t2_r69, "projects"."require_password_to_approve" AS t2_r70, "projects"."emails_disabled" AS t2_r71, "projects"."max_pages_size" AS t2_r72, "projects"."max_artifacts_size" AS t2_r73, "projects"."pull_mirror_branch_prefix" AS t2_r74, "projects"."remove_source_branch_after_merge" AS t2_r75, "projects"."marked_for_deletion_at" AS t2_r76, "projects"."marked_for_deletion_by_user_id" AS t2_r77, "projects"."autoclose_referenced_issues" AS t2_r78, "projects"."suggestion_commit_message" AS t2_r79, "projects"."project_namespace_id" AS t2_r80, "projects"."hidden" AS t2_r81, "project_features"."id" AS t3_r0, "project_features"."project_id" AS t3_r1, "project_features"."merge_requests_access_level" AS t3_r2, "project_features"."issues_access_level" AS t3_r3, "project_features"."wiki_access_level" AS t3_r4, "project_features"."snippets_access_level" AS t3_r5, "project_features"."builds_access_level" AS t3_r6, "project_features"."created_at" AS t3_r7, "project_features"."updated_at" AS t3_r8, "project_features"."repository_access_level" AS t3_r9, "project_features"."pages_access_level" AS t3_r10, "project_features"."forking_access_level" AS t3_r11, "project_features"."metrics_dashboard_access_level" AS t3_r12, "project_features"."requirements_access_level" AS t3_r13, "project_features"."operations_access_level" AS t3_r14, "project_features"."analytics_access_level" AS t3_r15, "project_features"."security_and_compliance_access_level" AS t3_r16, "project_features"."container_registry_access_level" AS t3_r17, "project_features"."package_registry_access_level" AS t3_r18, "project_features"."monitor_access_level" AS t3_r19, "project_features"."infrastructure_access_level" AS t3_r20, "project_features"."feature_flags_access_level" AS t3_r21, "project_features"."environments_access_level" AS t3_r22, "project_features"."releases_access_level" AS t3_r23, "project_import_data"."id" AS t4_r0, "project_import_data"."project_id" AS t4_r1, "project_import_data"."data" AS t4_r2, "project_import_data"."encrypted_credentials" AS t4_r3, "project_import_data"."encrypted_credentials_iv" AS t4_r4, "project_import_data"."encrypted_credentials_salt" AS t4_r5, "namespaces"."id" AS t5_r0, "namespaces"."name" AS t5_r1, "namespaces"."path" AS t5_r2, "namespaces"."owner_id" AS t5_r3, "namespaces"."created_at" AS t5_r4, "namespaces"."updated_at" AS t5_r5, "namespaces"."type" AS t5_r6, "namespaces"."description" AS t5_r7, "namespaces"."avatar" AS t5_r8, "namespaces"."membership_lock" AS t5_r9, "namespaces"."share_with_group_lock" AS t5_r10, "namespaces"."visibility_level" AS t5_r11, "namespaces"."request_access_enabled" AS t5_r12, "namespaces"."ldap_sync_status" AS t5_r13, "namespaces"."ldap_sync_error" AS t5_r14, "namespaces"."ldap_sync_last_update_at" AS t5_r15, "namespaces"."ldap_sync_last_successful_update_at" AS t5_r16, "namespaces"."ldap_sync_last_sync_at" AS t5_r17, "namespaces"."description_html" AS t5_r18, "namespaces"."lfs_enabled" AS t5_r19, "namespaces"."parent_id" AS t5_r20, "namespaces"."shared_runners_minutes_limit" AS t5_r21, "namespaces"."repository_size_limit" AS t5_r22, "namespaces"."require_two_factor_authentication" AS t5_r23, "namespaces"."two_factor_grace_period" AS t5_r24, "namespaces"."cached_markdown_version" AS t5_r25, "namespaces"."project_creation_level" AS t5_r26, "namespaces"."runners_token" AS t5_r27, "namespaces"."file_template_project_id" AS t5_r28, "namespaces"."saml_discovery_token" AS t5_r29, "namespaces"."runners_token_encrypted" AS t5_r30, "namespaces"."custom_project_templates_group_id" AS t5_r31, "namespaces"."auto_devops_enabled" AS t5_r32, "namespaces"."extra_shared_runners_minutes_limit" AS t5_r33, "namespaces"."last_ci_minutes_notification_at" AS t5_r34, "namespaces"."last_ci_minutes_usage_notification_level" AS t5_r35, "namespaces"."subgroup_creation_level" AS t5_r36, "namespaces"."emails_disabled" AS t5_r37, "namespaces"."max_pages_size" AS t5_r38, "namespaces"."max_artifacts_size" AS t5_r39, "namespaces"."mentions_disabled" AS t5_r40, "namespaces"."default_branch_protection" AS t5_r41, "namespaces"."unlock_membership_to_ldap" AS t5_r42, "namespaces"."max_personal_access_token_lifetime" AS t5_r43, "namespaces"."push_rule_id" AS t5_r44, "namespaces"."shared_runners_enabled" AS t5_r45, "namespaces"."allow_descendants_override_disabled_shared_runners" AS t5_r46, "namespaces"."traversal_ids" AS t5_r47 FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" LEFT OUTER JOIN "project_features" ON "project_features"."project_id" = "projects"."id" LEFT OUTER JOIN "project_import_data" ON "project_import_data"."project_id" = "projects"."id" LEFT OUTER JOIN "namespaces" ON "namespaces"."id" = "projects"."namespace_id" LEFT OUTER JOIN "users" ON "users"."id" = "events"."author_id" WHERE "events"."project_id" = ? AND "projects"."visibility_level" = ? ORDER BY "events"."id" DESC LIMIT ? OFFSET ?"
SELECT "events"."project_id" AS t0_r0, "events"."author_id" AS t0_r1, "events"."target_id" AS t0_r2, "events"."created_at" AS t0_r3, "events"."updated_at" AS t0_r4, "events"."action" AS t0_r5, "events"."target_type" AS t0_r6, "events"."group_id" AS t0_r7, "events"."fingerprint" AS t0_r8, "events"."id" AS t0_r9, "users"."id" AS t1_r0, "users"."email" AS t1_r1, "users"."encrypted_password" AS t1_r2, "users"."reset_password_token" AS t1_r3, "users"."reset_password_sent_at" AS t1_r4, "users"."remember_created_at" AS t1_r5, "users"."sign_in_count" AS t1_r6, "users"."current_sign_in_at" AS t1_r7, "users"."last_sign_in_at" AS t1_r8, "users"."current_sign_in_ip" AS t1_r9, "users"."last_sign_in_ip" AS t1_r10, "users"."created_at" AS t1_r11, "users"."updated_at" AS t1_r12, "users"."name" AS t1_r13, "users"."admin" AS t1_r14, "users"."projects_limit" AS t1_r15, "users"."failed_attempts" AS t1_r16, "users"."locked_at" AS t1_r17, "users"."username" AS t1_r18, "users"."can_create_group" AS t1_r19, "users"."can_create_team" AS t1_r20, "users"."state" AS t1_r21, "users"."color_scheme_id" AS t1_r22, "users"."password_expires_at" AS t1_r23, "users"."created_by_id" AS t1_r24, "users"."last_credential_check_at" AS t1_r25, "users"."avatar" AS t1_r26, "users"."confirmation_token" AS t1_r27, "users"."confirmed_at" AS t1_r28, "users"."confirmation_sent_at" AS t1_r29, "users"."unconfirmed_email" AS t1_r30, "users"."hide_no_ssh_key" AS t1_r31, "users"."admin_email_unsubscribed_at" AS t1_r32, "users"."notification_email" AS t1_r33, "users"."hide_no_password" AS t1_r34, "users"."password_automatically_set" AS t1_r35, "users"."encrypted_otp_secret" AS t1_r36, "users"."encrypted_otp_secret_iv" AS t1_r37, "users"."encrypted_otp_secret_salt" AS t1_r38, "users"."otp_required_for_login" AS t1_r39, "users"."otp_backup_codes" AS t1_r40, "users"."public_email" AS t1_r41, "users"."dashboard" AS t1_r42, "users"."project_view" AS t1_r43, "users"."consumed_timestep" AS t1_r44, "users"."layout" AS t1_r45, "users"."hide_project_limit" AS t1_r46, "users"."note" AS t1_r47, "users"."unlock_token" AS t1_r48, "users"."otp_grace_period_started_at" AS t1_r49, "users"."external" AS t1_r50, "users"."incoming_email_token" AS t1_r51, "users"."auditor" AS t1_r52, "users"."require_two_factor_authentication_from_group" AS t1_r53, "users"."two_factor_grace_period" AS t1_r54, "users"."last_activity_on" AS t1_r55, "users"."notified_of_own_activity" AS t1_r56, "users"."preferred_language" AS t1_r57, "users"."email_opted_in" AS t1_r58, "users"."email_opted_in_ip" AS t1_r59, "users"."email_opted_in_source_id" AS t1_r60, "users"."email_opted_in_at" AS t1_r61, "users"."theme_id" AS t1_r62, "users"."accepted_term_id" AS t1_r63, "users"."feed_token" AS t1_r64, "users"."private_profile" AS t1_r65, "users"."roadmap_layout" AS t1_r66, "users"."include_private_contributions" AS t1_r67, "users"."commit_email" AS t1_r68, "users"."group_view" AS t1_r69, "users"."managing_group_id" AS t1_r70, "users"."first_name" AS t1_r71, "users"."last_name" AS t1_r72, "users"."static_object_token" AS t1_r73, "users"."role" AS t1_r74, "users"."user_type" AS t1_r75, "users"."static_object_token_encrypted" AS t1_r76, "users"."otp_secret_expires_at" AS t1_r77, "users"."onboarding_in_progress" AS t1_r78, "projects"."id" AS t2_r0, "projects"."name" AS t2_r1, "projects"."path" AS t2_r2, "projects"."description" AS t2_r3, "projects"."created_at" AS t2_r4, "projects"."updated_at" AS t2_r5, "projects"."creator_id" AS t2_r6, "projects"."namespace_id" AS t2_r7, "projects"."last_activity_at" AS t2_r8, "projects"."import_url" AS t2_r9, "projects"."visibility_level" AS t2_r10, "projects"."archived" AS t2_r11, "projects"."avatar" AS t2_r12, "projects"."merge_requests_template" AS t2_r13, "projects"."star_count" AS t2_r14, "projects"."merge_requests_rebase_enabled" AS t2_r15, "projects"."import_type" AS t2_r16, "projects"."import_source" AS t2_r17, "projects"."approvals_before_merge" AS t2_r18, "projects"."reset_approvals_on_push" AS t2_r19, "projects"."merge_requests_ff_only_enabled" AS t2_r20, "projects"."issues_template" AS t2_r21, "projects"."mirror" AS t2_r22, "projects"."mirror_last_update_at" AS t2_r23, "projects"."mirror_last_successful_update_at" AS t2_r24, "projects"."mirror_user_id" AS t2_r25, "projects"."shared_runners_enabled" AS t2_r26, "projects"."runners_token" AS t2_r27, "projects"."build_allow_git_fetch" AS t2_r28, "projects"."build_timeout" AS t2_r29, "projects"."mirror_trigger_builds" AS t2_r30, "projects"."pending_delete" AS t2_r31, "projects"."public_builds" AS t2_r32, "projects"."last_repository_check_failed" AS t2_r33, "projects"."last_repository_check_at" AS t2_r34, "projects"."only_allow_merge_if_pipeline_succeeds" AS t2_r35, "projects"."has_external_issue_tracker" AS t2_r36, "projects"."repository_storage" AS t2_r37, "projects"."repository_read_only" AS t2_r38, "projects"."request_access_enabled" AS t2_r39, "projects"."has_external_wiki" AS t2_r40, "projects"."ci_config_path" AS t2_r41, "projects"."lfs_enabled" AS t2_r42, "projects"."description_html" AS t2_r43, "projects"."only_allow_merge_if_all_discussions_are_resolved" AS t2_r44, "projects"."repository_size_limit" AS t2_r45, "projects"."printing_merge_request_link_enabled" AS t2_r46, "projects"."auto_cancel_pending_pipelines" AS t2_r47, "projects"."service_desk_enabled" AS t2_r48, "projects"."cached_markdown_version" AS t2_r49, "projects"."delete_error" AS t2_r50, "projects"."last_repository_updated_at" AS t2_r51, "projects"."disable_overriding_approvers_per_merge_request" AS t2_r52, "projects"."storage_version" AS t2_r53, "projects"."resolve_outdated_diff_discussions" AS t2_r54, "projects"."remote_mirror_available_overridden" AS t2_r55, "projects"."only_mirror_protected_branches" AS t2_r56, "projects"."pull_mirror_available_overridden" AS t2_r57, "projects"."jobs_cache_index" AS t2_r58, "projects"."external_authorization_classification_label" AS t2_r59, "projects"."mirror_overwrites_diverged_branches" AS t2_r60, "projects"."pages_https_only" AS t2_r61, "projects"."external_webhook_token" AS t2_r62, "projects"."packages_enabled" AS t2_r63, "projects"."merge_requests_author_approval" AS t2_r64, "projects"."pool_repository_id" AS t2_r65, "projects"."runners_token_encrypted" AS t2_r66, "projects"."bfg_object_map" AS t2_r67, "projects"."detected_repository_languages" AS t2_r68, "projects"."merge_requests_disable_committers_approval" AS t2_r69, "projects"."require_password_to_approve" AS t2_r70, "projects"."emails_disabled" AS t2_r71, "projects"."max_pages_size" AS t2_r72, "projects"."max_artifacts_size" AS t2_r73, "projects"."pull_mirror_branch_prefix" AS t2_r74, "projects"."remove_source_branch_after_merge" AS t2_r75, "projects"."marked_for_deletion_at" AS t2_r76, "projects"."marked_for_deletion_by_user_id" AS t2_r77, "projects"."autoclose_referenced_issues" AS t2_r78, "projects"."suggestion_commit_message" AS t2_r79, "projects"."project_namespace_id" AS t2_r80, "projects"."hidden" AS t2_r81, "project_features"."id" AS t3_r0, "project_features"."project_id" AS t3_r1, "project_features"."merge_requests_access_level" AS t3_r2, "project_features"."issues_access_level" AS t3_r3, "project_features"."wiki_access_level" AS t3_r4, "project_features"."snippets_access_level" AS t3_r5, "project_features"."builds_access_level" AS t3_r6, "project_features"."created_at" AS t3_r7, "project_features"."updated_at" AS t3_r8, "project_features"."repository_access_level" AS t3_r9, "project_features"."pages_access_level" AS t3_r10, "project_features"."forking_access_level" AS t3_r11, "project_features"."metrics_dashboard_access_level" AS t3_r12, "project_features"."requirements_access_level" AS t3_r13, "project_features"."operations_access_level" AS t3_r14, "project_features"."analytics_access_level" AS t3_r15, "project_features"."security_and_compliance_access_level" AS t3_r16, "project_features"."container_registry_access_level" AS t3_r17, "project_features"."package_registry_access_level" AS t3_r18, "project_features"."monitor_access_level" AS t3_r19, "project_features"."infrastructure_access_level" AS t3_r20, "project_features"."feature_flags_access_level" AS t3_r21, "project_features"."environments_access_level" AS t3_r22, "project_features"."releases_access_level" AS t3_r23, "project_import_data"."id" AS t4_r0, "project_import_data"."project_id" AS t4_r1, "project_import_data"."data" AS t4_r2, "project_import_data"."encrypted_credentials" AS t4_r3, "project_import_data"."encrypted_credentials_iv" AS t4_r4, "project_import_data"."encrypted_credentials_salt" AS t4_r5, "namespaces"."id" AS t5_r0, "namespaces"."name" AS t5_r1, "namespaces"."path" AS t5_r2, "namespaces"."owner_id" AS t5_r3, "namespaces"."created_at" AS t5_r4, "namespaces"."updated_at" AS t5_r5, "namespaces"."type" AS t5_r6, "namespaces"."description" AS t5_r7, "namespaces"."avatar" AS t5_r8, "namespaces"."membership_lock" AS t5_r9, "namespaces"."share_with_group_lock" AS t5_r10, "namespaces"."visibility_level" AS t5_r11, "namespaces"."request_access_enabled" AS t5_r12, "namespaces"."ldap_sync_status" AS t5_r13, "namespaces"."ldap_sync_error" AS t5_r14, "namespaces"."ldap_sync_last_update_at" AS t5_r15, "namespaces"."ldap_sync_last_successful_update_at" AS t5_r16, "namespaces"."ldap_sync_last_sync_at" AS t5_r17, "namespaces"."description_html" AS t5_r18, "namespaces"."lfs_enabled" AS t5_r19, "namespaces"."parent_id" AS t5_r20, "namespaces"."shared_runners_minutes_limit" AS t5_r21, "namespaces"."repository_size_limit" AS t5_r22, "namespaces"."require_two_factor_authentication" AS t5_r23, "namespaces"."two_factor_grace_period" AS t5_r24, "namespaces"."cached_markdown_version" AS t5_r25, "namespaces"."project_creation_level" AS t5_r26, "namespaces"."runners_token" AS t5_r27, "namespaces"."file_template_project_id" AS t5_r28, "namespaces"."saml_discovery_token" AS t5_r29, "namespaces"."runners_token_encrypted" AS t5_r30, "namespaces"."custom_project_templates_group_id" AS t5_r31, "namespaces"."auto_devops_enabled" AS t5_r32, "namespaces"."extra_shared_runners_minutes_limit" AS t5_r33, "namespaces"."last_ci_minutes_notification_at" AS t5_r34, "namespaces"."last_ci_minutes_usage_notification_level" AS t5_r35, "namespaces"."subgroup_creation_level" AS t5_r36, "namespaces"."emails_disabled" AS t5_r37, "namespaces"."max_pages_size" AS t5_r38, "namespaces"."max_artifacts_size" AS t5_r39, "namespaces"."mentions_disabled" AS t5_r40, "namespaces"."default_branch_protection" AS t5_r41, "namespaces"."unlock_membership_to_ldap" AS t5_r42, "namespaces"."max_personal_access_token_lifetime" AS t5_r43, "namespaces"."push_rule_id" AS t5_r44, "namespaces"."shared_runners_enabled" AS t5_r45, "namespaces"."allow_descendants_override_disabled_shared_runners" AS t5_r46, "namespaces"."traversal_ids" AS t5_r47 FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" LEFT OUTER JOIN "project_features" ON "project_features"."project_id" = "projects"."id" LEFT OUTER JOIN "project_import_data" ON "project_import_data"."project_id" = "projects"."id" LEFT OUTER JOIN "namespaces" ON "namespaces"."id" = "projects"."namespace_id" LEFT OUTER JOIN "users" ON "users"."id" = "events"."author_id" WHERE "events"."project_id" = ? AND (EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (?,?,?)) AND "events"."action" = ? AND "events"."target_type" = ? AND (events.created_at < ?) AND (events.created_at > ?) ORDER BY "events"."id" DESC LIMIT ? OFFSET ?"
SELECT "events"."project_id" AS t0_r0, "events"."author_id" AS t0_r1, "events"."target_id" AS t0_r2, "events"."created_at" AS t0_r3, "events"."updated_at" AS t0_r4, "events"."action" AS t0_r5, "events"."target_type" AS t0_r6, "events"."group_id" AS t0_r7, "events"."fingerprint" AS t0_r8, "events"."id" AS t0_r9, "users"."id" AS t1_r0, "users"."email" AS t1_r1, "users"."encrypted_password" AS t1_r2, "users"."reset_password_token" AS t1_r3, "users"."reset_password_sent_at" AS t1_r4, "users"."remember_created_at" AS t1_r5, "users"."sign_in_count" AS t1_r6, "users"."current_sign_in_at" AS t1_r7, "users"."last_sign_in_at" AS t1_r8, "users"."current_sign_in_ip" AS t1_r9, "users"."last_sign_in_ip" AS t1_r10, "users"."created_at" AS t1_r11, "users"."updated_at" AS t1_r12, "users"."name" AS t1_r13, "users"."admin" AS t1_r14, "users"."projects_limit" AS t1_r15, "users"."failed_attempts" AS t1_r16, "users"."locked_at" AS t1_r17, "users"."username" AS t1_r18, "users"."can_create_group" AS t1_r19, "users"."can_create_team" AS t1_r20, "users"."state" AS t1_r21, "users"."color_scheme_id" AS t1_r22, "users"."password_expires_at" AS t1_r23, "users"."created_by_id" AS t1_r24, "users"."last_credential_check_at" AS t1_r25, "users"."avatar" AS t1_r26, "users"."confirmation_token" AS t1_r27, "users"."confirmed_at" AS t1_r28, "users"."confirmation_sent_at" AS t1_r29, "users"."unconfirmed_email" AS t1_r30, "users"."hide_no_ssh_key" AS t1_r31, "users"."admin_email_unsubscribed_at" AS t1_r32, "users"."notification_email" AS t1_r33, "users"."hide_no_password" AS t1_r34, "users"."password_automatically_set" AS t1_r35, "users"."encrypted_otp_secret" AS t1_r36, "users"."encrypted_otp_secret_iv" AS t1_r37, "users"."encrypted_otp_secret_salt" AS t1_r38, "users"."otp_required_for_login" AS t1_r39, "users"."otp_backup_codes" AS t1_r40, "users"."public_email" AS t1_r41, "users"."dashboard" AS t1_r42, "users"."project_view" AS t1_r43, "users"."consumed_timestep" AS t1_r44, "users"."layout" AS t1_r45, "users"."hide_project_limit" AS t1_r46, "users"."note" AS t1_r47, "users"."unlock_token" AS t1_r48, "users"."otp_grace_period_started_at" AS t1_r49, "users"."external" AS t1_r50, "users"."incoming_email_token" AS t1_r51, "users"."auditor" AS t1_r52, "users"."require_two_factor_authentication_from_group" AS t1_r53, "users"."two_factor_grace_period" AS t1_r54, "users"."last_activity_on" AS t1_r55, "users"."notified_of_own_activity" AS t1_r56, "users"."preferred_language" AS t1_r57, "users"."email_opted_in" AS t1_r58, "users"."email_opted_in_ip" AS t1_r59, "users"."email_opted_in_source_id" AS t1_r60, "users"."email_opted_in_at" AS t1_r61, "users"."theme_id" AS t1_r62, "users"."accepted_term_id" AS t1_r63, "users"."feed_token" AS t1_r64, "users"."private_profile" AS t1_r65, "users"."roadmap_layout" AS t1_r66, "users"."include_private_contributions" AS t1_r67, "users"."commit_email" AS t1_r68, "users"."group_view" AS t1_r69, "users"."managing_group_id" AS t1_r70, "users"."first_name" AS t1_r71, "users"."last_name" AS t1_r72, "users"."static_object_token" AS t1_r73, "users"."role" AS t1_r74, "users"."user_type" AS t1_r75, "users"."static_object_token_encrypted" AS t1_r76, "users"."otp_secret_expires_at" AS t1_r77, "users"."onboarding_in_progress" AS t1_r78, "projects"."id" AS t2_r0, "projects"."name" AS t2_r1, "projects"."path" AS t2_r2, "projects"."description" AS t2_r3, "projects"."created_at" AS t2_r4, "projects"."updated_at" AS t2_r5, "projects"."creator_id" AS t2_r6, "projects"."namespace_id" AS t2_r7, "projects"."last_activity_at" AS t2_r8, "projects"."import_url" AS t2_r9, "projects"."visibility_level" AS t2_r10, "projects"."archived" AS t2_r11, "projects"."avatar" AS t2_r12, "projects"."merge_requests_template" AS t2_r13, "projects"."star_count" AS t2_r14, "projects"."merge_requests_rebase_enabled" AS t2_r15, "projects"."import_type" AS t2_r16, "projects"."import_source" AS t2_r17, "projects"."approvals_before_merge" AS t2_r18, "projects"."reset_approvals_on_push" AS t2_r19, "projects"."merge_requests_ff_only_enabled" AS t2_r20, "projects"."issues_template" AS t2_r21, "projects"."mirror" AS t2_r22, "projects"."mirror_last_update_at" AS t2_r23, "projects"."mirror_last_successful_update_at" AS t2_r24, "projects"."mirror_user_id" AS t2_r25, "projects"."shared_runners_enabled" AS t2_r26, "projects"."runners_token" AS t2_r27, "projects"."build_allow_git_fetch" AS t2_r28, "projects"."build_timeout" AS t2_r29, "projects"."mirror_trigger_builds" AS t2_r30, "projects"."pending_delete" AS t2_r31, "projects"."public_builds" AS t2_r32, "projects"."last_repository_check_failed" AS t2_r33, "projects"."last_repository_check_at" AS t2_r34, "projects"."only_allow_merge_if_pipeline_succeeds" AS t2_r35, "projects"."has_external_issue_tracker" AS t2_r36, "projects"."repository_storage" AS t2_r37, "projects"."repository_read_only" AS t2_r38, "projects"."request_access_enabled" AS t2_r39, "projects"."has_external_wiki" AS t2_r40, "projects"."ci_config_path" AS t2_r41, "projects"."lfs_enabled" AS t2_r42, "projects"."description_html" AS t2_r43, "projects"."only_allow_merge_if_all_discussions_are_resolved" AS t2_r44, "projects"."repository_size_limit" AS t2_r45, "projects"."printing_merge_request_link_enabled" AS t2_r46, "projects"."auto_cancel_pending_pipelines" AS t2_r47, "projects"."service_desk_enabled" AS t2_r48, "projects"."cached_markdown_version" AS t2_r49, "projects"."delete_error" AS t2_r50, "projects"."last_repository_updated_at" AS t2_r51, "projects"."disable_overriding_approvers_per_merge_request" AS t2_r52, "projects"."storage_version" AS t2_r53, "projects"."resolve_outdated_diff_discussions" AS t2_r54, "projects"."remote_mirror_available_overridden" AS t2_r55, "projects"."only_mirror_protected_branches" AS t2_r56, "projects"."pull_mirror_available_overridden" AS t2_r57, "projects"."jobs_cache_index" AS t2_r58, "projects"."external_authorization_classification_label" AS t2_r59, "projects"."mirror_overwrites_diverged_branches" AS t2_r60, "projects"."pages_https_only" AS t2_r61, "projects"."external_webhook_token" AS t2_r62, "projects"."packages_enabled" AS t2_r63, "projects"."merge_requests_author_approval" AS t2_r64, "projects"."pool_repository_id" AS t2_r65, "projects"."runners_token_encrypted" AS t2_r66, "projects"."bfg_object_map" AS t2_r67, "projects"."detected_repository_languages" AS t2_r68, "projects"."merge_requests_disable_committers_approval" AS t2_r69, "projects"."require_password_to_approve" AS t2_r70, "projects"."emails_disabled" AS t2_r71, "projects"."max_pages_size" AS t2_r72, "projects"."max_artifacts_size" AS t2_r73, "projects"."pull_mirror_branch_prefix" AS t2_r74, "projects"."remove_source_branch_after_merge" AS t2_r75, "projects"."marked_for_deletion_at" AS t2_r76, "projects"."marked_for_deletion_by_user_id" AS t2_r77, "projects"."autoclose_referenced_issues" AS t2_r78, "projects"."suggestion_commit_message" AS t2_r79, "projects"."project_namespace_id" AS t2_r80, "projects"."hidden" AS t2_r81, "project_features"."id" AS t3_r0, "project_features"."project_id" AS t3_r1, "project_features"."merge_requests_access_level" AS t3_r2, "project_features"."issues_access_level" AS t3_r3, "project_features"."wiki_access_level" AS t3_r4, "project_features"."snippets_access_level" AS t3_r5, "project_features"."builds_access_level" AS t3_r6, "project_features"."created_at" AS t3_r7, "project_features"."updated_at" AS t3_r8, "project_features"."repository_access_level" AS t3_r9, "project_features"."pages_access_level" AS t3_r10, "project_features"."forking_access_level" AS t3_r11, "project_features"."metrics_dashboard_access_level" AS t3_r12, "project_features"."requirements_access_level" AS t3_r13, "project_features"."operations_access_level" AS t3_r14, "project_features"."analytics_access_level" AS t3_r15, "project_features"."security_and_compliance_access_level" AS t3_r16, "project_features"."container_registry_access_level" AS t3_r17, "project_features"."package_registry_access_level" AS t3_r18, "project_features"."monitor_access_level" AS t3_r19, "project_features"."infrastructure_access_level" AS t3_r20, "project_features"."feature_flags_access_level" AS t3_r21, "project_features"."environments_access_level" AS t3_r22, "project_features"."releases_access_level" AS t3_r23, "project_import_data"."id" AS t4_r0, "project_import_data"."project_id" AS t4_r1, "project_import_data"."data" AS t4_r2, "project_import_data"."encrypted_credentials" AS t4_r3, "project_import_data"."encrypted_credentials_iv" AS t4_r4, "project_import_data"."encrypted_credentials_salt" AS t4_r5, "namespaces"."id" AS t5_r0, "namespaces"."name" AS t5_r1, "namespaces"."path" AS t5_r2, "namespaces"."owner_id" AS t5_r3, "namespaces"."created_at" AS t5_r4, "namespaces"."updated_at" AS t5_r5, "namespaces"."type" AS t5_r6, "namespaces"."description" AS t5_r7, "namespaces"."avatar" AS t5_r8, "namespaces"."membership_lock" AS t5_r9, "namespaces"."share_with_group_lock" AS t5_r10, "namespaces"."visibility_level" AS t5_r11, "namespaces"."request_access_enabled" AS t5_r12, "namespaces"."ldap_sync_status" AS t5_r13, "namespaces"."ldap_sync_error" AS t5_r14, "namespaces"."ldap_sync_last_update_at" AS t5_r15, "namespaces"."ldap_sync_last_successful_update_at" AS t5_r16, "namespaces"."ldap_sync_last_sync_at" AS t5_r17, "namespaces"."description_html" AS t5_r18, "namespaces"."lfs_enabled" AS t5_r19, "namespaces"."parent_id" AS t5_r20, "namespaces"."shared_runners_minutes_limit" AS t5_r21, "namespaces"."repository_size_limit" AS t5_r22, "namespaces"."require_two_factor_authentication" AS t5_r23, "namespaces"."two_factor_grace_period" AS t5_r24, "namespaces"."cached_markdown_version" AS t5_r25, "namespaces"."project_creation_level" AS t5_r26, "namespaces"."runners_token" AS t5_r27, "namespaces"."file_template_project_id" AS t5_r28, "namespaces"."saml_discovery_token" AS t5_r29, "namespaces"."runners_token_encrypted" AS t5_r30, "namespaces"."custom_project_templates_group_id" AS t5_r31, "namespaces"."auto_devops_enabled" AS t5_r32, "namespaces"."extra_shared_runners_minutes_limit" AS t5_r33, "namespaces"."last_ci_minutes_notification_at" AS t5_r34, "namespaces"."last_ci_minutes_usage_notification_level" AS t5_r35, "namespaces"."subgroup_creation_level" AS t5_r36, "namespaces"."emails_disabled" AS t5_r37, "namespaces"."max_pages_size" AS t5_r38, "namespaces"."max_artifacts_size" AS t5_r39, "namespaces"."mentions_disabled" AS t5_r40, "namespaces"."default_branch_protection" AS t5_r41, "namespaces"."unlock_membership_to_ldap" AS t5_r42, "namespaces"."max_personal_access_token_lifetime" AS t5_r43, "namespaces"."push_rule_id" AS t5_r44, "namespaces"."shared_runners_enabled" AS t5_r45, "namespaces"."allow_descendants_override_disabled_shared_runners" AS t5_r46, "namespaces"."traversal_ids" AS t5_r47 FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" LEFT OUTER JOIN "project_features" ON "project_features"."project_id" = "projects"."id" LEFT OUTER JOIN "project_import_data" ON "project_import_data"."project_id" = "projects"."id" LEFT OUTER JOIN "namespaces" ON "namespaces"."id" = "projects"."namespace_id" LEFT OUTER JOIN "users" ON "users"."id" = "events"."author_id" WHERE "events"."project_id" = ? AND (EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (?,?,?)) AND "events"."target_type" = ? ORDER BY "events"."id" DESC LIMIT ? OFFSET ?"
SELECT "events"."project_id" AS t0_r0, "events"."author_id" AS t0_r1, "events"."target_id" AS t0_r2, "events"."created_at" AS t0_r3, "events"."updated_at" AS t0_r4, "events"."action" AS t0_r5, "events"."target_type" AS t0_r6, "events"."group_id" AS t0_r7, "events"."fingerprint" AS t0_r8, "events"."id" AS t0_r9, "users"."id" AS t1_r0, "users"."email" AS t1_r1, "users"."encrypted_password" AS t1_r2, "users"."reset_password_token" AS t1_r3, "users"."reset_password_sent_at" AS t1_r4, "users"."remember_created_at" AS t1_r5, "users"."sign_in_count" AS t1_r6, "users"."current_sign_in_at" AS t1_r7, "users"."last_sign_in_at" AS t1_r8, "users"."current_sign_in_ip" AS t1_r9, "users"."last_sign_in_ip" AS t1_r10, "users"."created_at" AS t1_r11, "users"."updated_at" AS t1_r12, "users"."name" AS t1_r13, "users"."admin" AS t1_r14, "users"."projects_limit" AS t1_r15, "users"."failed_attempts" AS t1_r16, "users"."locked_at" AS t1_r17, "users"."username" AS t1_r18, "users"."can_create_group" AS t1_r19, "users"."can_create_team" AS t1_r20, "users"."state" AS t1_r21, "users"."color_scheme_id" AS t1_r22, "users"."password_expires_at" AS t1_r23, "users"."created_by_id" AS t1_r24, "users"."last_credential_check_at" AS t1_r25, "users"."avatar" AS t1_r26, "users"."confirmation_token" AS t1_r27, "users"."confirmed_at" AS t1_r28, "users"."confirmation_sent_at" AS t1_r29, "users"."unconfirmed_email" AS t1_r30, "users"."hide_no_ssh_key" AS t1_r31, "users"."admin_email_unsubscribed_at" AS t1_r32, "users"."notification_email" AS t1_r33, "users"."hide_no_password" AS t1_r34, "users"."password_automatically_set" AS t1_r35, "users"."encrypted_otp_secret" AS t1_r36, "users"."encrypted_otp_secret_iv" AS t1_r37, "users"."encrypted_otp_secret_salt" AS t1_r38, "users"."otp_required_for_login" AS t1_r39, "users"."otp_backup_codes" AS t1_r40, "users"."public_email" AS t1_r41, "users"."dashboard" AS t1_r42, "users"."project_view" AS t1_r43, "users"."consumed_timestep" AS t1_r44, "users"."layout" AS t1_r45, "users"."hide_project_limit" AS t1_r46, "users"."note" AS t1_r47, "users"."unlock_token" AS t1_r48, "users"."otp_grace_period_started_at" AS t1_r49, "users"."external" AS t1_r50, "users"."incoming_email_token" AS t1_r51, "users"."auditor" AS t1_r52, "users"."require_two_factor_authentication_from_group" AS t1_r53, "users"."two_factor_grace_period" AS t1_r54, "users"."last_activity_on" AS t1_r55, "users"."notified_of_own_activity" AS t1_r56, "users"."preferred_language" AS t1_r57, "users"."email_opted_in" AS t1_r58, "users"."email_opted_in_ip" AS t1_r59, "users"."email_opted_in_source_id" AS t1_r60, "users"."email_opted_in_at" AS t1_r61, "users"."theme_id" AS t1_r62, "users"."accepted_term_id" AS t1_r63, "users"."feed_token" AS t1_r64, "users"."private_profile" AS t1_r65, "users"."roadmap_layout" AS t1_r66, "users"."include_private_contributions" AS t1_r67, "users"."commit_email" AS t1_r68, "users"."group_view" AS t1_r69, "users"."managing_group_id" AS t1_r70, "users"."first_name" AS t1_r71, "users"."last_name" AS t1_r72, "users"."static_object_token" AS t1_r73, "users"."role" AS t1_r74, "users"."user_type" AS t1_r75, "users"."static_object_token_encrypted" AS t1_r76, "users"."otp_secret_expires_at" AS t1_r77, "users"."onboarding_in_progress" AS t1_r78, "projects"."id" AS t2_r0, "projects"."name" AS t2_r1, "projects"."path" AS t2_r2, "projects"."description" AS t2_r3, "projects"."created_at" AS t2_r4, "projects"."updated_at" AS t2_r5, "projects"."creator_id" AS t2_r6, "projects"."namespace_id" AS t2_r7, "projects"."last_activity_at" AS t2_r8, "projects"."import_url" AS t2_r9, "projects"."visibility_level" AS t2_r10, "projects"."archived" AS t2_r11, "projects"."avatar" AS t2_r12, "projects"."merge_requests_template" AS t2_r13, "projects"."star_count" AS t2_r14, "projects"."merge_requests_rebase_enabled" AS t2_r15, "projects"."import_type" AS t2_r16, "projects"."import_source" AS t2_r17, "projects"."approvals_before_merge" AS t2_r18, "projects"."reset_approvals_on_push" AS t2_r19, "projects"."merge_requests_ff_only_enabled" AS t2_r20, "projects"."issues_template" AS t2_r21, "projects"."mirror" AS t2_r22, "projects"."mirror_last_update_at" AS t2_r23, "projects"."mirror_last_successful_update_at" AS t2_r24, "projects"."mirror_user_id" AS t2_r25, "projects"."shared_runners_enabled" AS t2_r26, "projects"."runners_token" AS t2_r27, "projects"."build_allow_git_fetch" AS t2_r28, "projects"."build_timeout" AS t2_r29, "projects"."mirror_trigger_builds" AS t2_r30, "projects"."pending_delete" AS t2_r31, "projects"."public_builds" AS t2_r32, "projects"."last_repository_check_failed" AS t2_r33, "projects"."last_repository_check_at" AS t2_r34, "projects"."only_allow_merge_if_pipeline_succeeds" AS t2_r35, "projects"."has_external_issue_tracker" AS t2_r36, "projects"."repository_storage" AS t2_r37, "projects"."repository_read_only" AS t2_r38, "projects"."request_access_enabled" AS t2_r39, "projects"."has_external_wiki" AS t2_r40, "projects"."ci_config_path" AS t2_r41, "projects"."lfs_enabled" AS t2_r42, "projects"."description_html" AS t2_r43, "projects"."only_allow_merge_if_all_discussions_are_resolved" AS t2_r44, "projects"."repository_size_limit" AS t2_r45, "projects"."printing_merge_request_link_enabled" AS t2_r46, "projects"."auto_cancel_pending_pipelines" AS t2_r47, "projects"."service_desk_enabled" AS t2_r48, "projects"."cached_markdown_version" AS t2_r49, "projects"."delete_error" AS t2_r50, "projects"."last_repository_updated_at" AS t2_r51, "projects"."disable_overriding_approvers_per_merge_request" AS t2_r52, "projects"."storage_version" AS t2_r53, "projects"."resolve_outdated_diff_discussions" AS t2_r54, "projects"."remote_mirror_available_overridden" AS t2_r55, "projects"."only_mirror_protected_branches" AS t2_r56, "projects"."pull_mirror_available_overridden" AS t2_r57, "projects"."jobs_cache_index" AS t2_r58, "projects"."external_authorization_classification_label" AS t2_r59, "projects"."mirror_overwrites_diverged_branches" AS t2_r60, "projects"."pages_https_only" AS t2_r61, "projects"."external_webhook_token" AS t2_r62, "projects"."packages_enabled" AS t2_r63, "projects"."merge_requests_author_approval" AS t2_r64, "projects"."pool_repository_id" AS t2_r65, "projects"."runners_token_encrypted" AS t2_r66, "projects"."bfg_object_map" AS t2_r67, "projects"."detected_repository_languages" AS t2_r68, "projects"."merge_requests_disable_committers_approval" AS t2_r69, "projects"."require_password_to_approve" AS t2_r70, "projects"."emails_disabled" AS t2_r71, "projects"."max_pages_size" AS t2_r72, "projects"."max_artifacts_size" AS t2_r73, "projects"."pull_mirror_branch_prefix" AS t2_r74, "projects"."remove_source_branch_after_merge" AS t2_r75, "projects"."marked_for_deletion_at" AS t2_r76, "projects"."marked_for_deletion_by_user_id" AS t2_r77, "projects"."autoclose_referenced_issues" AS t2_r78, "projects"."suggestion_commit_message" AS t2_r79, "projects"."project_namespace_id" AS t2_r80, "projects"."hidden" AS t2_r81, "project_features"."id" AS t3_r0, "project_features"."project_id" AS t3_r1, "project_features"."merge_requests_access_level" AS t3_r2, "project_features"."issues_access_level" AS t3_r3, "project_features"."wiki_access_level" AS t3_r4, "project_features"."snippets_access_level" AS t3_r5, "project_features"."builds_access_level" AS t3_r6, "project_features"."created_at" AS t3_r7, "project_features"."updated_at" AS t3_r8, "project_features"."repository_access_level" AS t3_r9, "project_features"."pages_access_level" AS t3_r10, "project_features"."forking_access_level" AS t3_r11, "project_features"."metrics_dashboard_access_level" AS t3_r12, "project_features"."requirements_access_level" AS t3_r13, "project_features"."operations_access_level" AS t3_r14, "project_features"."analytics_access_level" AS t3_r15, "project_features"."security_and_compliance_access_level" AS t3_r16, "project_features"."container_registry_access_level" AS t3_r17, "project_features"."package_registry_access_level" AS t3_r18, "project_features"."monitor_access_level" AS t3_r19, "project_features"."infrastructure_access_level" AS t3_r20, "project_features"."feature_flags_access_level" AS t3_r21, "project_features"."environments_access_level" AS t3_r22, "project_features"."releases_access_level" AS t3_r23, "project_import_data"."id" AS t4_r0, "project_import_data"."project_id" AS t4_r1, "project_import_data"."data" AS t4_r2, "project_import_data"."encrypted_credentials" AS t4_r3, "project_import_data"."encrypted_credentials_iv" AS t4_r4, "project_import_data"."encrypted_credentials_salt" AS t4_r5, "namespaces"."id" AS t5_r0, "namespaces"."name" AS t5_r1, "namespaces"."path" AS t5_r2, "namespaces"."owner_id" AS t5_r3, "namespaces"."created_at" AS t5_r4, "namespaces"."updated_at" AS t5_r5, "namespaces"."type" AS t5_r6, "namespaces"."description" AS t5_r7, "namespaces"."avatar" AS t5_r8, "namespaces"."membership_lock" AS t5_r9, "namespaces"."share_with_group_lock" AS t5_r10, "namespaces"."visibility_level" AS t5_r11, "namespaces"."request_access_enabled" AS t5_r12, "namespaces"."ldap_sync_status" AS t5_r13, "namespaces"."ldap_sync_error" AS t5_r14, "namespaces"."ldap_sync_last_update_at" AS t5_r15, "namespaces"."ldap_sync_last_successful_update_at" AS t5_r16, "namespaces"."ldap_sync_last_sync_at" AS t5_r17, "namespaces"."description_html" AS t5_r18, "namespaces"."lfs_enabled" AS t5_r19, "namespaces"."parent_id" AS t5_r20, "namespaces"."shared_runners_minutes_limit" AS t5_r21, "namespaces"."repository_size_limit" AS t5_r22, "namespaces"."require_two_factor_authentication" AS t5_r23, "namespaces"."two_factor_grace_period" AS t5_r24, "namespaces"."cached_markdown_version" AS t5_r25, "namespaces"."project_creation_level" AS t5_r26, "namespaces"."runners_token" AS t5_r27, "namespaces"."file_template_project_id" AS t5_r28, "namespaces"."saml_discovery_token" AS t5_r29, "namespaces"."runners_token_encrypted" AS t5_r30, "namespaces"."custom_project_templates_group_id" AS t5_r31, "namespaces"."auto_devops_enabled" AS t5_r32, "namespaces"."extra_shared_runners_minutes_limit" AS t5_r33, "namespaces"."last_ci_minutes_notification_at" AS t5_r34, "namespaces"."last_ci_minutes_usage_notification_level" AS t5_r35, "namespaces"."subgroup_creation_level" AS t5_r36, "namespaces"."emails_disabled" AS t5_r37, "namespaces"."max_pages_size" AS t5_r38, "namespaces"."max_artifacts_size" AS t5_r39, "namespaces"."mentions_disabled" AS t5_r40, "namespaces"."default_branch_protection" AS t5_r41, "namespaces"."unlock_membership_to_ldap" AS t5_r42, "namespaces"."max_personal_access_token_lifetime" AS t5_r43, "namespaces"."push_rule_id" AS t5_r44, "namespaces"."shared_runners_enabled" AS t5_r45, "namespaces"."allow_descendants_override_disabled_shared_runners" AS t5_r46, "namespaces"."traversal_ids" AS t5_r47 FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" LEFT OUTER JOIN "project_features" ON "project_features"."project_id" = "projects"."id" LEFT OUTER JOIN "project_import_data" ON "project_import_data"."project_id" = "projects"."id" LEFT OUTER JOIN "namespaces" ON "namespaces"."id" = "projects"."namespace_id" LEFT OUTER JOIN "users" ON "users"."id" = "events"."author_id" WHERE "events"."project_id" = ? AND (EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (?,?,?)) ORDER BY "events"."id" DESC LIMIT ? OFFSET ?"
SELECT "events"."project_id" AS t0_r0, "events"."author_id" AS t0_r1, "events"."target_id" AS t0_r2, "events"."created_at" AS t0_r3, "events"."updated_at" AS t0_r4, "events"."action" AS t0_r5, "events"."target_type" AS t0_r6, "events"."group_id" AS t0_r7, "events"."fingerprint" AS t0_r8, "events"."id" AS t0_r9, "users"."id" AS t1_r0, "users"."email" AS t1_r1, "users"."encrypted_password" AS t1_r2, "users"."reset_password_token" AS t1_r3, "users"."reset_password_sent_at" AS t1_r4, "users"."remember_created_at" AS t1_r5, "users"."sign_in_count" AS t1_r6, "users"."current_sign_in_at" AS t1_r7, "users"."last_sign_in_at" AS t1_r8, "users"."current_sign_in_ip" AS t1_r9, "users"."last_sign_in_ip" AS t1_r10, "users"."created_at" AS t1_r11, "users"."updated_at" AS t1_r12, "users"."name" AS t1_r13, "users"."admin" AS t1_r14, "users"."projects_limit" AS t1_r15, "users"."failed_attempts" AS t1_r16, "users"."locked_at" AS t1_r17, "users"."username" AS t1_r18, "users"."can_create_group" AS t1_r19, "users"."can_create_team" AS t1_r20, "users"."state" AS t1_r21, "users"."color_scheme_id" AS t1_r22, "users"."password_expires_at" AS t1_r23, "users"."created_by_id" AS t1_r24, "users"."last_credential_check_at" AS t1_r25, "users"."avatar" AS t1_r26, "users"."confirmation_token" AS t1_r27, "users"."confirmed_at" AS t1_r28, "users"."confirmation_sent_at" AS t1_r29, "users"."unconfirmed_email" AS t1_r30, "users"."hide_no_ssh_key" AS t1_r31, "users"."admin_email_unsubscribed_at" AS t1_r32, "users"."notification_email" AS t1_r33, "users"."hide_no_password" AS t1_r34, "users"."password_automatically_set" AS t1_r35, "users"."encrypted_otp_secret" AS t1_r36, "users"."encrypted_otp_secret_iv" AS t1_r37, "users"."encrypted_otp_secret_salt" AS t1_r38, "users"."otp_required_for_login" AS t1_r39, "users"."otp_backup_codes" AS t1_r40, "users"."public_email" AS t1_r41, "users"."dashboard" AS t1_r42, "users"."project_view" AS t1_r43, "users"."consumed_timestep" AS t1_r44, "users"."layout" AS t1_r45, "users"."hide_project_limit" AS t1_r46, "users"."note" AS t1_r47, "users"."unlock_token" AS t1_r48, "users"."otp_grace_period_started_at" AS t1_r49, "users"."external" AS t1_r50, "users"."incoming_email_token" AS t1_r51, "users"."auditor" AS t1_r52, "users"."require_two_factor_authentication_from_group" AS t1_r53, "users"."two_factor_grace_period" AS t1_r54, "users"."last_activity_on" AS t1_r55, "users"."notified_of_own_activity" AS t1_r56, "users"."preferred_language" AS t1_r57, "users"."email_opted_in" AS t1_r58, "users"."email_opted_in_ip" AS t1_r59, "users"."email_opted_in_source_id" AS t1_r60, "users"."email_opted_in_at" AS t1_r61, "users"."theme_id" AS t1_r62, "users"."accepted_term_id" AS t1_r63, "users"."feed_token" AS t1_r64, "users"."private_profile" AS t1_r65, "users"."roadmap_layout" AS t1_r66, "users"."include_private_contributions" AS t1_r67, "users"."commit_email" AS t1_r68, "users"."group_view" AS t1_r69, "users"."managing_group_id" AS t1_r70, "users"."first_name" AS t1_r71, "users"."last_name" AS t1_r72, "users"."static_object_token" AS t1_r73, "users"."role" AS t1_r74, "users"."user_type" AS t1_r75, "users"."static_object_token_encrypted" AS t1_r76, "users"."otp_secret_expires_at" AS t1_r77, "users"."onboarding_in_progress" AS t1_r78, "projects"."id" AS t2_r0, "projects"."name" AS t2_r1, "projects"."path" AS t2_r2, "projects"."description" AS t2_r3, "projects"."created_at" AS t2_r4, "projects"."updated_at" AS t2_r5, "projects"."creator_id" AS t2_r6, "projects"."namespace_id" AS t2_r7, "projects"."last_activity_at" AS t2_r8, "projects"."import_url" AS t2_r9, "projects"."visibility_level" AS t2_r10, "projects"."archived" AS t2_r11, "projects"."avatar" AS t2_r12, "projects"."merge_requests_template" AS t2_r13, "projects"."star_count" AS t2_r14, "projects"."merge_requests_rebase_enabled" AS t2_r15, "projects"."import_type" AS t2_r16, "projects"."import_source" AS t2_r17, "projects"."approvals_before_merge" AS t2_r18, "projects"."reset_approvals_on_push" AS t2_r19, "projects"."merge_requests_ff_only_enabled" AS t2_r20, "projects"."issues_template" AS t2_r21, "projects"."mirror" AS t2_r22, "projects"."mirror_last_update_at" AS t2_r23, "projects"."mirror_last_successful_update_at" AS t2_r24, "projects"."mirror_user_id" AS t2_r25, "projects"."shared_runners_enabled" AS t2_r26, "projects"."runners_token" AS t2_r27, "projects"."build_allow_git_fetch" AS t2_r28, "projects"."build_timeout" AS t2_r29, "projects"."mirror_trigger_builds" AS t2_r30, "projects"."pending_delete" AS t2_r31, "projects"."public_builds" AS t2_r32, "projects"."last_repository_check_failed" AS t2_r33, "projects"."last_repository_check_at" AS t2_r34, "projects"."only_allow_merge_if_pipeline_succeeds" AS t2_r35, "projects"."has_external_issue_tracker" AS t2_r36, "projects"."repository_storage" AS t2_r37, "projects"."repository_read_only" AS t2_r38, "projects"."request_access_enabled" AS t2_r39, "projects"."has_external_wiki" AS t2_r40, "projects"."ci_config_path" AS t2_r41, "projects"."lfs_enabled" AS t2_r42, "projects"."description_html" AS t2_r43, "projects"."only_allow_merge_if_all_discussions_are_resolved" AS t2_r44, "projects"."repository_size_limit" AS t2_r45, "projects"."printing_merge_request_link_enabled" AS t2_r46, "projects"."auto_cancel_pending_pipelines" AS t2_r47, "projects"."service_desk_enabled" AS t2_r48, "projects"."cached_markdown_version" AS t2_r49, "projects"."delete_error" AS t2_r50, "projects"."last_repository_updated_at" AS t2_r51, "projects"."disable_overriding_approvers_per_merge_request" AS t2_r52, "projects"."storage_version" AS t2_r53, "projects"."resolve_outdated_diff_discussions" AS t2_r54, "projects"."remote_mirror_available_overridden" AS t2_r55, "projects"."only_mirror_protected_branches" AS t2_r56, "projects"."pull_mirror_available_overridden" AS t2_r57, "projects"."jobs_cache_index" AS t2_r58, "projects"."external_authorization_classification_label" AS t2_r59, "projects"."mirror_overwrites_diverged_branches" AS t2_r60, "projects"."pages_https_only" AS t2_r61, "projects"."external_webhook_token" AS t2_r62, "projects"."packages_enabled" AS t2_r63, "projects"."merge_requests_author_approval" AS t2_r64, "projects"."pool_repository_id" AS t2_r65, "projects"."runners_token_encrypted" AS t2_r66, "projects"."bfg_object_map" AS t2_r67, "projects"."detected_repository_languages" AS t2_r68, "projects"."merge_requests_disable_committers_approval" AS t2_r69, "projects"."require_password_to_approve" AS t2_r70, "projects"."emails_disabled" AS t2_r71, "projects"."max_pages_size" AS t2_r72, "projects"."max_artifacts_size" AS t2_r73, "projects"."pull_mirror_branch_prefix" AS t2_r74, "projects"."remove_source_branch_after_merge" AS t2_r75, "projects"."marked_for_deletion_at" AS t2_r76, "projects"."marked_for_deletion_by_user_id" AS t2_r77, "projects"."autoclose_referenced_issues" AS t2_r78, "projects"."suggestion_commit_message" AS t2_r79, "projects"."project_namespace_id" AS t2_r80, "projects"."hidden" AS t2_r81, "project_features"."id" AS t3_r0, "project_features"."project_id" AS t3_r1, "project_features"."merge_requests_access_level" AS t3_r2, "project_features"."issues_access_level" AS t3_r3, "project_features"."wiki_access_level" AS t3_r4, "project_features"."snippets_access_level" AS t3_r5, "project_features"."builds_access_level" AS t3_r6, "project_features"."created_at" AS t3_r7, "project_features"."updated_at" AS t3_r8, "project_features"."repository_access_level" AS t3_r9, "project_features"."pages_access_level" AS t3_r10, "project_features"."forking_access_level" AS t3_r11, "project_features"."metrics_dashboard_access_level" AS t3_r12, "project_features"."requirements_access_level" AS t3_r13, "project_features"."operations_access_level" AS t3_r14, "project_features"."analytics_access_level" AS t3_r15, "project_features"."security_and_compliance_access_level" AS t3_r16, "project_features"."container_registry_access_level" AS t3_r17, "project_features"."package_registry_access_level" AS t3_r18, "project_features"."monitor_access_level" AS t3_r19, "project_features"."infrastructure_access_level" AS t3_r20, "project_features"."feature_flags_access_level" AS t3_r21, "project_features"."environments_access_level" AS t3_r22, "project_features"."releases_access_level" AS t3_r23, "project_import_data"."id" AS t4_r0, "project_import_data"."project_id" AS t4_r1, "project_import_data"."data" AS t4_r2, "project_import_data"."encrypted_credentials" AS t4_r3, "project_import_data"."encrypted_credentials_iv" AS t4_r4, "project_import_data"."encrypted_credentials_salt" AS t4_r5, "namespaces"."id" AS t5_r0, "namespaces"."name" AS t5_r1, "namespaces"."path" AS t5_r2, "namespaces"."owner_id" AS t5_r3, "namespaces"."created_at" AS t5_r4, "namespaces"."updated_at" AS t5_r5, "namespaces"."type" AS t5_r6, "namespaces"."description" AS t5_r7, "namespaces"."avatar" AS t5_r8, "namespaces"."membership_lock" AS t5_r9, "namespaces"."share_with_group_lock" AS t5_r10, "namespaces"."visibility_level" AS t5_r11, "namespaces"."request_access_enabled" AS t5_r12, "namespaces"."ldap_sync_status" AS t5_r13, "namespaces"."ldap_sync_error" AS t5_r14, "namespaces"."ldap_sync_last_update_at" AS t5_r15, "namespaces"."ldap_sync_last_successful_update_at" AS t5_r16, "namespaces"."ldap_sync_last_sync_at" AS t5_r17, "namespaces"."description_html" AS t5_r18, "namespaces"."lfs_enabled" AS t5_r19, "namespaces"."parent_id" AS t5_r20, "namespaces"."shared_runners_minutes_limit" AS t5_r21, "namespaces"."repository_size_limit" AS t5_r22, "namespaces"."require_two_factor_authentication" AS t5_r23, "namespaces"."two_factor_grace_period" AS t5_r24, "namespaces"."cached_markdown_version" AS t5_r25, "namespaces"."project_creation_level" AS t5_r26, "namespaces"."runners_token" AS t5_r27, "namespaces"."file_template_project_id" AS t5_r28, "namespaces"."saml_discovery_token" AS t5_r29, "namespaces"."runners_token_encrypted" AS t5_r30, "namespaces"."custom_project_templates_group_id" AS t5_r31, "namespaces"."auto_devops_enabled" AS t5_r32, "namespaces"."extra_shared_runners_minutes_limit" AS t5_r33, "namespaces"."last_ci_minutes_notification_at" AS t5_r34, "namespaces"."last_ci_minutes_usage_notification_level" AS t5_r35, "namespaces"."subgroup_creation_level" AS t5_r36, "namespaces"."emails_disabled" AS t5_r37, "namespaces"."max_pages_size" AS t5_r38, "namespaces"."max_artifacts_size" AS t5_r39, "namespaces"."mentions_disabled" AS t5_r40, "namespaces"."default_branch_protection" AS t5_r41, "namespaces"."unlock_membership_to_ldap" AS t5_r42, "namespaces"."max_personal_access_token_lifetime" AS t5_r43, "namespaces"."push_rule_id" AS t5_r44, "namespaces"."shared_runners_enabled" AS t5_r45, "namespaces"."allow_descendants_override_disabled_shared_runners" AS t5_r46, "namespaces"."traversal_ids" AS t5_r47 FROM ((SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id" FROM (VALUES (?)) AS array_ids(id)), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."project_id" = "array_cte"."id" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ?)) events INNER JOIN "projects" ON "projects"."id" = "events"."project_id" LEFT OUTER JOIN "project_features" ON "project_features"."project_id" = "projects"."id" LEFT OUTER JOIN "project_import_data" ON "project_import_data"."project_id" = "projects"."id" LEFT OUTER JOIN "namespaces" ON "namespaces"."id" = "projects"."namespace_id" LEFT OUTER JOIN "users" ON "users"."id" = "events"."author_id" WHERE (EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (?,?,?)) AND "events"."action" = ? AND "events"."target_type" = ? AND (events.created_at < ?) AND (events.created_at > ?) ORDER BY "events"."id" DESC LIMIT ? OFFSET ?"
SELECT "events".* FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" WHERE "events"."author_id" = ? AND (EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (?,?,?)) AND "events"."action" = ? AND "events"."target_type" = ? AND (events.created_at < ?) AND (events.created_at > ?) LIMIT ? OFFSET ?"
SELECT "events".* FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" WHERE "events"."author_id" = ? AND (EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (?,?,?)) AND "events"."action" = ? ORDER BY "events"."id" DESC LIMIT ? OFFSET ?"
SELECT "events".* FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" WHERE "events"."author_id" = ? AND (EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (?,?,?)) LIMIT ? OFFSET ?"
SELECT "events".* FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" WHERE "events"."project_id" = ? AND (EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (?,?,?)) AND "events"."action" = ? AND "events"."target_type" = ? AND (events.created_at < ?) AND (events.created_at > ?) LIMIT ? OFFSET ?"
SELECT "events".* FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" WHERE "events"."project_id" = ? AND (EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (?,?,?)) AND "events"."target_type" = ? LIMIT ? OFFSET ?"
SELECT "events".* FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" WHERE "events"."project_id" = ? AND (EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (?,?,?)) LIMIT ? OFFSET ?"
SELECT "events".* FROM "events" INNER JOIN "push_event_payloads" ON "push_event_payloads"."event_id" = "events"."id" WHERE "events"."action" = ? AND "push_event_payloads"."action" IN (?,?,?)"
SELECT "events".* FROM "events" INNER JOIN "push_event_payloads" ON "push_event_payloads"."event_id" = "events"."id" WHERE "events"."action" = ? AND "push_event_payloads"."ref_type" = ?"
SELECT "events".* FROM "events" INNER JOIN "push_event_payloads" ON "push_event_payloads"."event_id" = "events"."id" WHERE "events"."action" = ? AND (NOT EXISTS (SELECT ? FROM "merge_requests" WHERE (merge_requests.source_project_id = events.project_id) AND (merge_requests.source_branch = push_event_payloads.ref) AND ("merge_requests"."state_id" IN (?)))) AND "push_event_payloads"."action" IN (?,?,?) AND "push_event_payloads"."ref_type" = ? AND "events"."id" = ? LIMIT ?"
SELECT "events".* FROM "events" INNER JOIN "push_event_payloads" ON "push_event_payloads"."event_id" = "events"."id" WHERE "events"."action" = ? AND (NOT EXISTS (SELECT ? FROM "merge_requests" WHERE (merge_requests.source_project_id = events.project_id) AND (merge_requests.source_branch = push_event_payloads.ref) AND ("merge_requests"."state_id" IN (?)))) AND "push_event_payloads"."action" IN (?,?,?) AND "push_event_payloads"."ref_type" = ?"
SELECT "events".* FROM "events" ORDER BY "events"."id" DESC LIMIT ?"
SELECT "events".* FROM "events" WHERE "events"."action" = ? AND "events"."author_id" = ? AND "events"."fingerprint" = ? AND "events"."target_id" = ? AND "events"."target_type" = ? AND "events"."project_id" = ? LIMIT ?"
SELECT "events".* FROM "events" WHERE "events"."action" = ? AND "events"."id" IN (?,?,?)"
SELECT "events".* FROM "events" WHERE "events"."action" = ? LIMIT ?"
SELECT "events".* FROM "events" WHERE "events"."action" = ?"
SELECT "events".* FROM "events" WHERE "events"."action" IN (?,?,?) AND "events"."target_type" IN (?,?,?)"
SELECT "events".* FROM "events" WHERE "events"."action" IN (?,?,?)"
SELECT "events".* FROM "events" WHERE "events"."author_id" = ? AND "events"."action" = ? ORDER BY "events"."created_at" DESC LIMIT ? OFFSET ?"
SELECT "events".* FROM "events" WHERE "events"."author_id" = ? AND "events"."action" = ? ORDER BY "events"."created_at" DESC LIMIT ?"
SELECT "events".* FROM "events" WHERE "events"."author_id" = ? AND "events"."action" IN (?,?,?) AND "events"."target_type" IN (?,?,?) ORDER BY "events"."created_at" DESC LIMIT ? OFFSET ?"
SELECT "events".* FROM "events" WHERE "events"."author_id" = ? AND "events"."action" IN (?,?,?) AND "events"."target_type" IN (?,?,?) ORDER BY "events"."created_at" DESC LIMIT ?"
SELECT "events".* FROM "events" WHERE "events"."author_id" = ? AND "events"."action" IN (?,?,?) ORDER BY "events"."created_at" DESC LIMIT ? OFFSET ?"
SELECT "events".* FROM "events" WHERE "events"."author_id" = ? AND "events"."action" IN (?,?,?) ORDER BY "events"."created_at" DESC LIMIT ?"
SELECT "events".* FROM "events" WHERE "events"."author_id" = ? AND "events"."target_type" = ? ORDER BY "events"."created_at" DESC LIMIT ?"
SELECT "events".* FROM "events" WHERE "events"."author_id" = ? ORDER BY "events"."created_at" DESC LIMIT ? OFFSET ?"
SELECT "events".* FROM "events" WHERE "events"."author_id" = ? ORDER BY "events"."created_at" DESC LIMIT ?"
SELECT "events".* FROM "events" WHERE "events"."author_id" = ? ORDER BY "events"."id" ASC LIMIT ?"
SELECT "events".* FROM "events" WHERE "events"."author_id" = ?"
SELECT "events".* FROM "events" WHERE "events"."created_at" = ?"
SELECT "events".* FROM "events" WHERE "events"."fingerprint" = ?"
SELECT "events".* FROM "events" WHERE "events"."id" = ? LIMIT ?"
SELECT "events".* FROM "events" WHERE "events"."project_id" = ? AND "events"."target_id" = ? AND "events"."target_type" = ? AND "events"."action" = ? ORDER BY "events"."id" DESC LIMIT ?"
SELECT "events".* FROM "events" WHERE "events"."project_id" = ? ORDER BY events.created_at DESC LIMIT ?"
SELECT "events".* FROM "events" WHERE "events"."project_id" = ?"
SELECT "events".* FROM "events" WHERE "events"."project_id" IN (?,?,?) AND "events"."created_at" >= ?"
SELECT "events".* FROM "events" WHERE "events"."target_id" = ? AND "events"."target_type" = ? ORDER BY "events"."id" ASC LIMIT ?"
SELECT "events".* FROM "events" WHERE "events"."target_id" = ? AND "events"."target_type" = ? ORDER BY "events"."id" DESC LIMIT ?"
SELECT "events".* FROM "events" WHERE "events"."target_id" = ? AND "events"."target_type" = ?"
SELECT "events".* FROM "events" WHERE "events"."target_type" = ? AND "events"."target_id" = ? AND "events"."fingerprint" = ? ORDER BY "events"."id" ASC LIMIT ?"
SELECT "events".* FROM "events" WHERE "events"."target_type" = ? AND "events"."target_id" = ?"
SELECT "events".* FROM "events" WHERE "events"."target_type" = ? AND "events"."target_id" IN (?,?,?)"
SELECT "events".* FROM "events" WHERE "events"."target_type" = ? AND "events"."target_id" IN (SELECT "issues"."id" FROM "issues" INNER JOIN "projects" ON "projects"."id" = "issues"."project_id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE (NOT EXISTS (SELECT ? FROM "banned_users" WHERE (issues.author_id = banned_users.user_id))) AND (\n issues.confidential = ?\n OR (issues.confidential = ?\n AND (issues.author_id = ?\n OR EXISTS (SELECT ? FROM issue_assignees WHERE user_id = ? AND issue_id = issues.id)\n OR EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = issues.project_id) AND (project_authorizations.access_level >= ?))))) AND "projects"."namespace_id" IN (SELECT namespaces.traversal_ids[array_length(namespaces.traversal_ids, ?)] AS id FROM "namespaces" WHERE "namespaces"."type" = ? AND (traversal_ids @> (?))) AND (EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = projects.id) AND (project_authorizations.access_level >= ?)) OR projects.visibility_level IN (?,?,?)) AND ("project_features"."issues_access_level" IS NULL OR "project_features"."issues_access_level" IN (?,?,?) OR ("project_features"."issues_access_level" = ? AND EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = project_features.project_id) AND (project_authorizations.access_level >= ?)))) AND "issues"."milestone_id" = ? AND (issues.created_at <= ?) ORDER BY "issues"."id" DESC) AND "events"."action" IN (?,?,?) AND (created_at <= ?) ORDER BY "events"."created_at" ASC"
SELECT "events".* FROM "events" WHERE "events"."target_type" = ? AND "events"."target_id" IN (SELECT "issues"."id" FROM "issues" LEFT OUTER JOIN "projects" ON "projects"."id" = "issues"."project_id" WHERE (NOT EXISTS (SELECT ? FROM "banned_users" WHERE (issues.author_id = banned_users.user_id))) AND "issues"."project_id" = ? AND "issues"."milestone_id" = ? AND (issues.created_at <= ?) ORDER BY "issues"."id" DESC) AND "events"."action" IN (?,?,?) AND (created_at <= ?) ORDER BY "events"."created_at" ASC"
SELECT "events".* FROM "events" WHERE "events"."target_type" = ? AND "events"."target_id" IN (SELECT "issues"."id" FROM "issues" LEFT OUTER JOIN "projects" ON "projects"."id" = "issues"."project_id" WHERE (NOT EXISTS (SELECT ? FROM "banned_users" WHERE (issues.author_id = banned_users.user_id))) AND (\n issues.confidential = ?\n OR (issues.confidential = ?\n AND (issues.author_id = ?\n OR EXISTS (SELECT ? FROM issue_assignees WHERE user_id = ? AND issue_id = issues.id)\n OR EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = issues.project_id) AND (project_authorizations.access_level >= ?))))) AND "issues"."project_id" = ? AND "issues"."milestone_id" = ? AND (issues.created_at <= ?) ORDER BY "issues"."id" DESC) AND "events"."action" IN (?,?,?) AND (created_at <= ?) ORDER BY "events"."created_at" ASC"
SELECT "events".* FROM "events" WHERE "events"."target_type" = ? AND "events"."target_id" IN (SELECT "issues"."id" FROM "issues" WHERE "issues"."milestone_id" = ?) AND "events"."action" = ?"
SELECT "events".* FROM "events" WHERE "events"."target_type" = ?"
SELECT "events".* FROM "events" WHERE "events"."target_type" IN (?,?,?) ORDER BY "events"."id" DESC"
SELECT "events".* FROM "events" WHERE "events"."target_type" IN (?,?,?)"
SELECT "events".* FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND "events"."created_at" BETWEEN ? AND ? AND "events"."project_id" IN (SELECT "projects"."id" FROM "projects" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ? AND "projects"."visibility_level" = ? ORDER BY "projects"."id" DESC)"
SELECT "events".* FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND "events"."created_at" BETWEEN ? AND ? AND "events"."project_id" IN (SELECT "projects"."id" FROM ((SELECT "projects".* FROM "projects" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ? AND "projects"."id" IN (SELECT "projects"."id" FROM "projects" INNER JOIN "project_authorizations" ON "projects"."id" = "project_authorizations"."project_id" WHERE "project_authorizations"."user_id" = ?))\nUNION\n(SELECT "projects".* FROM "projects" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ? AND "projects"."visibility_level" IN (?,?,?))) projects ORDER BY "projects"."id" DESC)"
SELECT "events".* FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?)))"
SELECT "events".* FROM "events""
SELECT "events".* FROM ((SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id" FROM (VALUES (?)) AS array_ids(id)), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."project_id" = "array_cte"."id" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ?)\nUNION\n(SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id" FROM (VALUES (?)) AS array_ids(id)), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."group_id" = "array_cte"."id" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."group_id" = recursive_keyset_cte.array_cte_id_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ?)) events ORDER BY "events"."id" DESC LIMIT ? OFFSET ?"
SELECT "events".* FROM ((SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id" FROM (VALUES (?)) AS array_ids(id)), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."project_id" = "array_cte"."id" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ?)\nUNION\n(SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id" FROM (VALUES (?), (?)) AS array_ids(id)), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."group_id" = "array_cte"."id" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."group_id" = recursive_keyset_cte.array_cte_id_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ?)) events ORDER BY "events"."id" DESC LIMIT ? OFFSET ?"
SELECT "events".* FROM ((SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id" FROM (VALUES (?)) AS array_ids(id)), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."project_id" = "array_cte"."id" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ?)\nUNION\n(SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id" FROM (VALUES (?), (?), (?)) AS array_ids(id)), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."group_id" = "array_cte"."id" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."group_id" = recursive_keyset_cte.array_cte_id_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ?)) events ORDER BY "events"."id" DESC LIMIT ? OFFSET ?"
SELECT "events".* FROM ((SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id" FROM (VALUES (?), (?), (?)) AS array_ids(id)), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."project_id" = "array_cte"."id" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ?)) events INNER JOIN "projects" ON "projects"."id" = "events"."project_id" WHERE (EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (?,?,?)) ORDER BY "events"."id" DESC LIMIT ? OFFSET ?"
SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id" FROM (VALUES (?)) AS array_ids(id)), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."author_id" = "array_cte"."id" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."author_id" = recursive_keyset_cte.array_cte_id_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ? OFFSET ?"
SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id" FROM (VALUES (?)) AS array_ids(id)), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."project_id" = "array_cte"."id" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ? OFFSET ?"
SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id" FROM (VALUES (?)) AS array_ids(id)), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."target_type" = ? AND "events"."action" = ? AND "events"."project_id" = "array_cte"."id" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."target_type" = ? AND "events"."action" = ? AND "events"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ? OFFSET ?"
SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id" FROM (VALUES (?)) AS array_ids(id)), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, events_target_type_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("events"."target_type") AS events_target_type_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."target_type" AS target_type, "events"."id" AS id FROM "events" WHERE "events"."target_type" IS NULL AND "events"."action" = ? AND "events"."project_id" = "array_cte"."id" ORDER BY "events"."target_type" DESC, "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, recursive_keyset_cte.events_target_type_array[:position_query.position-?]||next_cursor_values.target_type||recursive_keyset_cte.events_target_type_array[position_query.position+?:], recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT target_type, id, position FROM UNNEST(events_target_type_array, events_id_array) WITH ORDINALITY AS u(target_type, id, position) WHERE id IS NOT NULL ORDER BY 1 DESC NULLS LAST, 2 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."target_type", "record"."id" FROM (VALUES (?,?,?)) AS nulls LEFT JOIN (SELECT "events"."target_type" AS target_type, "events"."id" AS id FROM ((SELECT "events"."target_type" AS target_type, "events"."id" AS id FROM "events" WHERE "events"."target_type" IS NULL AND "events"."action" = ? AND "events"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND recursive_keyset_cte.events_target_type_array[position] IS NULL AND "events"."target_type" IS NULL AND "events"."id" < recursive_keyset_cte.events_id_array[position] ORDER BY "events"."target_type" DESC, "events"."id" DESC)\nUNION ALL\n(SELECT "events"."target_type" AS target_type, "events"."id" AS id FROM "events" WHERE "events"."target_type" IS NULL AND "events"."action" = ? AND "events"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND recursive_keyset_cte.events_target_type_array[position] IS NOT NULL AND "events"."target_type" IS NULL ORDER BY "events"."target_type" DESC, "events"."id" DESC)\nUNION ALL\n(SELECT "events"."target_type" AS target_type, "events"."id" AS id FROM "events" WHERE "events"."target_type" IS NULL AND "events"."action" = ? AND "events"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND recursive_keyset_cte.events_target_type_array[position] IS NOT NULL AND "events"."target_type" < recursive_keyset_cte.events_target_type_array[position] ORDER BY "events"."target_type" DESC, "events"."id" DESC)\nUNION ALL\n(SELECT "events"."target_type" AS target_type, "events"."id" AS id FROM "events" WHERE "events"."target_type" IS NULL AND "events"."action" = ? AND "events"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND recursive_keyset_cte.events_target_type_array[position] IS NOT NULL AND "events"."target_type" = recursive_keyset_cte.events_target_type_array[position] AND "events"."id" < recursive_keyset_cte.events_id_array[position] ORDER BY "events"."target_type" DESC, "events"."id" DESC)) events ORDER BY "events"."target_type" DESC, "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ? OFFSET ?"
SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id" FROM (VALUES (?), (?)) AS array_ids(id)), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."author_id" = "array_cte"."id" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."author_id" = recursive_keyset_cte.array_cte_id_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ? OFFSET ?"
SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id" FROM (VALUES (?), (?)) AS array_ids(id)), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."project_id" = "array_cte"."id" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ? OFFSET ?"
SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id" FROM (VALUES (?), (?)) AS array_ids(id)), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."target_type" = ? AND "events"."action" = ? AND "events"."author_id" = "array_cte"."id" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."target_type" = ? AND "events"."action" = ? AND "events"."author_id" = recursive_keyset_cte.array_cte_id_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ? OFFSET ?"
SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id" FROM (VALUES (?), (?)) AS array_ids(id)), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, events_target_type_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("events"."target_type") AS events_target_type_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."target_type" AS target_type, "events"."id" AS id FROM "events" WHERE "events"."target_type" IS NULL AND "events"."action" = ? AND "events"."author_id" = "array_cte"."id" ORDER BY "events"."target_type" DESC, "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, recursive_keyset_cte.events_target_type_array[:position_query.position-?]||next_cursor_values.target_type||recursive_keyset_cte.events_target_type_array[position_query.position+?:], recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT target_type, id, position FROM UNNEST(events_target_type_array, events_id_array) WITH ORDINALITY AS u(target_type, id, position) WHERE id IS NOT NULL ORDER BY 1 DESC NULLS LAST, 2 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."target_type", "record"."id" FROM (VALUES (?,?,?)) AS nulls LEFT JOIN (SELECT "events"."target_type" AS target_type, "events"."id" AS id FROM ((SELECT "events"."target_type" AS target_type, "events"."id" AS id FROM "events" WHERE "events"."target_type" IS NULL AND "events"."action" = ? AND "events"."author_id" = recursive_keyset_cte.array_cte_id_array[position] AND recursive_keyset_cte.events_target_type_array[position] IS NULL AND "events"."target_type" IS NULL AND "events"."id" < recursive_keyset_cte.events_id_array[position] ORDER BY "events"."target_type" DESC, "events"."id" DESC)\nUNION ALL\n(SELECT "events"."target_type" AS target_type, "events"."id" AS id FROM "events" WHERE "events"."target_type" IS NULL AND "events"."action" = ? AND "events"."author_id" = recursive_keyset_cte.array_cte_id_array[position] AND recursive_keyset_cte.events_target_type_array[position] IS NOT NULL AND "events"."target_type" IS NULL ORDER BY "events"."target_type" DESC, "events"."id" DESC)\nUNION ALL\n(SELECT "events"."target_type" AS target_type, "events"."id" AS id FROM "events" WHERE "events"."target_type" IS NULL AND "events"."action" = ? AND "events"."author_id" = recursive_keyset_cte.array_cte_id_array[position] AND recursive_keyset_cte.events_target_type_array[position] IS NOT NULL AND "events"."target_type" < recursive_keyset_cte.events_target_type_array[position] ORDER BY "events"."target_type" DESC, "events"."id" DESC)\nUNION ALL\n(SELECT "events"."target_type" AS target_type, "events"."id" AS id FROM "events" WHERE "events"."target_type" IS NULL AND "events"."action" = ? AND "events"."author_id" = recursive_keyset_cte.array_cte_id_array[position] AND recursive_keyset_cte.events_target_type_array[position] IS NOT NULL AND "events"."target_type" = recursive_keyset_cte.events_target_type_array[position] AND "events"."id" < recursive_keyset_cte.events_id_array[position] ORDER BY "events"."target_type" DESC, "events"."id" DESC)) events ORDER BY "events"."target_type" DESC, "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ? OFFSET ?"
SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id" FROM (VALUES (?), (?), (?), (?)) AS array_ids(id)), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."project_id" = "array_cte"."id" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ? OFFSET ?"
SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id", "action" FROM (VALUES (?,?,?), (?,?,?), (?,?,?)) AS array_ids(id, "action")), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, array_cte_action_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("array_cte"."action") AS array_cte_action_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id", "array_cte"."action" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."target_type" = ? AND "events"."group_id" = "array_cte"."id" AND "events"."action" = "array_cte"."action" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, array_cte_action_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."target_type" = ? AND "events"."group_id" = recursive_keyset_cte.array_cte_id_array[position] AND "events"."action" = recursive_keyset_cte.array_cte_action_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ? OFFSET ?"
SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id", "action" FROM (VALUES (?,?,?), (?,?,?), (?,?,?)) AS array_ids(id, "action")), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, array_cte_action_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("array_cte"."action") AS array_cte_action_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id", "array_cte"."action" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."target_type" = ? AND "events"."project_id" = "array_cte"."id" AND "events"."action" = "array_cte"."action" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, array_cte_action_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."target_type" = ? AND "events"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND "events"."action" = recursive_keyset_cte.array_cte_action_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ? OFFSET ?"
SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id", "action" FROM (VALUES (?,?,?), (?,?,?), (?,?,?)) AS array_ids(id, "action")), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, array_cte_action_array, events_target_type_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("array_cte"."action") AS array_cte_action_array, ARRAY_AGG("events"."target_type") AS events_target_type_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id", "array_cte"."action" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."target_type" AS target_type, "events"."id" AS id FROM "events" WHERE "events"."target_type" IS NULL AND "events"."project_id" = "array_cte"."id" AND "events"."action" = "array_cte"."action" ORDER BY "events"."target_type" DESC, "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, array_cte_action_array, recursive_keyset_cte.events_target_type_array[:position_query.position-?]||next_cursor_values.target_type||recursive_keyset_cte.events_target_type_array[position_query.position+?:], recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT target_type, id, position FROM UNNEST(events_target_type_array, events_id_array) WITH ORDINALITY AS u(target_type, id, position) WHERE id IS NOT NULL ORDER BY 1 DESC NULLS LAST, 2 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."target_type", "record"."id" FROM (VALUES (?,?,?)) AS nulls LEFT JOIN (SELECT "events"."target_type" AS target_type, "events"."id" AS id FROM ((SELECT "events"."target_type" AS target_type, "events"."id" AS id FROM "events" WHERE "events"."target_type" IS NULL AND "events"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND "events"."action" = recursive_keyset_cte.array_cte_action_array[position] AND recursive_keyset_cte.events_target_type_array[position] IS NULL AND "events"."target_type" IS NULL AND "events"."id" < recursive_keyset_cte.events_id_array[position] ORDER BY "events"."target_type" DESC, "events"."id" DESC)\nUNION ALL\n(SELECT "events"."target_type" AS target_type, "events"."id" AS id FROM "events" WHERE "events"."target_type" IS NULL AND "events"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND "events"."action" = recursive_keyset_cte.array_cte_action_array[position] AND recursive_keyset_cte.events_target_type_array[position] IS NOT NULL AND "events"."target_type" IS NULL ORDER BY "events"."target_type" DESC, "events"."id" DESC)\nUNION ALL\n(SELECT "events"."target_type" AS target_type, "events"."id" AS id FROM "events" WHERE "events"."target_type" IS NULL AND "events"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND "events"."action" = recursive_keyset_cte.array_cte_action_array[position] AND recursive_keyset_cte.events_target_type_array[position] IS NOT NULL AND "events"."target_type" < recursive_keyset_cte.events_target_type_array[position] ORDER BY "events"."target_type" DESC, "events"."id" DESC)\nUNION ALL\n(SELECT "events"."target_type" AS target_type, "events"."id" AS id FROM "events" WHERE "events"."target_type" IS NULL AND "events"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND "events"."action" = recursive_keyset_cte.array_cte_action_array[position] AND recursive_keyset_cte.events_target_type_array[position] IS NOT NULL AND "events"."target_type" = recursive_keyset_cte.events_target_type_array[position] AND "events"."id" < recursive_keyset_cte.events_id_array[position] ORDER BY "events"."target_type" DESC, "events"."id" DESC)) events ORDER BY "events"."target_type" DESC, "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ? OFFSET ?"
SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id", "action" FROM (VALUES (?,?,?), (?,?,?), (?,?,?), (?,?,?)) AS array_ids(id, "action")), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, array_cte_action_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("array_cte"."action") AS array_cte_action_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id", "array_cte"."action" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."target_type" IN (?,?,?) AND "events"."project_id" = "array_cte"."id" AND "events"."action" = "array_cte"."action" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, array_cte_action_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."target_type" IN (?,?,?) AND "events"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND "events"."action" = recursive_keyset_cte.array_cte_action_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ? OFFSET ?"
SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id", "action" FROM (VALUES (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?)) AS array_ids(id, "action")), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, array_cte_action_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("array_cte"."action") AS array_cte_action_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id", "array_cte"."action" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."target_type" = ? AND "events"."author_id" = "array_cte"."id" AND "events"."action" = "array_cte"."action" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, array_cte_action_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."target_type" = ? AND "events"."author_id" = recursive_keyset_cte.array_cte_id_array[position] AND "events"."action" = recursive_keyset_cte.array_cte_action_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ? OFFSET ?"
SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id", "action" FROM (VALUES (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?)) AS array_ids(id, "action")), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, array_cte_action_array, events_target_type_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("array_cte"."action") AS array_cte_action_array, ARRAY_AGG("events"."target_type") AS events_target_type_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id", "array_cte"."action" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."target_type" AS target_type, "events"."id" AS id FROM "events" WHERE "events"."target_type" IS NULL AND "events"."author_id" = "array_cte"."id" AND "events"."action" = "array_cte"."action" ORDER BY "events"."target_type" DESC, "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, array_cte_action_array, recursive_keyset_cte.events_target_type_array[:position_query.position-?]||next_cursor_values.target_type||recursive_keyset_cte.events_target_type_array[position_query.position+?:], recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT target_type, id, position FROM UNNEST(events_target_type_array, events_id_array) WITH ORDINALITY AS u(target_type, id, position) WHERE id IS NOT NULL ORDER BY 1 DESC NULLS LAST, 2 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."target_type", "record"."id" FROM (VALUES (?,?,?)) AS nulls LEFT JOIN (SELECT "events"."target_type" AS target_type, "events"."id" AS id FROM ((SELECT "events"."target_type" AS target_type, "events"."id" AS id FROM "events" WHERE "events"."target_type" IS NULL AND "events"."author_id" = recursive_keyset_cte.array_cte_id_array[position] AND "events"."action" = recursive_keyset_cte.array_cte_action_array[position] AND recursive_keyset_cte.events_target_type_array[position] IS NULL AND "events"."target_type" IS NULL AND "events"."id" < recursive_keyset_cte.events_id_array[position] ORDER BY "events"."target_type" DESC, "events"."id" DESC)\nUNION ALL\n(SELECT "events"."target_type" AS target_type, "events"."id" AS id FROM "events" WHERE "events"."target_type" IS NULL AND "events"."author_id" = recursive_keyset_cte.array_cte_id_array[position] AND "events"."action" = recursive_keyset_cte.array_cte_action_array[position] AND recursive_keyset_cte.events_target_type_array[position] IS NOT NULL AND "events"."target_type" IS NULL ORDER BY "events"."target_type" DESC, "events"."id" DESC)\nUNION ALL\n(SELECT "events"."target_type" AS target_type, "events"."id" AS id FROM "events" WHERE "events"."target_type" IS NULL AND "events"."author_id" = recursive_keyset_cte.array_cte_id_array[position] AND "events"."action" = recursive_keyset_cte.array_cte_action_array[position] AND recursive_keyset_cte.events_target_type_array[position] IS NOT NULL AND "events"."target_type" < recursive_keyset_cte.events_target_type_array[position] ORDER BY "events"."target_type" DESC, "events"."id" DESC)\nUNION ALL\n(SELECT "events"."target_type" AS target_type, "events"."id" AS id FROM "events" WHERE "events"."target_type" IS NULL AND "events"."author_id" = recursive_keyset_cte.array_cte_id_array[position] AND "events"."action" = recursive_keyset_cte.array_cte_action_array[position] AND recursive_keyset_cte.events_target_type_array[position] IS NOT NULL AND "events"."target_type" = recursive_keyset_cte.events_target_type_array[position] AND "events"."id" < recursive_keyset_cte.events_id_array[position] ORDER BY "events"."target_type" DESC, "events"."id" DESC)) events ORDER BY "events"."target_type" DESC, "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ? OFFSET ?"
SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id", "action" FROM (VALUES (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?)) AS array_ids(id, "action")), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, array_cte_action_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("array_cte"."action") AS array_cte_action_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id", "array_cte"."action" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."target_type" IN (?,?,?) AND "events"."author_id" = "array_cte"."id" AND "events"."action" = "array_cte"."action" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, array_cte_action_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."target_type" IN (?,?,?) AND "events"."author_id" = recursive_keyset_cte.array_cte_id_array[position] AND "events"."action" = recursive_keyset_cte.array_cte_action_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ? OFFSET ?"
SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id", "target_type" FROM (VALUES (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?)) AS array_ids(id, "target_type")), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, array_cte_target_type_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("array_cte"."target_type") AS array_cte_target_type_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id", "array_cte"."target_type" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."action" = ? AND "events"."project_id" = "array_cte"."id" AND "events"."target_type" = "array_cte"."target_type" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, array_cte_target_type_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."action" = ? AND "events"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND "events"."target_type" = recursive_keyset_cte.array_cte_target_type_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ? OFFSET ?"
SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id", "target_type" FROM (VALUES (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?)) AS array_ids(id, "target_type")), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, array_cte_target_type_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("array_cte"."target_type") AS array_cte_target_type_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id", "array_cte"."target_type" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."action" = ? AND "events"."project_id" = "array_cte"."id" AND "events"."target_type" = "array_cte"."target_type" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, array_cte_target_type_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."action" = ? AND "events"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND "events"."target_type" = recursive_keyset_cte.array_cte_target_type_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ? OFFSET ?"
SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id", "target_type" FROM (VALUES (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?)) AS array_ids(id, "target_type")), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, array_cte_target_type_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("array_cte"."target_type") AS array_cte_target_type_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id", "array_cte"."target_type" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."action" = ? AND "events"."author_id" = "array_cte"."id" AND "events"."target_type" = "array_cte"."target_type" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, array_cte_target_type_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."action" = ? AND "events"."author_id" = recursive_keyset_cte.array_cte_id_array[position] AND "events"."target_type" = recursive_keyset_cte.array_cte_target_type_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ? OFFSET ?"
SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id", "target_type" FROM (VALUES (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?), (?,?,?)) AS array_ids(id, "target_type")), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, array_cte_target_type_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("array_cte"."target_type") AS array_cte_target_type_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id", "array_cte"."target_type" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."action" = ? AND "events"."author_id" = "array_cte"."id" AND "events"."target_type" = "array_cte"."target_type" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, array_cte_target_type_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."action" = ? AND "events"."author_id" = recursive_keyset_cte.array_cte_id_array[position] AND "events"."target_type" = recursive_keyset_cte.array_cte_target_type_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ? OFFSET ?"
SELECT "projects".* FROM "projects" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ? AND "projects"."visibility_level" = ? ORDER BY "projects"."id" DESC"
SELECT "projects".* FROM "projects" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ? ORDER BY "projects"."id" DESC"
SELECT "projects".* FROM "projects" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ?"
SELECT "projects".* FROM ((SELECT "projects".* FROM "projects" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ? AND "projects"."id" IN (SELECT "projects"."id" FROM "projects" INNER JOIN "project_authorizations" ON "projects"."id" = "project_authorizations"."project_id" WHERE "project_authorizations"."user_id" = ?))\nUNION\n(SELECT "projects".* FROM "projects" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ? AND "projects"."visibility_level" IN (?,?,?))) projects ORDER BY "projects"."id" DESC"
SELECT "projects".* FROM ((SELECT "projects".* FROM "projects" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ? AND "projects"."id" IN (SELECT "projects"."id" FROM "projects" INNER JOIN "project_authorizations" ON "projects"."id" = "project_authorizations"."project_id" WHERE "project_authorizations"."user_id" = ?))\nUNION\n(SELECT "projects".* FROM "projects" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ? AND "projects"."visibility_level" IN (?,?,?))) projects WHERE "projects"."namespace_id" != ? ORDER BY "projects"."id" DESC"
SELECT ? AS one FROM "events" INNER JOIN "push_event_payloads" ON "push_event_payloads"."event_id" = "events"."id" WHERE "events"."action" = ? AND "push_event_payloads"."action" IN (?,?,?) AND "events"."id" = ? LIMIT ?"
SELECT ? AS one FROM "events" INNER JOIN "push_event_payloads" ON "push_event_payloads"."event_id" = "events"."id" WHERE "events"."action" = ? AND "push_event_payloads"."ref_type" = ? AND "events"."id" = ? LIMIT ?"
SELECT ? AS one FROM "events" INNER JOIN "push_event_payloads" ON "push_event_payloads"."event_id" = "events"."id" WHERE "events"."action" = ? AND (NOT EXISTS (SELECT ? FROM "merge_requests" WHERE (merge_requests.source_project_id = events.project_id) AND (merge_requests.source_branch = push_event_payloads.ref) AND ("merge_requests"."state_id" IN (?)))) AND "push_event_payloads"."action" IN (?,?,?) AND "push_event_payloads"."ref_type" = ? AND "events"."id" = ? LIMIT ?"
SELECT ? AS one FROM "events" WHERE "events"."created_at" = ? AND "events"."id" = ? LIMIT ?"
SELECT ? AS one FROM "events" WHERE "events"."fingerprint" = ? LIMIT ?"
SELECT ? AS one FROM "events" WHERE "events"."project_id" IN (SELECT "projects"."id" FROM "projects" WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = ? AND (traversal_ids @> (?)))) AND "events"."created_at" >= ? LIMIT ?"
SELECT ? AS one FROM "projects" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ? AND "projects"."id" = ? LIMIT ?"
SELECT ? AS one FROM "projects" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ? AND "projects"."visibility_level" = ? LIMIT ?"
SELECT ? AS one FROM "projects" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ? LIMIT ?"
SELECT ? AS one FROM ((SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id" FROM (VALUES (?)) AS array_ids(id)), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."project_id" = "array_cte"."id" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ?)) events WHERE "events"."id" = ? LIMIT ?"
SELECT ? AS one FROM ((SELECT "projects".* FROM "projects" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ? AND "projects"."id" IN (SELECT "projects"."id" FROM "projects" INNER JOIN "project_authorizations" ON "projects"."id" = "project_authorizations"."project_id" WHERE "project_authorizations"."user_id" = ?))\nUNION\n(SELECT "projects".* FROM "projects" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ? AND "projects"."visibility_level" IN (?,?,?))) projects LIMIT ?"
SELECT ? AS one FROM ((SELECT "projects".* FROM "projects" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ? AND "projects"."id" IN (SELECT "projects"."id" FROM "projects" INNER JOIN "project_authorizations" ON "projects"."id" = "project_authorizations"."project_id" WHERE "project_authorizations"."user_id" = ?))\nUNION\n(SELECT "projects".* FROM "projects" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ? AND "projects"."visibility_level" IN (?,?,?))) projects WHERE "projects"."namespace_id" != ? LIMIT ?"
SELECT COUNT(*) FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" WHERE "events"."author_id" = ? AND "projects"."visibility_level" = ?"
SELECT COUNT(*) FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" WHERE "events"."author_id" = ? AND (EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (?,?,?)) AND "events"."action" = ? AND "events"."target_type" = ? AND (events.created_at < ?) AND (events.created_at > ?)"
SELECT COUNT(*) FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" WHERE "events"."author_id" = ? AND (EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (?,?,?)) AND "events"."action" = ?"
SELECT COUNT(*) FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" WHERE "events"."author_id" = ? AND (EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (?,?,?))"
SELECT COUNT(*) FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" WHERE "events"."project_id" = ? AND "projects"."visibility_level" = ?"
SELECT COUNT(*) FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" WHERE "events"."project_id" = ? AND (EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (?,?,?)) AND "events"."action" = ? AND "events"."target_type" = ? AND (events.created_at < ?) AND (events.created_at > ?)"
SELECT COUNT(*) FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" WHERE "events"."project_id" = ? AND (EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (?,?,?)) AND "events"."target_type" = ?"
SELECT COUNT(*) FROM "events" INNER JOIN "projects" ON "projects"."id" = "events"."project_id" WHERE "events"."project_id" = ? AND (EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (?,?,?))"
SELECT COUNT(*) FROM "events" WHERE "events"."action" = ? AND "events"."target_id" = ? AND "events"."target_type" = ?"
SELECT COUNT(*) FROM "events" WHERE "events"."action" = ? AND "events"."target_type" = ?"
SELECT COUNT(*) FROM "events" WHERE "events"."action" = ?"
SELECT COUNT(*) FROM "events" WHERE "events"."project_id" = ? AND "events"."target_type" = ?"
SELECT COUNT(*) FROM "events" WHERE "events"."target_id" = ? AND "events"."target_type" = ?"
SELECT COUNT(*) FROM "events" WHERE "events"."target_type" = ? AND "events"."action" = ?"
SELECT COUNT(*) FROM "events" WHERE "events"."target_type" = ?"
SELECT COUNT(*) FROM "events""
SELECT COUNT(*) FROM ((SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id" FROM (VALUES (?)) AS array_ids(id)), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."project_id" = "array_cte"."id" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ?)) events INNER JOIN "projects" ON "projects"."id" = "events"."project_id" WHERE (EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (?,?,?)) AND "events"."action" = ? AND "events"."target_type" = ? AND (events.created_at < ?) AND (events.created_at > ?)"
SELECT COUNT(*) FROM ((SELECT "events".* FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "id" FROM (VALUES (?), (?), (?)) AS array_ids(id)), "recursive_keyset_cte" AS ((SELECT ?::events AS records, array_cte_id_array, events_id_array, ?::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("events"."id") AS events_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "events"."id" AS id FROM "events" WHERE "events"."project_id" = "array_cte"."id" ORDER BY "events"."id" DESC LIMIT ?) events ON ? WHERE "events"."id" IS NOT NULL) array_scope_lateral_query LIMIT ?)\nUNION ALL\n(SELECT (SELECT events FROM "events" WHERE "events"."id" = recursive_keyset_cte.events_id_array[position] LIMIT ?), array_cte_id_array, recursive_keyset_cte.events_id_array[:position_query.position-?]||next_cursor_values.id||recursive_keyset_cte.events_id_array[position_query.position+?:], recursive_keyset_cte.count + ? FROM recursive_keyset_cte,\nLATERAL (SELECT id, position FROM UNNEST(events_id_array) WITH ORDINALITY AS u(id, position) WHERE id IS NOT NULL ORDER BY 1 DESC LIMIT ?) AS position_query,\nLATERAL (SELECT "record"."id" FROM (VALUES (?)) AS nulls LEFT JOIN (SELECT "events"."id" AS id FROM "events" WHERE "events"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND ("events"."id" < recursive_keyset_cte.events_id_array[position]) ORDER BY "events"."id" DESC LIMIT ?) record ON ? LIMIT ?) AS next_cursor_values\n)) SELECT (records).* FROM "recursive_keyset_cte" AS "events" WHERE (count <> ?)) events LIMIT ?)) events INNER JOIN "projects" ON "projects"."id" = "events"."project_id" WHERE (EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (?,?,?))"
SELECT COUNT(*) FROM ((SELECT "projects".* FROM "projects" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ? AND "projects"."id" IN (SELECT "projects"."id" FROM "projects" INNER JOIN "project_authorizations" ON "projects"."id" = "project_authorizations"."project_id" WHERE "project_authorizations"."user_id" = ?))\nUNION\n(SELECT "projects".* FROM "projects" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ? AND "projects"."visibility_level" IN (?,?,?))) projects WHERE "projects"."namespace_id" != ?"
SELECT COUNT(*) FROM ((SELECT "projects".* FROM "projects" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ? AND "projects"."id" IN (SELECT "projects"."id" FROM "projects" INNER JOIN "project_authorizations" ON "projects"."id" = "project_authorizations"."project_id" WHERE "project_authorizations"."user_id" = ?))\nUNION\n(SELECT "projects".* FROM "projects" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ? AND "projects"."visibility_level" IN (?,?,?))) projects"
SELECT COUNT(*) FROM (SELECT ? AS one FROM "events" WHERE "events"."author_id" = ? ORDER BY "events"."created_at" DESC LIMIT ? OFFSET ?) subquery_for_count"
SELECT COUNT(*) FROM (SELECT ? AS one FROM "events" WHERE "events"."author_id" = ? ORDER BY "events"."created_at" DESC LIMIT ?) subquery_for_count"
SELECT COUNT(DISTINCT "events"."author_id") FROM "events" WHERE "events"."created_at" BETWEEN ? AND ?"
SELECT COUNT(DISTINCT "events"."author_id") FROM "events""
SELECT DISTINCT "projects"."id" FROM "projects" LEFT OUTER JOIN "namespaces" ON "namespaces"."id" = "projects"."namespace_id" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ? AND "projects"."visibility_level" = ? ORDER BY "projects"."id" DESC"
SELECT DISTINCT "projects"."id" FROM "projects" LEFT OUTER JOIN "namespaces" ON "namespaces"."id" = "projects"."namespace_id" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ? ORDER BY "projects"."id" DESC"
SELECT DISTINCT "projects"."id" FROM ((SELECT "projects".* FROM "projects" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ? AND "projects"."id" IN (SELECT "projects"."id" FROM "projects" INNER JOIN "project_authorizations" ON "projects"."id" = "project_authorizations"."project_id" WHERE "project_authorizations"."user_id" = ?))\nUNION\n(SELECT "projects".* FROM "projects" WHERE "projects"."id" IN (SELECT DISTINCT "events"."project_id" FROM "events" WHERE (action IN (?,?,?) OR (target_type IN (?,?,?) AND action IN (?,?,?))) AND "events"."author_id" = ? AND (created_at > ?)) AND "projects"."marked_for_deletion_at" IS NULL AND "projects"."pending_delete" = ? AND "projects"."visibility_level" IN (?,?,?))) projects LEFT OUTER JOIN "namespaces" ON "namespaces"."id" = "projects"."namespace_id" ORDER BY "projects"."id" DESC"
SELECT MAX("events"."id") FROM "events" WHERE "events"."created_at" BETWEEN ? AND ?"
SELECT MAX("id")\nFROM "events""
SELECT MIN("events"."id") FROM "events" WHERE "events"."created_at" BETWEEN ? AND ?"
SELECT MIN("events"."id"), MAX("events"."id") FROM "events" WHERE "events"."id" >= ? AND "events"."id" >= ? AND "events"."id" < ? LIMIT ?"
SELECT MIN("events"."id"), MAX("events"."id") FROM "events" WHERE "events"."id" >= ? AND "events"."id" >= ? LIMIT ?"
SELECT SUM("push_event_payloads"."commit_count") FROM "push_event_payloads" WHERE "push_event_payloads"."event_id" IN (WITH "project_ids" AS MATERIALIZED (SELECT source_id AS id FROM "routes" WHERE "routes"."source_type" = ? AND "routes"."path" LIKE ?) SELECT "events"."id" FROM ((SELECT "events".* FROM "events" WHERE (project_id IN (SELECT id FROM project_ids)) AND "events"."created_at" >= ? AND "events"."created_at" <= ? AND "events"."action" = ? AND "events"."target_type" IS NULL)\nUNION ALL\n(SELECT "events".* FROM "events" WHERE (project_id IN (SELECT id FROM project_ids)) AND "events"."created_at" >= ? AND "events"."created_at" <= ? AND "events"."action" IN (?,?,?) AND "events"."target_type" IN (?,?,?))) events WHERE "events"."action" = ?)"
SELECT date(created_at + INTERVAL ?) AS date, COUNT(*) AS num_events FROM ((SELECT "events"."created_at" FROM "events" WHERE "events"."author_id" = ? AND "events"."created_at" BETWEEN ? AND ? AND "events"."project_id" = ? AND "events"."action" = ?)\nUNION ALL\n(SELECT "events"."created_at" FROM "events" WHERE "events"."author_id" = ? AND "events"."created_at" BETWEEN ? AND ? AND "events"."project_id" = ? AND "events"."action" IN (?,?,?) AND "events"."target_type" IN (?,?,?))\nUNION ALL\n(SELECT "events"."created_at" FROM "events" WHERE "events"."author_id" = ? AND "events"."created_at" BETWEEN ? AND ? AND "events"."project_id" = ? AND "events"."action" IN (?,?,?) AND "events"."target_type" = ?)\nUNION ALL\n(SELECT "events"."created_at" FROM "events" WHERE "events"."author_id" = ? AND "events"."created_at" BETWEEN ? AND ? AND "events"."project_id" = ? AND "events"."action" = ?)) events GROUP BY "date""
SELECT date(created_at + INTERVAL ?) AS date, COUNT(*) AS num_events FROM ((SELECT "events"."created_at" FROM "events" WHERE "events"."author_id" = ? AND "events"."created_at" BETWEEN ? AND ? AND "events"."project_id" IN (?,?,?) AND "events"."action" = ?)\nUNION ALL\n(SELECT "events"."created_at" FROM "events" WHERE "events"."author_id" = ? AND "events"."created_at" BETWEEN ? AND ? AND "events"."project_id" IN (?,?,?) AND "events"."action" IN (?,?,?) AND "events"."target_type" IN (?,?,?))\nUNION ALL\n(SELECT "events"."created_at" FROM "events" WHERE "events"."author_id" = ? AND "events"."created_at" BETWEEN ? AND ? AND "events"."project_id" IN (?,?,?) AND "events"."action" IN (?,?,?) AND "events"."target_type" = ?)\nUNION ALL\n(SELECT "events"."created_at" FROM "events" WHERE "events"."author_id" = ? AND "events"."created_at" BETWEEN ? AND ? AND "events"."project_id" IN (?,?,?) AND "events"."action" = ?)) events GROUP BY "date""
SELECT date(created_at + INTERVAL ?) AS date, COUNT(*) AS num_events FROM ((SELECT "events"."created_at" FROM "events" WHERE "events"."author_id" = ? AND "events"."created_at" BETWEEN ? AND ? AND "events"."project_id" IN (SELECT "project_features"."project_id" FROM "project_features" WHERE ("project_features"."repository_access_level" IN (?,?,?) OR "project_features"."repository_access_level" IS NULL) AND "project_features"."project_id" = ?) AND "events"."action" = ?)\nUNION ALL\n(SELECT "events"."created_at" FROM "events" WHERE "events"."author_id" = ? AND "events"."created_at" BETWEEN ? AND ? AND "events"."project_id" IN (SELECT "project_features"."project_id" FROM "project_features" WHERE ("project_features"."issues_access_level" IN (?,?,?) OR "project_features"."issues_access_level" IS NULL) AND "project_features"."project_id" = ?) AND "events"."action" IN (?,?,?) AND "events"."target_type" IN (?,?,?))\nUNION ALL\n(SELECT "events"."created_at" FROM "events" WHERE "events"."author_id" = ? AND "events"."created_at" BETWEEN ? AND ? AND "events"."project_id" IN (SELECT "project_features"."project_id" FROM "project_features" WHERE ("project_features"."merge_requests_access_level" IN (?,?,?) OR "project_features"."merge_requests_access_level" IS NULL) AND "project_features"."project_id" = ?) AND "events"."action" IN (?,?,?) AND "events"."target_type" = ?)\nUNION ALL\n(SELECT "events"."created_at" FROM "events" WHERE "events"."author_id" = ? AND "events"."created_at" BETWEEN ? AND ? AND "events"."project_id" IN (SELECT "project_features"."project_id" FROM "project_features" WHERE ("project_features"."merge_requests_access_level" IN (?,?,?) OR "project_features"."merge_requests_access_level" IS NULL) AND "project_features"."project_id" = ?) AND "events"."action" = ?)) events GROUP BY "date""
SELECT date(created_at + INTERVAL ?) AS date, COUNT(*) AS num_events FROM ((SELECT "events"."created_at" FROM "events" WHERE "events"."author_id" = ? AND "events"."created_at" BETWEEN ? AND ? AND "events"."project_id" IN (SELECT "project_features"."project_id" FROM "project_features" WHERE ("project_features"."repository_access_level" IS NULL OR "project_features"."repository_access_level" IN (?,?,?) OR ("project_features"."repository_access_level" = ? AND EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = project_features.project_id) AND (project_authorizations.access_level >= ?)))) AND "project_features"."project_id" = ?) AND "events"."action" = ?)\nUNION ALL\n(SELECT "events"."created_at" FROM "events" WHERE "events"."author_id" = ? AND "events"."created_at" BETWEEN ? AND ? AND "events"."project_id" IN (SELECT "project_features"."project_id" FROM "project_features" WHERE ("project_features"."issues_access_level" IS NULL OR "project_features"."issues_access_level" IN (?,?,?) OR ("project_features"."issues_access_level" = ? AND EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = project_features.project_id) AND (project_authorizations.access_level >= ?)))) AND "project_features"."project_id" = ?) AND "events"."action" IN (?,?,?) AND "events"."target_type" IN (?,?,?))\nUNION ALL\n(SELECT "events"."created_at" FROM "events" WHERE "events"."author_id" = ? AND "events"."created_at" BETWEEN ? AND ? AND "events"."project_id" IN (SELECT "project_features"."project_id" FROM "project_features" WHERE ("project_features"."merge_requests_access_level" IS NULL OR "project_features"."merge_requests_access_level" IN (?,?,?) OR ("project_features"."merge_requests_access_level" = ? AND EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = project_features.project_id) AND (project_authorizations.access_level >= ?)))) AND "project_features"."project_id" = ?) AND "events"."action" IN (?,?,?) AND "events"."target_type" = ?)\nUNION ALL\n(SELECT "events"."created_at" FROM "events" WHERE "events"."author_id" = ? AND "events"."created_at" BETWEEN ? AND ? AND "events"."project_id" IN (SELECT "project_features"."project_id" FROM "project_features" WHERE ("project_features"."merge_requests_access_level" IS NULL OR "project_features"."merge_requests_access_level" IN (?,?,?) OR ("project_features"."merge_requests_access_level" = ? AND EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = project_features.project_id) AND (project_authorizations.access_level >= ?)))) AND "project_features"."project_id" = ?) AND "events"."action" = ?)) events GROUP BY "date""
SELECT date(created_at + INTERVAL ?) AS date, COUNT(*) AS num_events FROM ((SELECT "events"."created_at" FROM "events" WHERE "events"."author_id" = ? AND "events"."created_at" BETWEEN ? AND ? AND "events"."project_id" IN (SELECT "project_features"."project_id" FROM "project_features" WHERE ("project_features"."repository_access_level" IS NULL OR "project_features"."repository_access_level" IN (?,?,?) OR ("project_features"."repository_access_level" = ? AND EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = project_features.project_id) AND (project_authorizations.access_level >= ?)))) AND "project_features"."project_id" IN (?,?,?)) AND "events"."action" = ?)\nUNION ALL\n(SELECT "events"."created_at" FROM "events" WHERE "events"."author_id" = ? AND "events"."created_at" BETWEEN ? AND ? AND "events"."project_id" IN (SELECT "project_features"."project_id" FROM "project_features" WHERE ("project_features"."issues_access_level" IS NULL OR "project_features"."issues_access_level" IN (?,?,?) OR ("project_features"."issues_access_level" = ? AND EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = project_features.project_id) AND (project_authorizations.access_level >= ?)))) AND "project_features"."project_id" IN (?,?,?)) AND "events"."action" IN (?,?,?) AND "events"."target_type" IN (?,?,?))\nUNION ALL\n(SELECT "events"."created_at" FROM "events" WHERE "events"."author_id" = ? AND "events"."created_at" BETWEEN ? AND ? AND "events"."project_id" IN (SELECT "project_features"."project_id" FROM "project_features" WHERE ("project_features"."merge_requests_access_level" IS NULL OR "project_features"."merge_requests_access_level" IN (?,?,?) OR ("project_features"."merge_requests_access_level" = ? AND EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = project_features.project_id) AND (project_authorizations.access_level >= ?)))) AND "project_features"."project_id" IN (?,?,?)) AND "events"."action" IN (?,?,?) AND "events"."target_type" = ?)\nUNION ALL\n(SELECT "events"."created_at" FROM "events" WHERE "events"."author_id" = ? AND "events"."created_at" BETWEEN ? AND ? AND "events"."project_id" IN (SELECT "project_features"."project_id" FROM "project_features" WHERE ("project_features"."merge_requests_access_level" IS NULL OR "project_features"."merge_requests_access_level" IN (?,?,?) OR ("project_features"."merge_requests_access_level" = ? AND EXISTS (SELECT ? FROM "project_authorizations" WHERE "project_authorizations"."user_id" = ? AND (project_authorizations.project_id = project_features.project_id) AND (project_authorizations.access_level >= ?)))) AND "project_features"."project_id" IN (?,?,?)) AND "events"."action" = ?)) events GROUP BY "date""
WITH "project_ids" AS MATERIALIZED (SELECT source_id AS id FROM "routes" WHERE "routes"."source_type" = ? AND "routes"."path" LIKE ?) SELECT COUNT(*) AS count_all, "events"."author_id" AS events_author_id, "events"."target_type" AS events_target_type, "events"."action" AS events_action FROM ((SELECT "events".* FROM "events" WHERE (project_id IN (SELECT id FROM project_ids)) AND "events"."created_at" >= ? AND "events"."created_at" <= ? AND "events"."action" = ? AND "events"."target_type" IS NULL)\nUNION ALL\n(SELECT "events".* FROM "events" WHERE (project_id IN (SELECT id FROM project_ids)) AND "events"."created_at" >= ? AND "events"."created_at" <= ? AND "events"."action" IN (?,?,?) AND "events"."target_type" IN (?,?,?))) events GROUP BY "events"."author_id", "events"."target_type", "events"."action""
WITH hashed_attributes AS MATERIALIZED (SELECT CAST(? || md5(CAST(author_id AS text)) AS bit(32)) AS attr_hash_32_bits FROM "events" WHERE "events"."created_at" BETWEEN ? AND ? AND "events"."id" >= ? AND "events"."id" < ? AND author_id IS NOT NULL)\nSELECT (attr_hash_32_bits & ?)::int AS bucket_num,\n (? - floor(log(?, min((attr_hash_32_bits & ?)::int))))::int as bucket_hash\nFROM hashed_attributes\nGROUP BY 1"
```
</details>
### Links / references
- prune events worker: https://gitlab.com/gitlab-org/gitlab-ce/blob/1fbda39c8dd8774d13832d5492e800b66ba90d6d/app/workers/prune_old_events_worker.rb
issue