rspec integration pg14 4/12
Passed Started
by
@dstull
Doug Stull
1 with invalid project2 behaves like not found request3 returns not found4 behaves like empty recipe for not found package5 with invalid recipe url6 returns not found7 behaves like handling empty values for username and channel8 username: "username", channel: "channel", status: :ok9 returns the correct status code10 username: "username", channel: "_", status: :bad_request11 returns the correct status code12 username: "_", channel: "channel", status: :bad_request_or_not_found13 returns the correct status code14 username: "_", channel: "_", status: :ok_or_not_found15 returns the correct status code16 with existing package17 returns a hash of md5 values for the files18 GET /api/v4/packages/conan/v1/conans/:package_name/package_version/:package_username/:package_channel/digest19 behaves like recipe download_urls endpoint20 behaves like conan FIPS mode21 when FIPS mode is enabled22 behaves like returning response status23 returns not_found24 behaves like rejects invalid recipe25 with invalid recipe path26 returns 40027 behaves like rejects recipe for invalid project28 with invalid project29 behaves like not found request30 returns not found31 behaves like recipe download_urls32 returns the download_urls for the recipe files33 behaves like not selecting a package with the wrong type34 with a nuget package with same name and version35 calls the presenter with a nil package36 behaves like handling empty values for username and channel37 username: "username", channel: "channel", status: :ok38 returns the correct status code39 username: "username", channel: "_", status: :bad_request40 returns the correct status code41 username: "_", channel: "channel", status: :bad_request_or_not_found42 returns the correct status code43 username: "_", channel: "_", status: :ok_or_not_found44 returns the correct status code45 GET /api/v4/packages/conan/v1/conans/:package_name/package_version/:package_username/:package_channel/packages/:conan_package_reference/download_urls46 behaves like package download_urls endpoint47 behaves like conan FIPS mode48 when FIPS mode is enabled49 behaves like returning response status50 returns not_found51 behaves like rejects invalid recipe52 with invalid recipe path53 returns 40054 behaves like rejects recipe for invalid project55 with invalid project56 behaves like not found request57 returns not found58 behaves like package download_urls59 returns the download_urls for the package files60 behaves like not selecting a package with the wrong type61 with a nuget package with same name and version62 calls the presenter with a nil package63 behaves like handling empty values for username and channel64 username: "username", channel: "channel", status: :ok65 returns the correct status code66 username: "username", channel: "_", status: :bad_request67 returns the correct status code68 username: "_", channel: "channel", status: :bad_request_or_not_found69 returns the correct status code70 username: "_", channel: "_", status: :ok_or_not_found71 returns the correct status code72 GET /api/v4/packages/conan/v1/conans/:package_name/package_version/:package_username/:package_channel/download_urls73 behaves like recipe download_urls endpoint74 behaves like conan FIPS mode75 when FIPS mode is enabled76 behaves like returning response status77 returns not_found78 behaves like rejects invalid recipe79 with invalid recipe path80 returns 40081 behaves like rejects recipe for invalid project82 with invalid project83 behaves like not found request84 returns not found85 behaves like recipe download_urls86 returns the download_urls for the recipe files87 behaves like not selecting a package with the wrong type88 with a nuget package with same name and version89 calls the presenter with a nil package90 behaves like handling empty values for username and channel91 username: "username", channel: "channel", status: :ok92 returns the correct status code93 username: "username", channel: "_", status: :bad_request94 returns the correct status code95 username: "_", channel: "channel", status: :bad_request_or_not_found96 returns the correct status code97 username: "_", channel: "_", status: :ok_or_not_found98 returns the correct status code99 GET /api/v4/packages/conan/v1/conans/:package_name/package_version/:package_username/:package_channel/packages/:conan_package_reference/digest100 behaves like package download_urls endpoint101 behaves like conan FIPS mode102 when FIPS mode is enabled103 behaves like returning response status104 returns not_found105 behaves like rejects invalid recipe106 with invalid recipe path107 returns 400108 behaves like rejects recipe for invalid project109 with invalid project110 behaves like not found request111 returns not found112 behaves like package download_urls113 returns the download_urls for the package files114 behaves like not selecting a package with the wrong type115 with a nuget package with same name and version116 calls the presenter with a nil package117 behaves like handling empty values for username and channel118 username: "username", channel: "channel", status: :ok119 returns the correct status code120 username: "username", channel: "_", status: :bad_request121 returns the correct status code122 username: "_", channel: "channel", status: :bad_request_or_not_found123 returns the correct status code124 username: "_", channel: "_", status: :ok_or_not_found125 returns the correct status code126 POST /api/v4/packages/conan/v1/conans/:package_name/package_version/:package_username/:package_channel/upload_urls127 behaves like recipe upload_urls endpoint128 returns a set of upload urls for the files requested129 behaves like conan FIPS mode130 when FIPS mode is enabled131 behaves like returning response status132 returns not_found133 behaves like rejects invalid recipe134 with invalid recipe path135 returns 400136 behaves like rejects invalid upload_url params137 with unaccepted json format138 returns 400139 behaves like handling empty values for username and channel140 username: "username", channel: "channel", status: :ok141 returns the correct status code142 username: "username", channel: "_", status: :bad_request143 returns the correct status code144 username: "_", channel: "channel", status: :bad_request_or_not_found145 returns the correct status code146 username: "_", channel: "_", status: :ok_or_not_found147 returns the correct status code148 with conan_sources and conan_export files149 returns upload urls for the additional files150 with an invalid file151 does not return the invalid file as an upload_url152 POST /api/v4/packages/conan/v1/conans/:package_name/package_version/:package_username/:package_channel/packages/:conan_package_reference/upload_urls153 behaves like package upload_urls endpoint154 returns a set of upload urls for the files requested155 behaves like conan FIPS mode156 when FIPS mode is enabled157 behaves like returning response status158 returns not_found159 behaves like rejects invalid recipe160 with invalid recipe path161 returns 400162 behaves like rejects invalid upload_url params163 with unaccepted json format164 returns 400165 behaves like handling empty values for username and channel166 username: "username", channel: "channel", status: :ok167 returns the correct status code168 username: "username", channel: "_", status: :bad_request169 returns the correct status code170 username: "_", channel: "channel", status: :bad_request_or_not_found171 returns the correct status code172 username: "_", channel: "_", status: :ok_or_not_found173 returns the correct status code174 with invalid files175 returns upload urls only for the valid requested files176 DELETE /api/v4/packages/conan/v1/conans/:package_name/package_version/:package_username/:package_channel177 behaves like delete package endpoint178 returns unauthorized for users without valid permission179 behaves like conan FIPS mode180 when FIPS mode is enabled181 behaves like returning response status182 returns not_found183 behaves like rejects invalid recipe184 with invalid recipe path185 returns 400186 behaves like handling empty values for username and channel187 username: "username", channel: "channel", status: :ok188 returns the correct status code189 username: "username", channel: "_", status: :bad_request190 returns the correct status code191 username: "_", channel: "channel", status: :bad_request_or_not_found192 returns the correct status code193 username: "_", channel: "_", status: :ok_or_not_found194 returns the correct status code195 with delete permissions196 deletes a package197 behaves like a package tracking event198 creates a gitlab tracking event delete_package199 file download endpoints200 GET /api/v4/packages/conan/v1/files/:package_name/package_version/:package_username/:package_channel/:recipe_revision/export/:file_name201 behaves like recipe file download endpoint202 behaves like conan FIPS mode203 when FIPS mode is enabled204 behaves like returning response status205 returns not_found206 behaves like a public project with packages207 returns the file208 behaves like allows download with no token209 with no private token210 returns 200211 behaves like bumping the package last downloaded at field212DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and213from Rails 7.1 will use the default Ruby implementation.214You can set `config.active_support.remove_deprecated_time_with_zone_name = true`215to enable the new behavior now.216 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)217 bumps last_downloaded_at218 behaves like an internal project with packages219 returns the file220 behaves like denies download with no token221 with no private token222 returns 404223 behaves like bumping the package last downloaded at field224DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and225from Rails 7.1 will use the default Ruby implementation.226You can set `config.active_support.remove_deprecated_time_with_zone_name = true`227to enable the new behavior now.228 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)229 bumps last_downloaded_at230 behaves like a private project with packages231 returns the file232 denies download when not enough permissions233 behaves like denies download with no token234 with no private token235 returns 404236 behaves like bumping the package last downloaded at field237DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and238from Rails 7.1 will use the default Ruby implementation.239You can set `config.active_support.remove_deprecated_time_with_zone_name = true`240to enable the new behavior now.241 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)242 bumps last_downloaded_at243 behaves like handling empty values for username and channel244 username: "username", channel: "channel", status: :ok245 returns the correct status code246 username: "username", channel: "_", status: :bad_request247 returns the correct status code248 username: "_", channel: "channel", status: :bad_request_or_not_found249 returns the correct status code250 username: "_", channel: "_", status: :ok_or_not_found251 returns the correct status code252 behaves like project not found by recipe253 behaves like not found request254 returns not found255 GET /api/v4/packages/conan/v1/files/:package_name/package_version/:package_username/:package_channel/:recipe_revision/package/:conan_package_reference/:package_revision/:file_name256 behaves like package file download endpoint257 behaves like conan FIPS mode258 when FIPS mode is enabled259 behaves like returning response status260 returns not_found261 behaves like a public project with packages262 returns the file263 behaves like allows download with no token264 with no private token265 returns 200266 behaves like bumping the package last downloaded at field267DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and268from Rails 7.1 will use the default Ruby implementation.269You can set `config.active_support.remove_deprecated_time_with_zone_name = true`270to enable the new behavior now.271 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)272 bumps last_downloaded_at273 behaves like an internal project with packages274 returns the file275 behaves like denies download with no token276 with no private token277 returns 404278 behaves like bumping the package last downloaded at field279DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and280from Rails 7.1 will use the default Ruby implementation.281You can set `config.active_support.remove_deprecated_time_with_zone_name = true`282to enable the new behavior now.283 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)284 bumps last_downloaded_at285 behaves like a private project with packages286 returns the file287 denies download when not enough permissions288 behaves like denies download with no token289 with no private token290 returns 404291 behaves like bumping the package last downloaded at field292DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and293from Rails 7.1 will use the default Ruby implementation.294You can set `config.active_support.remove_deprecated_time_with_zone_name = true`295to enable the new behavior now.296 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)297 bumps last_downloaded_at298 behaves like handling empty values for username and channel299 username: "username", channel: "channel", status: :ok300 returns the correct status code301 username: "username", channel: "_", status: :bad_request302 returns the correct status code303 username: "_", channel: "channel", status: :bad_request_or_not_found304 returns the correct status code305 username: "_", channel: "_", status: :ok_or_not_found306 returns the correct status code307 tracking the conan_package.tgz download308 behaves like a package tracking event309 creates a gitlab tracking event pull_package310 behaves like project not found by recipe311 behaves like not found request312 returns not found313 file upload endpoints314 PUT /api/v4/packages/conan/v1/files/:package_name/package_version/:package_username/:package_channel/:recipe_revision/export/:file_name/authorize315 behaves like workhorse authorize endpoint316 behaves like conan FIPS mode317 when FIPS mode is enabled318 behaves like returning response status319 returns not_found320 behaves like rejects invalid recipe321 with invalid recipe path322 returns 400323 behaves like rejects invalid file_name324 with invalid file_name325 returns 400326 behaves like workhorse authorization327 authorizes posting package with a valid token328 rejects request without a valid token329 rejects request without a valid permission330 rejects requests that bypassed gitlab-workhorse331 when using remote storage332 when direct upload is enabled333 responds with status 200, location of package remote store and object details334 when direct upload is disabled335 handles as a local file336 behaves like handling empty values for username and channel337 username: "username", channel: "channel", status: :ok338 returns the correct status code339 username: "username", channel: "_", status: :bad_request340 returns the correct status code341 username: "_", channel: "channel", status: :bad_request_or_not_found342 returns the correct status code343 username: "_", channel: "_", status: :ok_or_not_found344 returns the correct status code345 PUT /api/v4/packages/conan/v1/files/:package_name/package_version/:package_username/:package_channel/:recipe_revision/export/:conan_package_reference/:package_revision/:file_name/authorize346 behaves like workhorse authorize endpoint347 behaves like conan FIPS mode348 when FIPS mode is enabled349 behaves like returning response status350 returns not_found351 behaves like rejects invalid recipe352 with invalid recipe path353 returns 400354 behaves like rejects invalid file_name355 with invalid file_name356 returns 400357 behaves like workhorse authorization358 authorizes posting package with a valid token359 rejects request without a valid token360 rejects request without a valid permission361 rejects requests that bypassed gitlab-workhorse362 when using remote storage363 when direct upload is enabled364 responds with status 200, location of package remote store and object details365 when direct upload is disabled366 handles as a local file367 behaves like handling empty values for username and channel368 username: "username", channel: "channel", status: :ok369 returns the correct status code370 username: "username", channel: "_", status: :bad_request371 returns the correct status code372 username: "_", channel: "channel", status: :bad_request_or_not_found373 returns the correct status code374 username: "_", channel: "_", status: :ok_or_not_found375 returns the correct status code376 PUT /api/v4/packages/conan/v1/files/:package_name/package_version/:package_username/:package_channel/:recipe_revision/export/:file_name377 behaves like workhorse recipe file upload endpoint378 behaves like conan FIPS mode379 when FIPS mode is enabled380 behaves like returning response status381 returns not_found382 behaves like rejects invalid recipe383 with invalid recipe path384 returns 400385 behaves like rejects invalid file_name386 with invalid file_name387 returns 400388 behaves like uploads a package file389 file size above maximum limit390 handles as a local file391 with object storage disabled392 without a file from workhorse393 rejects the request394 with a file395 behaves like package workhorse uploads396 without a workhorse header397 logs an error398 behaves like returning response status399 returns forbidden400 without a token401 rejects request without a token402 when params from workhorse are correct403 creates package and stores package file404 with existing package405 does not create a new package406 marked as pending_destruction407 does not create a new package408 with object storage enabled409 and direct upload enabled410 with invalid remote_id: 123123411 responds with status 403412 with invalid remote_id: ../../123123413 responds with status 403414 with valid remote_id415 creates package and stores package file416 behaves like handling empty values for username and channel417 username: "username", channel: "channel", status: :ok418 returns the correct status code419 username: "username", channel: "_", status: :bad_request420 returns the correct status code421 username: "_", channel: "channel", status: :bad_request_or_not_found422 returns the correct status code423 username: "_", channel: "_", status: :ok_or_not_found424 returns the correct status code425 behaves like handling validation error for package426 with validation error427 returns 400428 PUT /api/v4/packages/conan/v1/files/:package_name/package_version/:package_username/:package_channel/:recipe_revision/export/:conan_package_reference/:package_revision/:file_name429 behaves like workhorse package file upload endpoint430 behaves like rejects invalid recipe431 with invalid recipe path432 returns 400433 behaves like rejects invalid file_name434 with invalid file_name435 returns 400436 behaves like uploads a package file437 file size above maximum limit438 handles as a local file439 with object storage disabled440 without a file from workhorse441 rejects the request442 with a file443 behaves like package workhorse uploads444 without a workhorse header445 logs an error446 behaves like returning response status447 returns forbidden448 without a token449 rejects request without a token450 when params from workhorse are correct451 creates package and stores package file452 with existing package453 does not create a new package454 marked as pending_destruction455 does not create a new package456 with object storage enabled457 and direct upload enabled458 with invalid remote_id: 123123459 responds with status 403460 with invalid remote_id: ../../123123461 responds with status 403462 with valid remote_id463 creates package and stores package file464 behaves like handling empty values for username and channel465 username: "username", channel: "channel", status: :ok466 returns the correct status code467 username: "username", channel: "_", status: :bad_request468 returns the correct status code469 username: "_", channel: "channel", status: :bad_request_or_not_found470 returns the correct status code471 username: "_", channel: "_", status: :ok_or_not_found472 returns the correct status code473 behaves like handling validation error for package474 with validation error475 returns 400476 tracking the conan_package.tgz upload477 behaves like a package tracking event478 creates a gitlab tracking event push_package479API::ComposerPackages480 GET /api/v4/group/:id/-/packages/composer/packages481 with valid project482 with a public group483 with basic auth484 project_visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: true, include_package: :include_package485 behaves like Composer package index486 behaves like Composer package index with version487 returns the package index488 with version 2489 behaves like Composer package index with version490 returns the package index491 project_visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: true, include_package: :include_package492 behaves like Composer package index493 behaves like Composer package index with version494 returns the package index495 with version 2496 behaves like Composer package index with version497 returns the package index498 project_visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: true, include_package: :include_package499 behaves like Composer package index500 behaves like Composer package index with version501 returns the package index502 with version 2503 behaves like Composer package index with version504 returns the package index505 project_visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: true, include_package: :include_package506 behaves like Composer package index507 behaves like Composer package index with version508 returns the package index509 with version 2510 behaves like Composer package index with version511 returns the package index512 project_visibility_level: "PUBLIC", user_role: :anonymous, member: false, user_token: true, include_package: :include_package513 behaves like Composer package index514 behaves like Composer package index with version515 returns the package index516 with version 2517 behaves like Composer package index with version518 returns the package index519 project_visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: true, include_package: :include_package520 behaves like Composer package index521 behaves like Composer package index with version522 returns the package index523 with version 2524 behaves like Composer package index with version525 returns the package index526 project_visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: true, include_package: :does_not_include_package527 behaves like Composer package index528 behaves like Composer package index with version529 returns the package index530 with version 2531 behaves like Composer package index with version532 returns the package index533 project_visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: true, include_package: :does_not_include_package534 behaves like Composer package index535 behaves like Composer package index with version536 returns the package index537 with version 2538 behaves like Composer package index with version539 returns the package index540 project_visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: true, include_package: :does_not_include_package541 behaves like Composer package index542 behaves like Composer package index with version543 returns the package index544 with version 2545 behaves like Composer package index with version546 returns the package index547 project_visibility_level: "PRIVATE", user_role: :anonymous, member: false, user_token: true, include_package: :does_not_include_package548 behaves like Composer package index549 behaves like Composer package index with version550 returns the package index551 with version 2552 behaves like Composer package index with version553 returns the package index554 project_visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: false, include_package: :does_not_include_package555 behaves like Composer package index556 behaves like Composer package index with version557 returns the package index558 with version 2559 behaves like Composer package index with version560 returns the package index561 project_visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: false, include_package: :does_not_include_package562 behaves like Composer package index563 behaves like Composer package index with version564 returns the package index565 with version 2566 behaves like Composer package index with version567 returns the package index568 project_visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: false, include_package: :does_not_include_package569 behaves like Composer package index570 behaves like Composer package index with version571 returns the package index572 with version 2573 behaves like Composer package index with version574 returns the package index575 project_visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: false, include_package: :does_not_include_package576 behaves like Composer package index577 behaves like Composer package index with version578 returns the package index579 with version 2580 behaves like Composer package index with version581 returns the package index582 project_visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: false, include_package: :include_package583 behaves like Composer package index584 behaves like Composer package index with version585 returns the package index586 with version 2587 behaves like Composer package index with version588 returns the package index589 project_visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: false, include_package: :include_package590 behaves like Composer package index591 behaves like Composer package index with version592 returns the package index593 with version 2594 behaves like Composer package index with version595 returns the package index596 project_visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: false, include_package: :include_package597 behaves like Composer package index598 behaves like Composer package index with version599 returns the package index600 with version 2601 behaves like Composer package index with version602 returns the package index603 project_visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: false, include_package: :include_package604 behaves like Composer package index605 behaves like Composer package index with version606 returns the package index607 with version 2608 behaves like Composer package index with version609 returns the package index610 with private token header auth611 project_visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: true, expected_status: :success, include_package: :include_package612 behaves like Composer package index613 behaves like Composer package index with version614 returns the package index615 with version 2616 behaves like Composer package index with version617 returns the package index618 project_visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: true, expected_status: :success, include_package: :include_package619 behaves like Composer package index620 behaves like Composer package index with version621 returns the package index622 with version 2623 behaves like Composer package index with version624 returns the package index625 project_visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: true, expected_status: :success, include_package: :include_package626 behaves like Composer package index627 behaves like Composer package index with version628 returns the package index629 with version 2630 behaves like Composer package index with version631 returns the package index632 project_visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: true, expected_status: :success, include_package: :include_package633 behaves like Composer package index634 behaves like Composer package index with version635 returns the package index636 with version 2637 behaves like Composer package index with version638 returns the package index639 project_visibility_level: "PUBLIC", user_role: :anonymous, member: false, user_token: true, expected_status: :success, include_package: :include_package640 behaves like Composer package index641 behaves like Composer package index with version642 returns the package index643 with version 2644 behaves like Composer package index with version645 returns the package index646 project_visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: true, expected_status: :success, include_package: :include_package647 behaves like Composer package index648 behaves like Composer package index with version649 returns the package index650 with version 2651 behaves like Composer package index with version652 returns the package index653 project_visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: true, expected_status: :success, include_package: :does_not_include_package654 behaves like Composer package index655 behaves like Composer package index with version656 returns the package index657 with version 2658 behaves like Composer package index with version659 returns the package index660 project_visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: true, expected_status: :success, include_package: :does_not_include_package661 behaves like Composer package index662 behaves like Composer package index with version663 returns the package index664 with version 2665 behaves like Composer package index with version666 returns the package index667 project_visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: true, expected_status: :success, include_package: :does_not_include_package668 behaves like Composer package index669 behaves like Composer package index with version670 returns the package index671 with version 2672 behaves like Composer package index with version673 returns the package index674 project_visibility_level: "PRIVATE", user_role: :anonymous, member: false, user_token: true, expected_status: :success, include_package: :does_not_include_package675 behaves like Composer package index676 behaves like Composer package index with version677 returns the package index678 with version 2679 behaves like Composer package index with version680 returns the package index681 project_visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: false, expected_status: :unauthorized, include_package: nil682 behaves like Composer package index683 behaves like Composer package index with version684 returns the package index685 with version 2686 behaves like Composer package index with version687 returns the package index688 project_visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: false, expected_status: :unauthorized, include_package: nil689 behaves like Composer package index690 behaves like Composer package index with version691 returns the package index692 with version 2693 behaves like Composer package index with version694 returns the package index695 project_visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: false, expected_status: :unauthorized, include_package: nil696 behaves like Composer package index697 behaves like Composer package index with version698 returns the package index699 with version 2700 behaves like Composer package index with version701 returns the package index702 project_visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: false, expected_status: :unauthorized, include_package: nil703 behaves like Composer package index704 behaves like Composer package index with version705 returns the package index706 with version 2707 behaves like Composer package index with version708 returns the package index709 project_visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: false, expected_status: :unauthorized, include_package: nil710 behaves like Composer package index711 behaves like Composer package index with version712 returns the package index713 with version 2714 behaves like Composer package index with version715 returns the package index716 project_visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: false, expected_status: :unauthorized, include_package: nil717 behaves like Composer package index718 behaves like Composer package index with version719 returns the package index720 with version 2721 behaves like Composer package index with version722 returns the package index723 project_visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: false, expected_status: :unauthorized, include_package: nil724 behaves like Composer package index725 behaves like Composer package index with version726 returns the package index727 with version 2728 behaves like Composer package index with version729 returns the package index730 project_visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: false, expected_status: :unauthorized, include_package: nil731 behaves like Composer package index732 behaves like Composer package index with version733 returns the package index734 with version 2735 behaves like Composer package index with version736 returns the package index737 with a private group738 behaves like Composer access with deploy tokens739 group deploy token740 behaves like a deploy token for Composer GET requests741 with deploy token headers742 valid token743 behaves like returning response status744 returns success745 invalid token746 behaves like returning response status747 returns not_found748 project deploy token749 behaves like a deploy token for Composer GET requests750 with deploy token headers751 valid token752 behaves like returning response status753 returns success754 invalid token755 behaves like returning response status756 returns not_found757 with access to the api758 project_visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: true, include_package: :include_package759 behaves like Composer package index760 behaves like Composer package index with version761 returns the package index762 with version 2763 behaves like Composer package index with version764 returns the package index765 project_visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: true, include_package: :does_not_include_package766 behaves like Composer package index767 behaves like Composer package index with version768 returns the package index769 with version 2770 behaves like Composer package index with version771 returns the package index772 without access to the api773 project_visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: false774 behaves like process Composer api request775 for user type developer776 behaves like returning response status777 returns not_found778 project_visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: true779 behaves like process Composer api request780 for user type developer781 behaves like returning response status782 returns not_found783 project_visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: false784 behaves like process Composer api request785 for user type developer786 behaves like returning response status787 returns not_found788 project_visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: false789 behaves like process Composer api request790 for user type guest791 behaves like returning response status792 returns not_found793 project_visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: true794 behaves like process Composer api request795 for user type guest796 behaves like returning response status797 returns not_found798 project_visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: false799 behaves like process Composer api request800 for user type guest801 behaves like returning response status802 returns not_found803 project_visibility_level: "PRIVATE", user_role: :anonymous, member: false, user_token: true804 behaves like process Composer api request805 for user type anonymous806 behaves like returning response status807 returns not_found808 behaves like rejects Composer access with unknown group id809 with an unknown group810 as anonymous811 behaves like process Composer api request812 for user type anonymous813 behaves like returning response status814 returns not_found815 as authenticated user816 behaves like process Composer api request817 for user type anonymous818 behaves like returning response status819 returns not_found820 GET /api/v4/group/:id/-/packages/composer/p/:sha.json821 with valid project822 project_visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: true, shared_examples_name: "Composer provider index", expected_status: :success823 behaves like Composer provider index824 returns the package index825 project_visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized826 behaves like process Composer api request827 for user type developer828 behaves like returning response status829 returns unauthorized830 project_visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: true, shared_examples_name: "Composer provider index", expected_status: :success831 behaves like Composer provider index832 returns the package index833 project_visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized834 behaves like process Composer api request835 for user type developer836 behaves like returning response status837 returns unauthorized838 project_visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: true, shared_examples_name: "Composer provider index", expected_status: :success839 behaves like Composer provider index840 returns the package index841 project_visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized842 behaves like process Composer api request843 for user type guest844 behaves like returning response status845 returns unauthorized846 project_visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: true, shared_examples_name: "Composer provider index", expected_status: :success847 behaves like Composer provider index848 returns the package index849 project_visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized850 behaves like process Composer api request851 for user type guest852 behaves like returning response status853 returns unauthorized854 project_visibility_level: "PUBLIC", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "Composer provider index", expected_status: :success855 behaves like Composer provider index856 returns the package index857 project_visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: true, shared_examples_name: "Composer provider index", expected_status: :success858 behaves like Composer provider index859 returns the package index860 project_visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized861 behaves like process Composer api request862 for user type developer863 behaves like returning response status864 returns unauthorized865 project_visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: true, shared_examples_name: "process Composer api request", expected_status: :not_found866 behaves like process Composer api request867 for user type developer868 behaves like returning response status869 returns not_found870 project_visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized871 behaves like process Composer api request872 for user type developer873 behaves like returning response status874 returns unauthorized875 project_visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: true, shared_examples_name: "Composer empty provider index", expected_status: :success876 behaves like Composer empty provider index877 returns the package index878 project_visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized879 behaves like process Composer api request880 for user type guest881 behaves like returning response status882 returns unauthorized883 project_visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: true, shared_examples_name: "process Composer api request", expected_status: :not_found884 behaves like process Composer api request885 for user type guest886 behaves like returning response status887 returns not_found888 project_visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized889 behaves like process Composer api request890 for user type guest891 behaves like returning response status892 returns unauthorized893 project_visibility_level: "PRIVATE", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "process Composer api request", expected_status: :not_found894 behaves like process Composer api request895 for user type anonymous896 behaves like returning response status897 returns not_found898 behaves like Composer access with deploy tokens899 group deploy token900 behaves like a deploy token for Composer GET requests901 with deploy token headers902 valid token903 behaves like returning response status904 returns success905 invalid token906 behaves like returning response status907 returns not_found908 project deploy token909 behaves like a deploy token for Composer GET requests910 with deploy token headers911 valid token912 behaves like returning response status913 returns success914 invalid token915 behaves like returning response status916 returns not_found917 behaves like rejects Composer access with unknown group id918 with an unknown group919 as anonymous920 behaves like process Composer api request921 for user type anonymous922 behaves like returning response status923 returns not_found924 as authenticated user925 behaves like process Composer api request926 for user type anonymous927 behaves like returning response status928 returns not_found929 GET /api/v4/group/:id/-/packages/composer/*package_name.json930 with no packages931 behaves like returning response status932 returns not_found933 with valid project934 project_visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: true, shared_examples_name: "Composer package api request", expected_status: :success935 behaves like Composer package api request936 returns the package index937 project_visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized938 behaves like process Composer api request939 for user type developer940 behaves like returning response status941 returns unauthorized942 project_visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: true, shared_examples_name: "Composer package api request", expected_status: :success943 behaves like Composer package api request944 returns the package index945 project_visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized946 behaves like process Composer api request947 for user type developer948 behaves like returning response status949 returns unauthorized950 project_visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: true, shared_examples_name: "Composer package api request", expected_status: :success951 behaves like Composer package api request952 returns the package index953 project_visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized954 behaves like process Composer api request955 for user type guest956 behaves like returning response status957 returns unauthorized958 project_visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: true, shared_examples_name: "Composer package api request", expected_status: :success959 behaves like Composer package api request960 returns the package index961 project_visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized962 behaves like process Composer api request963 for user type guest964 behaves like returning response status965 returns unauthorized966 project_visibility_level: "PUBLIC", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "Composer package api request", expected_status: :success967 behaves like Composer package api request968 returns the package index969 project_visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: true, shared_examples_name: "Composer package api request", expected_status: :success970 behaves like Composer package api request971 returns the package index972 project_visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized973 behaves like process Composer api request974 for user type developer975 behaves like returning response status976 returns unauthorized977 project_visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: true, shared_examples_name: "process Composer api request", expected_status: :not_found978 behaves like process Composer api request979 for user type developer980 behaves like returning response status981 returns not_found982 project_visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized983 behaves like process Composer api request984 for user type developer985 behaves like returning response status986 returns unauthorized987 project_visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: true, shared_examples_name: "process Composer api request", expected_status: :not_found988 behaves like process Composer api request989 for user type guest990 behaves like returning response status991 returns not_found992 project_visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized993 behaves like process Composer api request994 for user type guest995 behaves like returning response status996 returns unauthorized997 project_visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: true, shared_examples_name: "process Composer api request", expected_status: :not_found998 behaves like process Composer api request999 for user type guest1000 behaves like returning response status1001 returns not_found1002 project_visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1003 behaves like process Composer api request1004 for user type guest1005 behaves like returning response status1006 returns unauthorized1007 project_visibility_level: "PRIVATE", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "process Composer api request", expected_status: :not_found1008 behaves like process Composer api request1009 for user type anonymous1010 behaves like returning response status1011 returns not_found1012 without a sha1013 behaves like process Composer api request1014 for user type developer1015 behaves like returning response status1016 returns not_found1017 behaves like Composer access with deploy tokens1018 group deploy token1019 behaves like a deploy token for Composer GET requests1020 with deploy token headers1021 valid token1022 behaves like returning response status1023 returns success1024 invalid token1025 behaves like returning response status1026 returns not_found1027 project deploy token1028 behaves like a deploy token for Composer GET requests1029 with deploy token headers1030 valid token1031 behaves like returning response status1032 returns success1033 invalid token1034 behaves like returning response status1035 returns not_found1036 behaves like rejects Composer access with unknown group id1037 with an unknown group1038 as anonymous1039 behaves like process Composer api request1040 for user type anonymous1041 behaves like returning response status1042 returns not_found1043 as authenticated user1044 behaves like process Composer api request1045 for user type anonymous1046 behaves like returning response status1047 returns not_found1048 GET /api/v4/group/:id/-/packages/composer/p2/*package_name.json1049 with no packages1050 behaves like returning response status1051 returns not_found1052 with valid project1053 project_visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: true, shared_examples_name: "Composer package api request", expected_status: :success1054 behaves like Composer package api request1055 returns the package index1056 project_visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1057 behaves like process Composer api request1058 for user type developer1059 behaves like returning response status1060 returns unauthorized1061 project_visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: true, shared_examples_name: "Composer package api request", expected_status: :success1062 behaves like Composer package api request1063 returns the package index1064 project_visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1065 behaves like process Composer api request1066 for user type developer1067 behaves like returning response status1068 returns unauthorized1069 project_visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: true, shared_examples_name: "Composer package api request", expected_status: :success1070 behaves like Composer package api request1071 returns the package index1072 project_visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1073 behaves like process Composer api request1074 for user type guest1075 behaves like returning response status1076 returns unauthorized1077 project_visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: true, shared_examples_name: "Composer package api request", expected_status: :success1078 behaves like Composer package api request1079 returns the package index1080 project_visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1081 behaves like process Composer api request1082 for user type guest1083 behaves like returning response status1084 returns unauthorized1085 project_visibility_level: "PUBLIC", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "Composer package api request", expected_status: :success1086 behaves like Composer package api request1087 returns the package index1088 project_visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: true, shared_examples_name: "Composer package api request", expected_status: :success1089 behaves like Composer package api request1090 returns the package index1091 project_visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1092 behaves like process Composer api request1093 for user type developer1094 behaves like returning response status1095 returns unauthorized1096 project_visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: true, shared_examples_name: "process Composer api request", expected_status: :not_found1097 behaves like process Composer api request1098 for user type developer1099 behaves like returning response status1100 returns not_found1101 project_visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1102 behaves like process Composer api request1103 for user type developer1104 behaves like returning response status1105 returns unauthorized1106 project_visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: true, shared_examples_name: "process Composer api request", expected_status: :not_found1107 behaves like process Composer api request1108 for user type guest1109 behaves like returning response status1110 returns not_found1111 project_visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1112 behaves like process Composer api request1113 for user type guest1114 behaves like returning response status1115 returns unauthorized1116 project_visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: true, shared_examples_name: "process Composer api request", expected_status: :not_found1117 behaves like process Composer api request1118 for user type guest1119 behaves like returning response status1120 returns not_found1121 project_visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1122 behaves like process Composer api request1123 for user type guest1124 behaves like returning response status1125 returns unauthorized1126 project_visibility_level: "PRIVATE", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "process Composer api request", expected_status: :not_found1127 behaves like process Composer api request1128 for user type anonymous1129 behaves like returning response status1130 returns not_found1131 behaves like Composer access with deploy tokens1132 group deploy token1133 behaves like a deploy token for Composer GET requests1134 with deploy token headers1135 valid token1136 behaves like returning response status1137 returns success1138 invalid token1139 behaves like returning response status1140 returns not_found1141 project deploy token1142 behaves like a deploy token for Composer GET requests1143 with deploy token headers1144 valid token1145 behaves like returning response status1146 returns success1147 invalid token1148 behaves like returning response status1149 returns not_found1150 behaves like rejects Composer access with unknown group id1151 with an unknown group1152 as anonymous1153 behaves like process Composer api request1154 for user type anonymous1155 behaves like returning response status1156 returns not_found1157 as authenticated user1158 behaves like process Composer api request1159 for user type anonymous1160 behaves like returning response status1161 returns not_found1162 POST /api/v4/projects/:id/packages/composer1163 with existing package1164 does not create a new package1165 marked as pending_destruction1166 does create a new package1167 with no tag or branch params1168 behaves like process Composer api request1169 for user type developer1170 behaves like returning response status1171 returns bad_request1172 with a tag1173 with an existing branch1174 behaves like composer package publish1175 with valid project1176 project_visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: true, shared_examples_name: "Composer package creation", expected_status: :created1177 behaves like Composer package creation1178 for user type developer1179 creates package files1180 behaves like a package tracking event1181 creates a gitlab tracking event push_package1182 when package creation fails1183 behaves like not a package tracking event1184 does not create a gitlab tracking event1185 project_visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1186 behaves like process Composer api request1187 for user type developer1188 behaves like returning response status1189 returns unauthorized1190 project_visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: true, shared_examples_name: "process Composer api request", expected_status: :forbidden1191 behaves like process Composer api request1192 for user type developer1193 behaves like returning response status1194 returns forbidden1195 project_visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1196 behaves like process Composer api request1197 for user type developer1198 behaves like returning response status1199 returns unauthorized1200 project_visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: true, shared_examples_name: "process Composer api request", expected_status: :forbidden1201 behaves like process Composer api request1202 for user type guest1203 behaves like returning response status1204 returns forbidden1205 project_visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1206 behaves like process Composer api request1207 for user type guest1208 behaves like returning response status1209 returns unauthorized1210 project_visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: true, shared_examples_name: "process Composer api request", expected_status: :forbidden1211 behaves like process Composer api request1212 for user type guest1213 behaves like returning response status1214 returns forbidden1215 project_visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1216 behaves like process Composer api request1217 for user type guest1218 behaves like returning response status1219 returns unauthorized1220 project_visibility_level: "PUBLIC", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "process Composer api request", expected_status: :unauthorized1221 behaves like process Composer api request1222 for user type anonymous1223 behaves like returning response status1224 returns unauthorized1225 project_visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: true, shared_examples_name: "Composer package creation", expected_status: :created1226 behaves like Composer package creation1227 for user type developer1228 creates package files1229 behaves like a package tracking event1230 creates a gitlab tracking event push_package1231 when package creation fails1232 behaves like not a package tracking event1233 does not create a gitlab tracking event1234 project_visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1235 behaves like process Composer api request1236 for user type developer1237 behaves like returning response status1238 returns unauthorized1239 project_visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: true, shared_examples_name: "process Composer api request", expected_status: :not_found1240 behaves like process Composer api request1241 for user type developer1242 behaves like returning response status1243 returns not_found1244 project_visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1245 behaves like process Composer api request1246 for user type developer1247 behaves like returning response status1248 returns unauthorized1249 project_visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: true, shared_examples_name: "process Composer api request", expected_status: :forbidden1250 behaves like process Composer api request1251 for user type guest1252 behaves like returning response status1253 returns forbidden1254 project_visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1255 behaves like process Composer api request1256 for user type guest1257 behaves like returning response status1258 returns unauthorized1259 project_visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: true, shared_examples_name: "process Composer api request", expected_status: :not_found1260 behaves like process Composer api request1261 for user type guest1262 behaves like returning response status1263 returns not_found1264 project_visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1265 behaves like process Composer api request1266 for user type guest1267 behaves like returning response status1268 returns unauthorized1269 project_visibility_level: "PRIVATE", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "process Composer api request", expected_status: :unauthorized1270 behaves like process Composer api request1271 for user type anonymous1272 behaves like returning response status1273 returns unauthorized1274 behaves like Composer publish with deploy tokens1275 group deploy token1276 behaves like a deploy token for Composer publish requests1277 valid token1278 behaves like returning response status1279 returns success1280 invalid token1281 behaves like returning response status1282 returns unauthorized1283 group deploy token1284 behaves like a deploy token for Composer publish requests1285 valid token1286 behaves like returning response status1287 returns success1288 invalid token1289 behaves like returning response status1290 returns unauthorized1291 behaves like rejects Composer access with unknown project id1292 with an unknown project1293 as anonymous1294 behaves like process Composer api request1295 for user type anonymous1296 behaves like returning response status1297 returns unauthorized1298 as authenticated user1299 behaves like process Composer api request1300 for user type anonymous1301 behaves like returning response status1302 returns not_found1303 with a non existing tag1304 behaves like process Composer api request1305 for user type developer1306 behaves like returning response status1307 returns not_found1308 with a branch1309 with an existing branch1310 behaves like composer package publish1311 with valid project1312 project_visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: true, shared_examples_name: "Composer package creation", expected_status: :created1313 behaves like Composer package creation1314 for user type developer1315 creates package files1316 behaves like a package tracking event1317 creates a gitlab tracking event push_package1318 when package creation fails1319 behaves like not a package tracking event1320 does not create a gitlab tracking event1321 project_visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1322 behaves like process Composer api request1323 for user type developer1324 behaves like returning response status1325 returns unauthorized1326 project_visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: true, shared_examples_name: "process Composer api request", expected_status: :forbidden1327 behaves like process Composer api request1328 for user type developer1329 behaves like returning response status1330 returns forbidden1331 project_visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1332 behaves like process Composer api request1333 for user type developer1334 behaves like returning response status1335 returns unauthorized1336 project_visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: true, shared_examples_name: "process Composer api request", expected_status: :forbidden1337 behaves like process Composer api request1338 for user type guest1339 behaves like returning response status1340 returns forbidden1341 project_visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1342 behaves like process Composer api request1343 for user type guest1344 behaves like returning response status1345 returns unauthorized1346 project_visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: true, shared_examples_name: "process Composer api request", expected_status: :forbidden1347 behaves like process Composer api request1348 for user type guest1349 behaves like returning response status1350 returns forbidden1351 project_visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1352 behaves like process Composer api request1353 for user type guest1354 behaves like returning response status1355 returns unauthorized1356 project_visibility_level: "PUBLIC", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "process Composer api request", expected_status: :unauthorized1357 behaves like process Composer api request1358 for user type anonymous1359 behaves like returning response status1360 returns unauthorized1361 project_visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: true, shared_examples_name: "Composer package creation", expected_status: :created1362 behaves like Composer package creation1363 for user type developer1364 creates package files1365 behaves like a package tracking event1366 creates a gitlab tracking event push_package1367 when package creation fails1368 behaves like not a package tracking event1369 does not create a gitlab tracking event1370 project_visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1371 behaves like process Composer api request1372 for user type developer1373 behaves like returning response status1374 returns unauthorized1375 project_visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: true, shared_examples_name: "process Composer api request", expected_status: :not_found1376 behaves like process Composer api request1377 for user type developer1378 behaves like returning response status1379 returns not_found1380 project_visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1381 behaves like process Composer api request1382 for user type developer1383 behaves like returning response status1384 returns unauthorized1385 project_visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: true, shared_examples_name: "process Composer api request", expected_status: :forbidden1386 behaves like process Composer api request1387 for user type guest1388 behaves like returning response status1389 returns forbidden1390 project_visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1391 behaves like process Composer api request1392 for user type guest1393 behaves like returning response status1394 returns unauthorized1395 project_visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: true, shared_examples_name: "process Composer api request", expected_status: :not_found1396 behaves like process Composer api request1397 for user type guest1398 behaves like returning response status1399 returns not_found1400 project_visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: false, shared_examples_name: "process Composer api request", expected_status: :unauthorized1401 behaves like process Composer api request1402 for user type guest1403 behaves like returning response status1404 returns unauthorized1405 project_visibility_level: "PRIVATE", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "process Composer api request", expected_status: :unauthorized1406 behaves like process Composer api request1407 for user type anonymous1408 behaves like returning response status1409 returns unauthorized1410 behaves like Composer publish with deploy tokens1411 group deploy token1412 behaves like a deploy token for Composer publish requests1413 valid token1414 behaves like returning response status1415 returns success1416 invalid token1417 behaves like returning response status1418 returns unauthorized1419 group deploy token1420 behaves like a deploy token for Composer publish requests1421 valid token1422 behaves like returning response status1423 returns success1424 invalid token1425 behaves like returning response status1426 returns unauthorized1427 behaves like rejects Composer access with unknown project id1428 with an unknown project1429 as anonymous1430 behaves like process Composer api request1431 for user type anonymous1432 behaves like returning response status1433 returns unauthorized1434 as authenticated user1435 behaves like process Composer api request1436 for user type anonymous1437 behaves like returning response status1438 returns not_found1439 with a non existing branch1440 behaves like process Composer api request1441 for user type developer1442 behaves like returning response status1443 returns not_found1444 with invalid composer.json1445 with a missing composer.json file1446 behaves like process Composer api request1447 for user type developer1448 behaves like returning response status1449 returns unprocessable_entity1450 with an empty composer.json file1451 behaves like process Composer api request1452 for user type developer1453 behaves like returning response status1454 returns unprocessable_entity1455 with a malformed composer.json file1456 behaves like process Composer api request1457 for user type developer1458 behaves like returning response status1459 returns unprocessable_entity1460 GET /api/v4/projects/:id/packages/composer/archives/*package_name?sha=:sha1461 with valid project1462 when the sha does not match the package name1463 anonymous1464 behaves like process Composer api request1465 for user type anonymous1466 behaves like returning response status1467 returns unauthorized1468 behaves like process Composer api request1469 for user type developer1470 behaves like returning response status1471 returns not_found1472 when the package name does not match the sha1473 anonymous1474 behaves like process Composer api request1475 for user type anonymous1476 behaves like returning response status1477 returns unauthorized1478 behaves like process Composer api request1479 for user type developer1480 behaves like returning response status1481 returns not_found1482 with a match package name and sha1483 project_visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: true, expected_status: :success1484 behaves like process Composer api request1485 for user type developer1486 behaves like returning response status1487 returns success1488 behaves like bumping the package last downloaded at field1489DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and1490from Rails 7.1 will use the default Ruby implementation.1491You can set `config.active_support.remove_deprecated_time_with_zone_name = true`1492to enable the new behavior now.1493 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)1494 bumps last_downloaded_at1495 behaves like a package tracking event1496 creates a gitlab tracking event pull_package1497 project_visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: false, expected_status: :success1498 behaves like process Composer api request1499 for user type developer1500 behaves like returning response status1501 returns success1502 behaves like bumping the package last downloaded at field1503DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and1504from Rails 7.1 will use the default Ruby implementation.1505You can set `config.active_support.remove_deprecated_time_with_zone_name = true`1506to enable the new behavior now.1507 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)1508 bumps last_downloaded_at1509 behaves like a package tracking event1510 creates a gitlab tracking event pull_package1511 project_visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: true, expected_status: :success1512 behaves like process Composer api request1513 for user type developer1514 behaves like returning response status1515 returns success1516 behaves like bumping the package last downloaded at field1517DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and1518from Rails 7.1 will use the default Ruby implementation.1519You can set `config.active_support.remove_deprecated_time_with_zone_name = true`1520to enable the new behavior now.1521 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)1522 bumps last_downloaded_at1523 behaves like a package tracking event1524 creates a gitlab tracking event pull_package1525 project_visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: false, expected_status: :success1526 behaves like process Composer api request1527 for user type developer1528 behaves like returning response status1529 returns success1530 behaves like bumping the package last downloaded at field1531DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and1532from Rails 7.1 will use the default Ruby implementation.1533You can set `config.active_support.remove_deprecated_time_with_zone_name = true`1534to enable the new behavior now.1535 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)1536 bumps last_downloaded_at1537 behaves like a package tracking event1538 creates a gitlab tracking event pull_package1539 project_visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: true, expected_status: :success1540 behaves like process Composer api request1541 for user type guest1542 behaves like returning response status1543 returns success1544 behaves like bumping the package last downloaded at field1545DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and1546from Rails 7.1 will use the default Ruby implementation.1547You can set `config.active_support.remove_deprecated_time_with_zone_name = true`1548to enable the new behavior now.1549 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)1550 bumps last_downloaded_at1551 behaves like a package tracking event1552 creates a gitlab tracking event pull_package1553 project_visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: false, expected_status: :success1554 behaves like process Composer api request1555 for user type guest1556 behaves like returning response status1557 returns success1558 behaves like bumping the package last downloaded at field1559DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and1560from Rails 7.1 will use the default Ruby implementation.1561You can set `config.active_support.remove_deprecated_time_with_zone_name = true`1562to enable the new behavior now.1563 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)1564 bumps last_downloaded_at1565 behaves like a package tracking event1566 creates a gitlab tracking event pull_package1567 project_visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: true, expected_status: :success1568 behaves like process Composer api request1569 for user type guest1570 behaves like returning response status1571 returns success1572 behaves like bumping the package last downloaded at field1573DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and1574from Rails 7.1 will use the default Ruby implementation.1575You can set `config.active_support.remove_deprecated_time_with_zone_name = true`1576to enable the new behavior now.1577 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)1578 bumps last_downloaded_at1579 behaves like a package tracking event1580 creates a gitlab tracking event pull_package1581 project_visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: false, expected_status: :success1582 behaves like process Composer api request1583 for user type guest1584 behaves like returning response status1585 returns success1586 behaves like bumping the package last downloaded at field1587DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and1588from Rails 7.1 will use the default Ruby implementation.1589You can set `config.active_support.remove_deprecated_time_with_zone_name = true`1590to enable the new behavior now.1591 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)1592 bumps last_downloaded_at1593 behaves like a package tracking event1594 creates a gitlab tracking event pull_package1595 project_visibility_level: "PUBLIC", user_role: :anonymous, member: false, user_token: true, expected_status: :success1596 behaves like process Composer api request1597 for user type anonymous1598 behaves like returning response status1599 returns success1600 behaves like bumping the package last downloaded at field1601DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and1602from Rails 7.1 will use the default Ruby implementation.1603You can set `config.active_support.remove_deprecated_time_with_zone_name = true`1604to enable the new behavior now.1605 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)1606 bumps last_downloaded_at1607 behaves like a package tracking event1608 creates a gitlab tracking event pull_package1609 project_visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: true, expected_status: :success1610 behaves like process Composer api request1611 for user type developer1612 behaves like returning response status1613 returns success1614 behaves like bumping the package last downloaded at field1615DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and1616from Rails 7.1 will use the default Ruby implementation.1617You can set `config.active_support.remove_deprecated_time_with_zone_name = true`1618to enable the new behavior now.1619 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)1620 bumps last_downloaded_at1621 behaves like a package tracking event1622 creates a gitlab tracking event pull_package1623 project_visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: false, expected_status: :unauthorized1624 behaves like process Composer api request1625 for user type developer1626 behaves like returning response status1627 returns unauthorized1628 behaves like not a package tracking event1629 does not create a gitlab tracking event1630 project_visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: true, expected_status: :not_found1631 behaves like process Composer api request1632 for user type developer1633 behaves like returning response status1634 returns not_found1635 behaves like not a package tracking event1636 does not create a gitlab tracking event1637 project_visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: false, expected_status: :unauthorized1638 behaves like process Composer api request1639 for user type developer1640 behaves like returning response status1641 returns unauthorized1642 behaves like not a package tracking event1643 does not create a gitlab tracking event1644 project_visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: true, expected_status: :forbidden1645 behaves like process Composer api request1646 for user type guest1647 behaves like returning response status1648 returns forbidden1649 behaves like not a package tracking event1650 does not create a gitlab tracking event1651 project_visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: false, expected_status: :unauthorized1652 behaves like process Composer api request1653 for user type guest1654 behaves like returning response status1655 returns unauthorized1656 behaves like not a package tracking event1657 does not create a gitlab tracking event1658 project_visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: true, expected_status: :not_found1659 behaves like process Composer api request1660 for user type guest1661 behaves like returning response status1662 returns not_found1663 behaves like not a package tracking event1664 does not create a gitlab tracking event1665 project_visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: false, expected_status: :unauthorized1666 behaves like process Composer api request1667 for user type guest1668 behaves like returning response status1669 returns unauthorized1670 behaves like not a package tracking event1671 does not create a gitlab tracking event1672 project_visibility_level: "PRIVATE", user_role: :anonymous, member: false, user_token: true, expected_status: :unauthorized1673 behaves like process Composer api request1674 for user type anonymous1675 behaves like returning response status1676 returns unauthorized1677 behaves like not a package tracking event1678 does not create a gitlab tracking event1679 behaves like Composer publish with deploy tokens1680 group deploy token1681 behaves like a deploy token for Composer publish requests1682 valid token1683 behaves like returning response status1684 returns success1685 invalid token1686 behaves like returning response status1687 returns unauthorized1688 group deploy token1689 behaves like a deploy token for Composer publish requests1690 valid token1691 behaves like returning response status1692 returns success1693 invalid token1694 behaves like returning response status1695 returns unauthorized1696 with access to package registry for everyone1697 behaves like returning response status1698 returns success1699 behaves like rejects Composer access with unknown project id1700 with an unknown project1701 as anonymous1702 behaves like process Composer api request1703 for user type anonymous1704 behaves like returning response status1705 returns unauthorized1706 as authenticated user1707 behaves like process Composer api request1708 for user type anonymous1709 behaves like returning response status1710 returns not_found1711API::RubygemPackages1712 GET /api/v4/projects/:project_id/packages/rubygems/:filename1713 behaves like an unimplemented route1714 behaves like without authentication1715 behaves like returning response status1716 returns not_found1717 behaves like with authentication1718 user_role: :guest, token_type: :personal_access_token, valid_token: true, status: :forbidden1719 behaves like returning response status1720 returns forbidden1721 user_role: :guest, token_type: :personal_access_token, valid_token: false, status: :unauthorized1722 behaves like returning response status1723 returns unauthorized1724 user_role: :guest, token_type: :deploy_token, valid_token: true, status: :not_found1725 behaves like returning response status1726 returns not_found1727 user_role: :guest, token_type: :deploy_token, valid_token: false, status: :unauthorized1728 behaves like returning response status1729 returns unauthorized1730 user_role: :guest, token_type: :job_token, valid_token: true, status: :forbidden1731 behaves like returning response status1732 returns forbidden1733 user_role: :guest, token_type: :job_token, valid_token: false, status: :unauthorized1734 behaves like returning response status1735 returns unauthorized1736 user_role: :reporter, token_type: :personal_access_token, valid_token: true, status: :not_found1737 behaves like returning response status1738 returns not_found1739 user_role: :reporter, token_type: :personal_access_token, valid_token: false, status: :unauthorized1740 behaves like returning response status1741 returns unauthorized1742 user_role: :reporter, token_type: :deploy_token, valid_token: true, status: :not_found1743 behaves like returning response status1744 returns not_found1745 user_role: :reporter, token_type: :deploy_token, valid_token: false, status: :unauthorized1746 behaves like returning response status1747 returns unauthorized1748 user_role: :reporter, token_type: :job_token, valid_token: true, status: :not_found1749 behaves like returning response status1750 returns not_found1751 user_role: :reporter, token_type: :job_token, valid_token: false, status: :unauthorized1752 behaves like returning response status1753 returns unauthorized1754 user_role: :developer, token_type: :personal_access_token, valid_token: true, status: :not_found1755 behaves like returning response status1756 returns not_found1757 user_role: :developer, token_type: :personal_access_token, valid_token: false, status: :unauthorized1758 behaves like returning response status1759 returns unauthorized1760 user_role: :developer, token_type: :deploy_token, valid_token: true, status: :not_found1761 behaves like returning response status1762 returns not_found1763 user_role: :developer, token_type: :deploy_token, valid_token: false, status: :unauthorized1764 behaves like returning response status1765 returns unauthorized1766 user_role: :developer, token_type: :job_token, valid_token: true, status: :not_found1767 behaves like returning response status1768 returns not_found1769 user_role: :developer, token_type: :job_token, valid_token: false, status: :unauthorized1770 behaves like returning response status1771 returns unauthorized1772 behaves like when feature flag is disabled1773 behaves like returning response status1774 returns not_found1775 behaves like when package feature is disabled1776 behaves like returning response status1777 returns not_found1778 GET /api/v4/projects/:project_id/packages/rubygems/quick/Marshal.4.8/:file_name1779 behaves like an unimplemented route1780 behaves like without authentication1781 behaves like returning response status1782 returns not_found1783 behaves like with authentication1784 user_role: :guest, token_type: :personal_access_token, valid_token: true, status: :forbidden1785 behaves like returning response status1786 returns forbidden1787 user_role: :guest, token_type: :personal_access_token, valid_token: false, status: :unauthorized1788 behaves like returning response status1789 returns unauthorized1790 user_role: :guest, token_type: :deploy_token, valid_token: true, status: :not_found1791 behaves like returning response status1792 returns not_found1793 user_role: :guest, token_type: :deploy_token, valid_token: false, status: :unauthorized1794 behaves like returning response status1795 returns unauthorized1796 user_role: :guest, token_type: :job_token, valid_token: true, status: :forbidden1797 behaves like returning response status1798 returns forbidden1799 user_role: :guest, token_type: :job_token, valid_token: false, status: :unauthorized1800 behaves like returning response status1801 returns unauthorized1802 user_role: :reporter, token_type: :personal_access_token, valid_token: true, status: :not_found1803 behaves like returning response status1804 returns not_found1805 user_role: :reporter, token_type: :personal_access_token, valid_token: false, status: :unauthorized1806 behaves like returning response status1807 returns unauthorized1808 user_role: :reporter, token_type: :deploy_token, valid_token: true, status: :not_found1809 behaves like returning response status1810 returns not_found1811 user_role: :reporter, token_type: :deploy_token, valid_token: false, status: :unauthorized1812 behaves like returning response status1813 returns unauthorized1814 user_role: :reporter, token_type: :job_token, valid_token: true, status: :not_found1815 behaves like returning response status1816 returns not_found1817 user_role: :reporter, token_type: :job_token, valid_token: false, status: :unauthorized1818 behaves like returning response status1819 returns unauthorized1820 user_role: :developer, token_type: :personal_access_token, valid_token: true, status: :not_found1821 behaves like returning response status1822 returns not_found1823 user_role: :developer, token_type: :personal_access_token, valid_token: false, status: :unauthorized1824 behaves like returning response status1825 returns unauthorized1826 user_role: :developer, token_type: :deploy_token, valid_token: true, status: :not_found1827 behaves like returning response status1828 returns not_found1829 user_role: :developer, token_type: :deploy_token, valid_token: false, status: :unauthorized1830 behaves like returning response status1831 returns unauthorized1832 user_role: :developer, token_type: :job_token, valid_token: true, status: :not_found1833 behaves like returning response status1834 returns not_found1835 user_role: :developer, token_type: :job_token, valid_token: false, status: :unauthorized1836 behaves like returning response status1837 returns unauthorized1838 behaves like when feature flag is disabled1839 behaves like returning response status1840 returns not_found1841 behaves like when package feature is disabled1842 behaves like returning response status1843 returns not_found1844 GET /api/v4/projects/:project_id/packages/rubygems/gems/:file_name1845 with valid project1846 visibility: :public, user_role: :developer, member: true, token_type: :personal_access_token, valid_token: true, shared_examples_name: "Rubygems gem download", expected_status: :success1847 behaves like Rubygems gem download1848 for user type developer1849 returns the gem1850 behaves like a package tracking event1851 creates a gitlab tracking event pull_package1852 behaves like bumping the package last downloaded at field1853DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and1854from Rails 7.1 will use the default Ruby implementation.1855You can set `config.active_support.remove_deprecated_time_with_zone_name = true`1856to enable the new behavior now.1857 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)1858 bumps last_downloaded_at1859 visibility: :public, user_role: :guest, member: true, token_type: :personal_access_token, valid_token: true, shared_examples_name: "Rubygems gem download", expected_status: :success1860 behaves like Rubygems gem download1861 for user type guest1862 returns the gem1863 behaves like a package tracking event1864 creates a gitlab tracking event pull_package1865 behaves like bumping the package last downloaded at field1866DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and1867from Rails 7.1 will use the default Ruby implementation.1868You can set `config.active_support.remove_deprecated_time_with_zone_name = true`1869to enable the new behavior now.1870 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)1871 bumps last_downloaded_at1872 visibility: :public, user_role: :developer, member: true, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized1873 behaves like rejects rubygems packages access1874 for user type developer1875 behaves like returning response status1876 returns unauthorized1877 visibility: :public, user_role: :guest, member: true, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized1878 behaves like rejects rubygems packages access1879 for user type guest1880 behaves like returning response status1881 returns unauthorized1882 visibility: :public, user_role: :developer, member: false, token_type: :personal_access_token, valid_token: true, shared_examples_name: "Rubygems gem download", expected_status: :success1883 behaves like Rubygems gem download1884 for user type developer1885 returns the gem1886 behaves like a package tracking event1887 creates a gitlab tracking event pull_package1888 behaves like bumping the package last downloaded at field1889DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and1890from Rails 7.1 will use the default Ruby implementation.1891You can set `config.active_support.remove_deprecated_time_with_zone_name = true`1892to enable the new behavior now.1893 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)1894 bumps last_downloaded_at1895 visibility: :public, user_role: :guest, member: false, token_type: :personal_access_token, valid_token: true, shared_examples_name: "Rubygems gem download", expected_status: :success1896 behaves like Rubygems gem download1897 for user type guest1898 returns the gem1899 behaves like a package tracking event1900 creates a gitlab tracking event pull_package1901 behaves like bumping the package last downloaded at field1902DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and1903from Rails 7.1 will use the default Ruby implementation.1904You can set `config.active_support.remove_deprecated_time_with_zone_name = true`1905to enable the new behavior now.1906 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)1907 bumps last_downloaded_at1908 visibility: :public, user_role: :developer, member: false, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized1909 behaves like rejects rubygems packages access1910 for user type developer1911 behaves like returning response status1912 returns unauthorized1913 visibility: :public, user_role: :guest, member: false, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized1914 behaves like rejects rubygems packages access1915 for user type guest1916 behaves like returning response status1917 returns unauthorized1918 visibility: :public, user_role: :anonymous, member: false, token_type: :personal_access_token, valid_token: true, shared_examples_name: "Rubygems gem download", expected_status: :success1919 behaves like Rubygems gem download1920 for user type anonymous1921 returns the gem1922 behaves like a package tracking event1923 creates a gitlab tracking event pull_package1924 behaves like bumping the package last downloaded at field1925DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and1926from Rails 7.1 will use the default Ruby implementation.1927You can set `config.active_support.remove_deprecated_time_with_zone_name = true`1928to enable the new behavior now.1929 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)1930 bumps last_downloaded_at1931 visibility: :private, user_role: :developer, member: true, token_type: :personal_access_token, valid_token: true, shared_examples_name: "Rubygems gem download", expected_status: :success1932 behaves like Rubygems gem download1933 for user type developer1934 returns the gem1935 behaves like a package tracking event1936 creates a gitlab tracking event pull_package1937 behaves like bumping the package last downloaded at field1938DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and1939from Rails 7.1 will use the default Ruby implementation.1940You can set `config.active_support.remove_deprecated_time_with_zone_name = true`1941to enable the new behavior now.1942 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)1943 bumps last_downloaded_at1944 visibility: :private, user_role: :guest, member: true, token_type: :personal_access_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :forbidden1945 behaves like rejects rubygems packages access1946 for user type guest1947 behaves like returning response status1948 returns forbidden1949 visibility: :private, user_role: :developer, member: true, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized1950 behaves like rejects rubygems packages access1951 for user type developer1952 behaves like returning response status1953 returns unauthorized1954 visibility: :private, user_role: :guest, member: true, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized1955 behaves like rejects rubygems packages access1956 for user type guest1957 behaves like returning response status1958 returns unauthorized1959 visibility: :private, user_role: :developer, member: false, token_type: :personal_access_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :not_found1960 behaves like rejects rubygems packages access1961 for user type developer1962 behaves like returning response status1963 returns not_found1964 visibility: :private, user_role: :guest, member: false, token_type: :personal_access_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :not_found1965 behaves like rejects rubygems packages access1966 for user type guest1967 behaves like returning response status1968 returns not_found1969 visibility: :private, user_role: :developer, member: false, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized1970 behaves like rejects rubygems packages access1971 for user type developer1972 behaves like returning response status1973 returns unauthorized1974 visibility: :private, user_role: :guest, member: false, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized1975 behaves like rejects rubygems packages access1976 for user type guest1977 behaves like returning response status1978 returns unauthorized1979 visibility: :private, user_role: :anonymous, member: false, token_type: :personal_access_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :not_found1980 behaves like rejects rubygems packages access1981 for user type anonymous1982 behaves like returning response status1983 returns not_found1984 visibility: :public, user_role: :developer, member: true, token_type: :job_token, valid_token: true, shared_examples_name: "Rubygems gem download", expected_status: :success1985 behaves like Rubygems gem download1986 for user type developer1987 returns the gem1988 behaves like a package tracking event1989 creates a gitlab tracking event pull_package1990 behaves like bumping the package last downloaded at field1991DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and1992from Rails 7.1 will use the default Ruby implementation.1993You can set `config.active_support.remove_deprecated_time_with_zone_name = true`1994to enable the new behavior now.1995 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)1996 bumps last_downloaded_at1997 visibility: :public, user_role: :guest, member: true, token_type: :job_token, valid_token: true, shared_examples_name: "Rubygems gem download", expected_status: :success1998 behaves like Rubygems gem download1999 for user type guest2000 returns the gem2001 behaves like a package tracking event2002 creates a gitlab tracking event pull_package2003 behaves like bumping the package last downloaded at field2004DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and2005from Rails 7.1 will use the default Ruby implementation.2006You can set `config.active_support.remove_deprecated_time_with_zone_name = true`2007to enable the new behavior now.2008 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)2009 bumps last_downloaded_at2010 visibility: :public, user_role: :developer, member: true, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2011 behaves like rejects rubygems packages access2012 for user type developer2013 behaves like returning response status2014 returns unauthorized2015 visibility: :public, user_role: :guest, member: true, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2016 behaves like rejects rubygems packages access2017 for user type guest2018 behaves like returning response status2019 returns unauthorized2020 visibility: :public, user_role: :developer, member: false, token_type: :job_token, valid_token: true, shared_examples_name: "Rubygems gem download", expected_status: :success2021 behaves like Rubygems gem download2022 for user type developer2023 returns the gem2024 behaves like a package tracking event2025 creates a gitlab tracking event pull_package2026 behaves like bumping the package last downloaded at field2027DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and2028from Rails 7.1 will use the default Ruby implementation.2029You can set `config.active_support.remove_deprecated_time_with_zone_name = true`2030to enable the new behavior now.2031 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)2032 bumps last_downloaded_at2033 visibility: :public, user_role: :guest, member: false, token_type: :job_token, valid_token: true, shared_examples_name: "Rubygems gem download", expected_status: :success2034 behaves like Rubygems gem download2035 for user type guest2036 returns the gem2037 behaves like a package tracking event2038 creates a gitlab tracking event pull_package2039 behaves like bumping the package last downloaded at field2040DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and2041from Rails 7.1 will use the default Ruby implementation.2042You can set `config.active_support.remove_deprecated_time_with_zone_name = true`2043to enable the new behavior now.2044 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)2045 bumps last_downloaded_at2046 visibility: :public, user_role: :developer, member: false, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2047 behaves like rejects rubygems packages access2048 for user type developer2049 behaves like returning response status2050 returns unauthorized2051 visibility: :public, user_role: :guest, member: false, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2052 behaves like rejects rubygems packages access2053 for user type guest2054 behaves like returning response status2055 returns unauthorized2056 visibility: :private, user_role: :developer, member: true, token_type: :job_token, valid_token: true, shared_examples_name: "Rubygems gem download", expected_status: :success2057 behaves like Rubygems gem download2058 for user type developer2059 returns the gem2060 behaves like a package tracking event2061 creates a gitlab tracking event pull_package2062 behaves like bumping the package last downloaded at field2063DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and2064from Rails 7.1 will use the default Ruby implementation.2065You can set `config.active_support.remove_deprecated_time_with_zone_name = true`2066to enable the new behavior now.2067 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)2068 bumps last_downloaded_at2069 visibility: :private, user_role: :guest, member: true, token_type: :job_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :forbidden2070 behaves like rejects rubygems packages access2071 for user type guest2072 behaves like returning response status2073 returns forbidden2074 visibility: :private, user_role: :developer, member: true, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2075 behaves like rejects rubygems packages access2076 for user type developer2077 behaves like returning response status2078 returns unauthorized2079 visibility: :private, user_role: :guest, member: true, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2080 behaves like rejects rubygems packages access2081 for user type guest2082 behaves like returning response status2083 returns unauthorized2084 visibility: :private, user_role: :developer, member: false, token_type: :job_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :not_found2085 behaves like rejects rubygems packages access2086 for user type developer2087 behaves like returning response status2088 returns not_found2089 visibility: :private, user_role: :guest, member: false, token_type: :job_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :not_found2090 behaves like rejects rubygems packages access2091 for user type guest2092 behaves like returning response status2093 returns not_found2094 visibility: :private, user_role: :developer, member: false, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2095 behaves like rejects rubygems packages access2096 for user type developer2097 behaves like returning response status2098 returns unauthorized2099 visibility: :private, user_role: :guest, member: false, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2100 behaves like rejects rubygems packages access2101 for user type guest2102 behaves like returning response status2103 returns unauthorized2104 visibility: :public, user_role: :developer, member: true, token_type: :deploy_token, valid_token: true, shared_examples_name: "Rubygems gem download", expected_status: :success2105 behaves like Rubygems gem download2106 for user type developer2107 returns the gem2108 behaves like a package tracking event2109 creates a gitlab tracking event pull_package2110 behaves like bumping the package last downloaded at field2111DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and2112from Rails 7.1 will use the default Ruby implementation.2113You can set `config.active_support.remove_deprecated_time_with_zone_name = true`2114to enable the new behavior now.2115 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)2116 bumps last_downloaded_at2117 visibility: :public, user_role: :developer, member: true, token_type: :deploy_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2118 behaves like rejects rubygems packages access2119 for user type developer2120 behaves like returning response status2121 returns unauthorized2122 visibility: :private, user_role: :developer, member: true, token_type: :deploy_token, valid_token: true, shared_examples_name: "Rubygems gem download", expected_status: :success2123 behaves like Rubygems gem download2124 for user type developer2125 returns the gem2126 behaves like a package tracking event2127 creates a gitlab tracking event pull_package2128 behaves like bumping the package last downloaded at field2129DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and2130from Rails 7.1 will use the default Ruby implementation.2131You can set `config.active_support.remove_deprecated_time_with_zone_name = true`2132to enable the new behavior now.2133 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)2134 bumps last_downloaded_at2135 visibility: :private, user_role: :developer, member: true, token_type: :deploy_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2136 behaves like rejects rubygems packages access2137 for user type developer2138 behaves like returning response status2139 returns unauthorized2140 with access to package registry for everyone2141 behaves like Rubygems gem download2142 for user type anonymous2143 returns the gem2144 behaves like a package tracking event2145 creates a gitlab tracking event pull_package2146 behaves like bumping the package last downloaded at field2147DEPRECATION WARNING: ActiveSupport::TimeWithZone.name has been deprecated and2148from Rails 7.1 will use the default Ruby implementation.2149You can set `config.active_support.remove_deprecated_time_with_zone_name = true`2150to enable the new behavior now.2151 (called from block (2 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/packages_shared_examples.rb:183)2152 bumps last_downloaded_at2153 with package files pending destruction2154 does not return them2155 POST /api/v4/projects/:project_id/packages/rubygems/api/v1/gems/authorize2156 with valid project2157 visibility: :public, user_role: :developer, member: true, token_type: :personal_access_token, valid_token: true, shared_examples_name: "process rubygems workhorse authorization", expected_status: :success2158 behaves like process rubygems workhorse authorization2159 for user type developer2160 has the proper content type2161 behaves like returning response status2162 returns success2163 with a request that bypassed gitlab-workhorse2164 behaves like returning response status2165 returns forbidden2166 visibility: :public, user_role: :guest, member: true, token_type: :personal_access_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :forbidden2167 behaves like rejects rubygems packages access2168 for user type guest2169 behaves like returning response status2170 returns forbidden2171 visibility: :public, user_role: :developer, member: true, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2172 behaves like rejects rubygems packages access2173 for user type developer2174 behaves like returning response status2175 returns unauthorized2176 visibility: :public, user_role: :guest, member: true, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2177 behaves like rejects rubygems packages access2178 for user type guest2179 behaves like returning response status2180 returns unauthorized2181 visibility: :public, user_role: :developer, member: false, token_type: :personal_access_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :forbidden2182 behaves like rejects rubygems packages access2183 for user type developer2184 behaves like returning response status2185 returns forbidden2186 visibility: :public, user_role: :guest, member: false, token_type: :personal_access_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :forbidden2187 behaves like rejects rubygems packages access2188 for user type guest2189 behaves like returning response status2190 returns forbidden2191 visibility: :public, user_role: :developer, member: false, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2192 behaves like rejects rubygems packages access2193 for user type developer2194 behaves like returning response status2195 returns unauthorized2196 visibility: :public, user_role: :guest, member: false, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2197 behaves like rejects rubygems packages access2198 for user type guest2199 behaves like returning response status2200 returns unauthorized2201 visibility: :public, user_role: :anonymous, member: false, token_type: :personal_access_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2202 behaves like rejects rubygems packages access2203 for user type anonymous2204 behaves like returning response status2205 returns unauthorized2206 visibility: :private, user_role: :developer, member: true, token_type: :personal_access_token, valid_token: true, shared_examples_name: "process rubygems workhorse authorization", expected_status: :success2207 behaves like process rubygems workhorse authorization2208 for user type developer2209 has the proper content type2210 behaves like returning response status2211 returns success2212 with a request that bypassed gitlab-workhorse2213 behaves like returning response status2214 returns forbidden2215 visibility: :private, user_role: :guest, member: true, token_type: :personal_access_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :forbidden2216 behaves like rejects rubygems packages access2217 for user type guest2218 behaves like returning response status2219 returns forbidden2220 visibility: :private, user_role: :developer, member: true, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2221 behaves like rejects rubygems packages access2222 for user type developer2223 behaves like returning response status2224 returns unauthorized2225 visibility: :private, user_role: :guest, member: true, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2226 behaves like rejects rubygems packages access2227 for user type guest2228 behaves like returning response status2229 returns unauthorized2230 visibility: :private, user_role: :developer, member: false, token_type: :personal_access_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :not_found2231 behaves like rejects rubygems packages access2232 for user type developer2233 behaves like returning response status2234 returns not_found2235 visibility: :private, user_role: :guest, member: false, token_type: :personal_access_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :not_found2236 behaves like rejects rubygems packages access2237 for user type guest2238 behaves like returning response status2239 returns not_found2240 visibility: :private, user_role: :developer, member: false, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2241 behaves like rejects rubygems packages access2242 for user type developer2243 behaves like returning response status2244 returns unauthorized2245 visibility: :private, user_role: :guest, member: false, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2246 behaves like rejects rubygems packages access2247 for user type guest2248 behaves like returning response status2249 returns unauthorized2250 visibility: :private, user_role: :anonymous, member: false, token_type: :personal_access_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2251 behaves like rejects rubygems packages access2252 for user type anonymous2253 behaves like returning response status2254 returns unauthorized2255 visibility: :public, user_role: :developer, member: true, token_type: :job_token, valid_token: true, shared_examples_name: "process rubygems workhorse authorization", expected_status: :success2256 behaves like process rubygems workhorse authorization2257 for user type developer2258 has the proper content type2259 behaves like returning response status2260 returns success2261 with a request that bypassed gitlab-workhorse2262 behaves like returning response status2263 returns forbidden2264 visibility: :public, user_role: :guest, member: true, token_type: :job_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :forbidden2265 behaves like rejects rubygems packages access2266 for user type guest2267 behaves like returning response status2268 returns forbidden2269 visibility: :public, user_role: :developer, member: true, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2270 behaves like rejects rubygems packages access2271 for user type developer2272 behaves like returning response status2273 returns unauthorized2274 visibility: :public, user_role: :guest, member: true, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2275 behaves like rejects rubygems packages access2276 for user type guest2277 behaves like returning response status2278 returns unauthorized2279 visibility: :public, user_role: :developer, member: false, token_type: :job_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :forbidden2280 behaves like rejects rubygems packages access2281 for user type developer2282 behaves like returning response status2283 returns forbidden2284 visibility: :public, user_role: :guest, member: false, token_type: :job_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :forbidden2285 behaves like rejects rubygems packages access2286 for user type guest2287 behaves like returning response status2288 returns forbidden2289 visibility: :public, user_role: :developer, member: false, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2290 behaves like rejects rubygems packages access2291 for user type developer2292 behaves like returning response status2293 returns unauthorized2294 visibility: :public, user_role: :guest, member: false, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2295 behaves like rejects rubygems packages access2296 for user type guest2297 behaves like returning response status2298 returns unauthorized2299 visibility: :private, user_role: :developer, member: true, token_type: :job_token, valid_token: true, shared_examples_name: "process rubygems workhorse authorization", expected_status: :success2300 behaves like process rubygems workhorse authorization2301 for user type developer2302 has the proper content type2303 behaves like returning response status2304 returns success2305 with a request that bypassed gitlab-workhorse2306 behaves like returning response status2307 returns forbidden2308 visibility: :private, user_role: :guest, member: true, token_type: :job_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :forbidden2309 behaves like rejects rubygems packages access2310 for user type guest2311 behaves like returning response status2312 returns forbidden2313 visibility: :private, user_role: :developer, member: true, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2314 behaves like rejects rubygems packages access2315 for user type developer2316 behaves like returning response status2317 returns unauthorized2318 visibility: :private, user_role: :guest, member: true, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2319 behaves like rejects rubygems packages access2320 for user type guest2321 behaves like returning response status2322 returns unauthorized2323 visibility: :private, user_role: :developer, member: false, token_type: :job_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :not_found2324 behaves like rejects rubygems packages access2325 for user type developer2326 behaves like returning response status2327 returns not_found2328 visibility: :private, user_role: :guest, member: false, token_type: :job_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :not_found2329 behaves like rejects rubygems packages access2330 for user type guest2331 behaves like returning response status2332 returns not_found2333 visibility: :private, user_role: :developer, member: false, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2334 behaves like rejects rubygems packages access2335 for user type developer2336 behaves like returning response status2337 returns unauthorized2338 visibility: :private, user_role: :guest, member: false, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2339 behaves like rejects rubygems packages access2340 for user type guest2341 behaves like returning response status2342 returns unauthorized2343 visibility: :public, user_role: :developer, member: true, token_type: :deploy_token, valid_token: true, shared_examples_name: "process rubygems workhorse authorization", expected_status: :success2344 behaves like process rubygems workhorse authorization2345 for user type developer2346 has the proper content type2347 behaves like returning response status2348 returns success2349 with a request that bypassed gitlab-workhorse2350 behaves like returning response status2351 returns forbidden2352 visibility: :public, user_role: :developer, member: true, token_type: :deploy_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2353 behaves like rejects rubygems packages access2354 for user type developer2355 behaves like returning response status2356 returns unauthorized2357 visibility: :private, user_role: :developer, member: true, token_type: :deploy_token, valid_token: true, shared_examples_name: "process rubygems workhorse authorization", expected_status: :success2358 behaves like process rubygems workhorse authorization2359 for user type developer2360 has the proper content type2361 behaves like returning response status2362 returns success2363 with a request that bypassed gitlab-workhorse2364 behaves like returning response status2365 returns forbidden2366 visibility: :private, user_role: :developer, member: true, token_type: :deploy_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2367 behaves like rejects rubygems packages access2368 for user type developer2369 behaves like returning response status2370 returns unauthorized2371 POST /api/v4/projects/:project_id/packages/rubygems/api/v1/gems2372 with valid project2373 visibility: :public, user_role: :developer, member: true, token_type: :personal_access_token, valid_token: true, shared_examples_name: "process rubygems upload", expected_status: :created2374 behaves like process rubygems upload2375 for user type developer2376 with object storage disabled2377 without a file from workhorse2378 behaves like returning response status2379 returns bad_request2380 with correct params2381 behaves like package workhorse uploads2382 without a workhorse header2383 logs an error2384 behaves like returning response status2385 returns forbidden2386 behaves like creates rubygems package files2387 creates package files2388 returns bad request if package creation fails2389 behaves like a package tracking event2390 creates a gitlab tracking event push_package2391 with object storage enabled2392 and direct upload enabled2393 behaves like creates rubygems package files2394 creates package files2395 returns bad request if package creation fails2396 with invalid remote_id: 1231232397 behaves like returning response status2398 returns forbidden2399 with invalid remote_id: ../../1231232400 behaves like returning response status2401 returns forbidden2402 and direct upload disabled2403 behaves like creates rubygems package files2404 creates package files2405 returns bad request if package creation fails2406 visibility: :public, user_role: :guest, member: true, token_type: :personal_access_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :forbidden2407 behaves like rejects rubygems packages access2408 for user type guest2409 behaves like returning response status2410 returns forbidden2411 visibility: :public, user_role: :developer, member: true, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2412 behaves like rejects rubygems packages access2413 for user type developer2414 behaves like returning response status2415 returns unauthorized2416 visibility: :public, user_role: :guest, member: true, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2417 behaves like rejects rubygems packages access2418 for user type guest2419 behaves like returning response status2420 returns unauthorized2421 visibility: :public, user_role: :developer, member: false, token_type: :personal_access_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :forbidden2422 behaves like rejects rubygems packages access2423 for user type developer2424 behaves like returning response status2425 returns forbidden2426 visibility: :public, user_role: :guest, member: false, token_type: :personal_access_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :forbidden2427 behaves like rejects rubygems packages access2428 for user type guest2429 behaves like returning response status2430 returns forbidden2431 visibility: :public, user_role: :developer, member: false, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2432 behaves like rejects rubygems packages access2433 for user type developer2434 behaves like returning response status2435 returns unauthorized2436 visibility: :public, user_role: :guest, member: false, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2437 behaves like rejects rubygems packages access2438 for user type guest2439 behaves like returning response status2440 returns unauthorized2441 visibility: :public, user_role: :anonymous, member: false, token_type: :personal_access_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2442 behaves like rejects rubygems packages access2443 for user type anonymous2444 behaves like returning response status2445 returns unauthorized2446 visibility: :private, user_role: :developer, member: true, token_type: :personal_access_token, valid_token: true, shared_examples_name: "process rubygems upload", expected_status: :created2447 behaves like process rubygems upload2448 for user type developer2449 with object storage disabled2450 without a file from workhorse2451 behaves like returning response status2452 returns bad_request2453 with correct params2454 behaves like package workhorse uploads2455 without a workhorse header2456 logs an error2457 behaves like returning response status2458 returns forbidden2459 behaves like creates rubygems package files2460 creates package files2461 returns bad request if package creation fails2462 behaves like a package tracking event2463 creates a gitlab tracking event push_package2464 with object storage enabled2465 and direct upload enabled2466 behaves like creates rubygems package files2467 creates package files2468 returns bad request if package creation fails2469 with invalid remote_id: 1231232470 behaves like returning response status2471 returns forbidden2472 with invalid remote_id: ../../1231232473 behaves like returning response status2474 returns forbidden2475 and direct upload disabled2476 behaves like creates rubygems package files2477 creates package files2478 returns bad request if package creation fails2479 visibility: :private, user_role: :guest, member: true, token_type: :personal_access_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :forbidden2480 behaves like rejects rubygems packages access2481 for user type guest2482 behaves like returning response status2483 returns forbidden2484 visibility: :private, user_role: :developer, member: true, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2485 behaves like rejects rubygems packages access2486 for user type developer2487 behaves like returning response status2488 returns unauthorized2489 visibility: :private, user_role: :guest, member: true, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2490 behaves like rejects rubygems packages access2491 for user type guest2492 behaves like returning response status2493 returns unauthorized2494 visibility: :private, user_role: :developer, member: false, token_type: :personal_access_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :not_found2495 behaves like rejects rubygems packages access2496 for user type developer2497 behaves like returning response status2498 returns not_found2499 visibility: :private, user_role: :guest, member: false, token_type: :personal_access_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :not_found2500 behaves like rejects rubygems packages access2501 for user type guest2502 behaves like returning response status2503 returns not_found2504 visibility: :private, user_role: :developer, member: false, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2505 behaves like rejects rubygems packages access2506 for user type developer2507 behaves like returning response status2508 returns unauthorized2509 visibility: :private, user_role: :guest, member: false, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2510 behaves like rejects rubygems packages access2511 for user type guest2512 behaves like returning response status2513 returns unauthorized2514 visibility: :private, user_role: :anonymous, member: false, token_type: :personal_access_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2515 behaves like rejects rubygems packages access2516 for user type anonymous2517 behaves like returning response status2518 returns unauthorized2519 visibility: :public, user_role: :developer, member: true, token_type: :job_token, valid_token: true, shared_examples_name: "process rubygems upload", expected_status: :created2520 behaves like process rubygems upload2521 for user type developer2522 with object storage disabled2523 without a file from workhorse2524 behaves like returning response status2525 returns bad_request2526 with correct params2527 behaves like package workhorse uploads2528 without a workhorse header2529 logs an error2530 behaves like returning response status2531 returns forbidden2532 behaves like creates rubygems package files2533 creates package files2534 returns bad request if package creation fails2535 behaves like a package tracking event2536 creates a gitlab tracking event push_package2537 with object storage enabled2538 and direct upload enabled2539 behaves like creates rubygems package files2540 creates package files2541 returns bad request if package creation fails2542 with invalid remote_id: 1231232543 behaves like returning response status2544 returns forbidden2545 with invalid remote_id: ../../1231232546 behaves like returning response status2547 returns forbidden2548 and direct upload disabled2549 behaves like creates rubygems package files2550 creates package files2551 returns bad request if package creation fails2552 visibility: :public, user_role: :guest, member: true, token_type: :job_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :forbidden2553 behaves like rejects rubygems packages access2554 for user type guest2555 behaves like returning response status2556 returns forbidden2557 visibility: :public, user_role: :developer, member: true, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2558 behaves like rejects rubygems packages access2559 for user type developer2560 behaves like returning response status2561 returns unauthorized2562 visibility: :public, user_role: :guest, member: true, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2563 behaves like rejects rubygems packages access2564 for user type guest2565 behaves like returning response status2566 returns unauthorized2567 visibility: :public, user_role: :developer, member: false, token_type: :job_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :forbidden2568 behaves like rejects rubygems packages access2569 for user type developer2570 behaves like returning response status2571 returns forbidden2572 visibility: :public, user_role: :guest, member: false, token_type: :job_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :forbidden2573 behaves like rejects rubygems packages access2574 for user type guest2575 behaves like returning response status2576 returns forbidden2577 visibility: :public, user_role: :developer, member: false, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2578 behaves like rejects rubygems packages access2579 for user type developer2580 behaves like returning response status2581 returns unauthorized2582 visibility: :public, user_role: :guest, member: false, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2583 behaves like rejects rubygems packages access2584 for user type guest2585 behaves like returning response status2586 returns unauthorized2587 visibility: :private, user_role: :developer, member: true, token_type: :job_token, valid_token: true, shared_examples_name: "process rubygems upload", expected_status: :created2588 behaves like process rubygems upload2589 for user type developer2590 with object storage disabled2591 without a file from workhorse2592 behaves like returning response status2593 returns bad_request2594 with correct params2595 behaves like package workhorse uploads2596 without a workhorse header2597 logs an error2598 behaves like returning response status2599 returns forbidden2600 behaves like creates rubygems package files2601 creates package files2602 returns bad request if package creation fails2603 behaves like a package tracking event2604 creates a gitlab tracking event push_package2605 with object storage enabled2606 and direct upload enabled2607 behaves like creates rubygems package files2608 creates package files2609 returns bad request if package creation fails2610 with invalid remote_id: 1231232611 behaves like returning response status2612 returns forbidden2613 with invalid remote_id: ../../1231232614 behaves like returning response status2615 returns forbidden2616 and direct upload disabled2617 behaves like creates rubygems package files2618 creates package files2619 returns bad request if package creation fails2620 visibility: :private, user_role: :guest, member: true, token_type: :job_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :forbidden2621 behaves like rejects rubygems packages access2622 for user type guest2623 behaves like returning response status2624 returns forbidden2625 visibility: :private, user_role: :developer, member: true, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2626 behaves like rejects rubygems packages access2627 for user type developer2628 behaves like returning response status2629 returns unauthorized2630 visibility: :private, user_role: :guest, member: true, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2631 behaves like rejects rubygems packages access2632 for user type guest2633 behaves like returning response status2634 returns unauthorized2635 visibility: :private, user_role: :developer, member: false, token_type: :job_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :not_found2636 behaves like rejects rubygems packages access2637 for user type developer2638 behaves like returning response status2639 returns not_found2640 visibility: :private, user_role: :guest, member: false, token_type: :job_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :not_found2641 behaves like rejects rubygems packages access2642 for user type guest2643 behaves like returning response status2644 returns not_found2645 visibility: :private, user_role: :developer, member: false, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2646 behaves like rejects rubygems packages access2647 for user type developer2648 behaves like returning response status2649 returns unauthorized2650 visibility: :private, user_role: :guest, member: false, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2651 behaves like rejects rubygems packages access2652 for user type guest2653 behaves like returning response status2654 returns unauthorized2655 visibility: :public, user_role: :developer, member: true, token_type: :deploy_token, valid_token: true, shared_examples_name: "process rubygems upload", expected_status: :created2656 behaves like process rubygems upload2657 for user type developer2658 with object storage disabled2659 without a file from workhorse2660 behaves like returning response status2661 returns bad_request2662 with correct params2663 behaves like package workhorse uploads2664 without a workhorse header2665 logs an error2666 behaves like returning response status2667 returns forbidden2668 behaves like creates rubygems package files2669 creates package files2670 returns bad request if package creation fails2671 behaves like a package tracking event2672 creates a gitlab tracking event push_package2673 with object storage enabled2674 and direct upload enabled2675 behaves like creates rubygems package files2676 creates package files2677 returns bad request if package creation fails2678 with invalid remote_id: 1231232679 behaves like returning response status2680 returns forbidden2681 with invalid remote_id: ../../1231232682 behaves like returning response status2683 returns forbidden2684 and direct upload disabled2685 behaves like creates rubygems package files2686 creates package files2687 returns bad request if package creation fails2688 visibility: :public, user_role: :developer, member: true, token_type: :deploy_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2689 behaves like rejects rubygems packages access2690 for user type developer2691 behaves like returning response status2692 returns unauthorized2693 visibility: :private, user_role: :developer, member: true, token_type: :deploy_token, valid_token: true, shared_examples_name: "process rubygems upload", expected_status: :created2694 behaves like process rubygems upload2695 for user type developer2696 with object storage disabled2697 without a file from workhorse2698 behaves like returning response status2699 returns bad_request2700 with correct params2701 behaves like package workhorse uploads2702 without a workhorse header2703 logs an error2704 behaves like returning response status2705 returns forbidden2706 behaves like creates rubygems package files2707 creates package files2708 returns bad request if package creation fails2709 behaves like a package tracking event2710 creates a gitlab tracking event push_package2711 with object storage enabled2712 and direct upload enabled2713 behaves like creates rubygems package files2714 creates package files2715 returns bad request if package creation fails2716 with invalid remote_id: 1231232717 behaves like returning response status2718 returns forbidden2719 with invalid remote_id: ../../1231232720 behaves like returning response status2721 returns forbidden2722 and direct upload disabled2723 behaves like creates rubygems package files2724 creates package files2725 returns bad request if package creation fails2726 visibility: :private, user_role: :developer, member: true, token_type: :deploy_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2727 behaves like rejects rubygems packages access2728 for user type developer2729 behaves like returning response status2730 returns unauthorized2731 failed package file save2732 does not create package record2733 GET /api/v4/projects/:project_id/packages/rubygems/api/v1/dependencies2734 with valid project2735 visibility: :public, user_role: :developer, member: true, token_type: :personal_access_token, valid_token: true, shared_examples_name: "dependency endpoint success", expected_status: :success2736 behaves like dependency endpoint success2737 for user type developer2738 with no params2739 returns empty2740 with gems params2741 returns successfully2742 rejects if the service fails2743 visibility: :public, user_role: :guest, member: true, token_type: :personal_access_token, valid_token: true, shared_examples_name: "dependency endpoint success", expected_status: :success2744 behaves like dependency endpoint success2745 for user type guest2746 with no params2747 returns empty2748 with gems params2749 returns successfully2750 rejects if the service fails2751 visibility: :public, user_role: :developer, member: true, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2752 behaves like rejects rubygems packages access2753 for user type developer2754 behaves like returning response status2755 returns unauthorized2756 visibility: :public, user_role: :guest, member: true, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2757 behaves like rejects rubygems packages access2758 for user type guest2759 behaves like returning response status2760 returns unauthorized2761 visibility: :public, user_role: :developer, member: false, token_type: :personal_access_token, valid_token: true, shared_examples_name: "dependency endpoint success", expected_status: :success2762 behaves like dependency endpoint success2763 for user type developer2764 with no params2765 returns empty2766 with gems params2767 returns successfully2768 rejects if the service fails2769 visibility: :public, user_role: :guest, member: false, token_type: :personal_access_token, valid_token: true, shared_examples_name: "dependency endpoint success", expected_status: :success2770 behaves like dependency endpoint success2771 for user type guest2772 with no params2773 returns empty2774 with gems params2775 returns successfully2776 rejects if the service fails2777 visibility: :public, user_role: :developer, member: false, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2778 behaves like rejects rubygems packages access2779 for user type developer2780 behaves like returning response status2781 returns unauthorized2782 visibility: :public, user_role: :guest, member: false, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2783 behaves like rejects rubygems packages access2784 for user type guest2785 behaves like returning response status2786 returns unauthorized2787 visibility: :public, user_role: :anonymous, member: false, token_type: :personal_access_token, valid_token: true, shared_examples_name: "dependency endpoint success", expected_status: :success2788 behaves like dependency endpoint success2789 for user type anonymous2790 with no params2791 returns empty2792 with gems params2793 returns successfully2794 rejects if the service fails2795 visibility: :private, user_role: :developer, member: true, token_type: :personal_access_token, valid_token: true, shared_examples_name: "dependency endpoint success", expected_status: :success2796 behaves like dependency endpoint success2797 for user type developer2798 with no params2799 returns empty2800 with gems params2801 returns successfully2802 rejects if the service fails2803 visibility: :private, user_role: :guest, member: true, token_type: :personal_access_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :forbidden2804 behaves like rejects rubygems packages access2805 for user type guest2806 behaves like returning response status2807 returns forbidden2808 visibility: :private, user_role: :developer, member: true, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2809 behaves like rejects rubygems packages access2810 for user type developer2811 behaves like returning response status2812 returns unauthorized2813 visibility: :private, user_role: :guest, member: true, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2814 behaves like rejects rubygems packages access2815 for user type guest2816 behaves like returning response status2817 returns unauthorized2818 visibility: :private, user_role: :developer, member: false, token_type: :personal_access_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :not_found2819 behaves like rejects rubygems packages access2820 for user type developer2821 behaves like returning response status2822 returns not_found2823 visibility: :private, user_role: :guest, member: false, token_type: :personal_access_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :not_found2824 behaves like rejects rubygems packages access2825 for user type guest2826 behaves like returning response status2827 returns not_found2828 visibility: :private, user_role: :developer, member: false, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2829 behaves like rejects rubygems packages access2830 for user type developer2831 behaves like returning response status2832 returns unauthorized2833 visibility: :private, user_role: :guest, member: false, token_type: :personal_access_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2834 behaves like rejects rubygems packages access2835 for user type guest2836 behaves like returning response status2837 returns unauthorized2838 visibility: :private, user_role: :anonymous, member: false, token_type: :personal_access_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :not_found2839 behaves like rejects rubygems packages access2840 for user type anonymous2841 behaves like returning response status2842 returns not_found2843 visibility: :public, user_role: :developer, member: true, token_type: :job_token, valid_token: true, shared_examples_name: "dependency endpoint success", expected_status: :success2844 behaves like dependency endpoint success2845 for user type developer2846 with no params2847 returns empty2848 with gems params2849 returns successfully2850 rejects if the service fails2851 visibility: :public, user_role: :guest, member: true, token_type: :job_token, valid_token: true, shared_examples_name: "dependency endpoint success", expected_status: :success2852 behaves like dependency endpoint success2853 for user type guest2854 with no params2855 returns empty2856 with gems params2857 returns successfully2858 rejects if the service fails2859 visibility: :public, user_role: :developer, member: true, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2860 behaves like rejects rubygems packages access2861 for user type developer2862 behaves like returning response status2863 returns unauthorized2864 visibility: :public, user_role: :guest, member: true, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2865 behaves like rejects rubygems packages access2866 for user type guest2867 behaves like returning response status2868 returns unauthorized2869 visibility: :public, user_role: :developer, member: false, token_type: :job_token, valid_token: true, shared_examples_name: "dependency endpoint success", expected_status: :success2870 behaves like dependency endpoint success2871 for user type developer2872 with no params2873 returns empty2874 with gems params2875 returns successfully2876 rejects if the service fails2877 visibility: :public, user_role: :guest, member: false, token_type: :job_token, valid_token: true, shared_examples_name: "dependency endpoint success", expected_status: :success2878 behaves like dependency endpoint success2879 for user type guest2880 with no params2881 returns empty2882 with gems params2883 returns successfully2884 rejects if the service fails2885 visibility: :public, user_role: :developer, member: false, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2886 behaves like rejects rubygems packages access2887 for user type developer2888 behaves like returning response status2889 returns unauthorized2890 visibility: :public, user_role: :guest, member: false, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2891 behaves like rejects rubygems packages access2892 for user type guest2893 behaves like returning response status2894 returns unauthorized2895 visibility: :private, user_role: :developer, member: true, token_type: :job_token, valid_token: true, shared_examples_name: "dependency endpoint success", expected_status: :success2896 behaves like dependency endpoint success2897 for user type developer2898 with no params2899 returns empty2900 with gems params2901 returns successfully2902 rejects if the service fails2903 visibility: :private, user_role: :guest, member: true, token_type: :job_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :forbidden2904 behaves like rejects rubygems packages access2905 for user type guest2906 behaves like returning response status2907 returns forbidden2908 visibility: :private, user_role: :developer, member: true, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2909 behaves like rejects rubygems packages access2910 for user type developer2911 behaves like returning response status2912 returns unauthorized2913 visibility: :private, user_role: :guest, member: true, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2914 behaves like rejects rubygems packages access2915 for user type guest2916 behaves like returning response status2917 returns unauthorized2918 visibility: :private, user_role: :developer, member: false, token_type: :job_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :not_found2919 behaves like rejects rubygems packages access2920 for user type developer2921 behaves like returning response status2922 returns not_found2923 visibility: :private, user_role: :guest, member: false, token_type: :job_token, valid_token: true, shared_examples_name: "rejects rubygems packages access", expected_status: :not_found2924 behaves like rejects rubygems packages access2925 for user type guest2926 behaves like returning response status2927 returns not_found2928 visibility: :private, user_role: :developer, member: false, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2929 behaves like rejects rubygems packages access2930 for user type developer2931 behaves like returning response status2932 returns unauthorized2933 visibility: :private, user_role: :guest, member: false, token_type: :job_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2934 behaves like rejects rubygems packages access2935 for user type guest2936 behaves like returning response status2937 returns unauthorized2938 visibility: :public, user_role: :developer, member: true, token_type: :deploy_token, valid_token: true, shared_examples_name: "dependency endpoint success", expected_status: :success2939 behaves like dependency endpoint success2940 for user type developer2941 with no params2942 returns empty2943 with gems params2944 returns successfully2945 rejects if the service fails2946 visibility: :public, user_role: :developer, member: true, token_type: :deploy_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2947 behaves like rejects rubygems packages access2948 for user type developer2949 behaves like returning response status2950 returns unauthorized2951 visibility: :private, user_role: :developer, member: true, token_type: :deploy_token, valid_token: true, shared_examples_name: "dependency endpoint success", expected_status: :success2952 behaves like dependency endpoint success2953 for user type developer2954 with no params2955 returns empty2956 with gems params2957 returns successfully2958 rejects if the service fails2959 visibility: :private, user_role: :developer, member: true, token_type: :deploy_token, valid_token: false, shared_examples_name: "rejects rubygems packages access", expected_status: :unauthorized2960 behaves like rejects rubygems packages access2961 for user type developer2962 behaves like returning response status2963 returns unauthorized2964 with access to package registry for everyone2965 behaves like dependency endpoint success2966 for user type anonymous2967 with no params2968 returns empty2969 with gems params2970 returns successfully2971 rejects if the service fails2972Projects::BranchesController2973 POST create with HTML format2974 on creation of a new branch2975 valid branch name, valid source2976 redirects2977 invalid branch name, valid ref2978 redirects2979 valid branch name, invalid ref2980 is expected to render template new2981 invalid branch name, invalid ref2982 is expected to render template new2983 valid branch name with encoded slashes2984 is expected to render template new2985 example at ./spec/controllers/projects/branches_controller_spec.rb:722986 created from the new branch button on issues2987 redirects2988 posts a system note2989 confidential_issue_project_id is present2990 user cannot update issue2991 does not post a system note2992 user can update issue2993 issue is under the specified project2994 posts a system note2995 issue is not under the specified project2996 does not post a system note2997 repository-less project2998 redirects to newly created branch2999 redirects to autodeploy setup page3000 when user configured kubernetes from CI/CD > Clusters3001 redirects to autodeploy setup page3002 when create branch service fails3003 doesn't post a system note3004 without issue feature access3005 doesn't post a system note3006 POST create with JSON format3007 with valid params3008 returns a successful 200 response3009 returns the created branch3010 with invalid params3011 returns an unprocessable entity 422 response3012 POST destroy with HTML format3013 returns response code 3033014 with http referer3015 redirects to the referer path3016 without http referer3017 redirects to the project branches path3018 POST destroy3019 as JS3020 valid branch name, valid source3021 is expected to respond with numeric status code ok3022 is expected to be blank3023 valid branch name with unencoded slashes3024 is expected to respond with numeric status code ok3025 is expected to be blank3026 valid branch name with encoded slashes3027 is expected to respond with numeric status code not_found3028 is expected to be blank3029 invalid branch name, valid ref3030 is expected to respond with numeric status code not_found3031 is expected to be blank3032 as JSON3033 valid branch name, valid source3034 returns JSON response with message3035 is expected to respond with numeric status code ok3036 valid branch name with unencoded slashes3037 returns JSON response with message3038 is expected to respond with numeric status code ok3039 valid branch name with encoded slashes3040 returns JSON response with message3041 is expected to respond with numeric status code not_found3042 invalid branch name, valid ref3043 returns JSON response with message3044 is expected to respond with numeric status code not_found3045 as HTML3046 redirects to branches path3047 DELETE destroy_all_merged3048 when user is allowed to push3049 redirects to branches3050 starts worker to delete merged branches3051 when user is not allowed to push3052 responds with status 4043053 GET index3054 when rendering a JSON format3055 filters branches by name3056 when a branch has multiple pipelines3057 chooses the latest to determine status3058 when multiple branches exist3059 all relevant commit statuses are received3060 when a branch contains no pipelines3061 no commit statuses are received3062 when cache is enabled yet cold3063 return with a status 2003064 when branch contains an invalid UTF-8 sequence3065 return with a status 2003066 when deprecated sort/search/page parameters are specified3067 returns with a status 301 when sort specified3068 returns with a status 301 when search specified3069 returns with a status 301 when page specified3070 fetching branches for overview3071 sets active and stale branches3072 when state is not supported3073 returns 404 page3074 sorting3075 is expected to eq "name_asc"3076 when sort is not provided3077 uses a default sort without an error message3078 when sort is not supported3079 uses a default sort and shows an error message3080 when gitaly is not available3081 returns with a status 5033082 sets gitaly_unavailable variable3083 GET diverging_commit_counts3084 returns the commit counts behind and ahead of default branch3085 returns the commits counts with no names provided3086 with many branches3087 returns 422 if no names are specified3088 returns the list of counts3089API::Terraform::State3090 GET /projects/:id/terraform/state/:name3091 behaves like endpoint with unique user tracking3092 without authentication3093 does not track unique hll event3094 does not track Snowplow event3095 with maintainer permissions3096 behaves like tracking unique hll events3097 tracks unique event3098 behaves like Snowplow event tracking with RedisHLL context3099 behaves like Snowplow event tracking3100 is emitted3101 behaves like it depends on value of the `terraform_state.enabled` config3102 when terraform_state.enabled=false3103 returns `forbidden` response3104 when terraform_state.enabled=true3105 returns a successful response3106 without authentication3107 returns 401 if user is not authenticated3108 personal access token authentication3109 with maintainer permissions3110 given_state_name: "test-state"3111 behaves like can access terraform state3112 returns terraform state of a project of given state name3113 given_state_name: "test.state"3114 behaves like can access terraform state3115 returns terraform state of a project of given state name3116 given_state_name: "test%2Ffoo"3117 behaves like can access terraform state3118 returns terraform state of a project of given state name3119 for a project that does not exist3120 returns not found3121 with invalid state name3122 returns a 404 error3123 behaves like cannot access a state that is scheduled for deletion3124 returns unprocessable entity3125 with developer permissions3126 behaves like can access terraform state3127 returns terraform state of a project of given state name3128 job token authentication3129 with maintainer permissions3130 returns unauthorized if the the job is not running3131 behaves like can access terraform state3132 returns terraform state of a project of given state name3133 for a project that does not exist3134 returns not found3135 with developer permissions3136 behaves like can access terraform state3137 returns terraform state of a project of given state name3138 POST /projects/:id/terraform/state/:name3139 behaves like endpoint with unique user tracking3140 without authentication3141 does not track unique hll event3142 does not track Snowplow event3143 with maintainer permissions3144 behaves like tracking unique hll events3145 tracks unique event3146 behaves like Snowplow event tracking with RedisHLL context3147 behaves like Snowplow event tracking3148 is emitted3149 behaves like it depends on value of the `terraform_state.enabled` config3150 when terraform_state.enabled=false3151 returns `forbidden` response3152 when terraform_state.enabled=true3153 returns a successful response3154 when terraform state with a given name is already present3155 with maintainer permissions3156 given_state_name: "test-state"3157 updates the state3158 given_state_name: "test.state"3159 updates the state3160 given_state_name: "test%2Ffoo"3161 updates the state3162 with invalid state name3163 returns a 404 error3164 when serial already exists3165 returns unprocessable entity3166 behaves like cannot access a state that is scheduled for deletion3167 returns unprocessable entity3168 without body3169 returns no content if no body is provided3170 with developer permissions3171 returns forbidden3172 when there is no terraform state of a given name3173 with maintainer permissions3174 given_state_name: "test-state"3175 creates a new state3176 given_state_name: "test.state"3177 creates a new state3178 given_state_name: "test%2Ffoo"3179 creates a new state3180 without body3181 returns no content if no body is provided3182 with developer permissions3183 returns forbidden3184 when using job token authentication3185 associates the job with the newly created state version3186 response depending on the max allowed state size3187 when the max allowed state size is unlimited (set as 0)3188 returns a success response3189 when the max allowed state size is greater than the request state size3190 returns a success response3191 when the max allowed state size is equal to the request state size3192 returns a success response3193 when the max allowed state size is less than the request state size3194 returns a 'payload too large' response3195 DELETE /projects/:id/terraform/state/:name3196 behaves like endpoint with unique user tracking3197 without authentication3198 does not track unique hll event3199 does not track Snowplow event3200 with maintainer permissions3201 behaves like tracking unique hll events3202 tracks unique event3203 behaves like Snowplow event tracking with RedisHLL context3204 behaves like Snowplow event tracking3205 is emitted3206 behaves like it depends on value of the `terraform_state.enabled` config3207 when terraform_state.enabled=false3208 returns `forbidden` response3209 when terraform_state.enabled=true3210 returns a successful response3211 with maintainer permissions3212 given_state_name: "test-state"3213 behaves like schedules the state for deletion3214 returns empty body3215 given_state_name: "test.state"3216 behaves like schedules the state for deletion3217 returns empty body3218 given_state_name: "test%2Ffoo"3219 behaves like schedules the state for deletion3220 returns empty body3221 with invalid state name3222 returns a 404 error3223 behaves like cannot access a state that is scheduled for deletion3224 returns unprocessable entity3225 with developer permissions3226 returns forbidden3227 POST /projects/:id/terraform/state/:name/lock3228 behaves like endpoint with unique user tracking3229 without authentication3230 does not track unique hll event3231 does not track Snowplow event3232 with maintainer permissions3233 behaves like tracking unique hll events3234 tracks unique event3235 behaves like Snowplow event tracking with RedisHLL context3236 behaves like Snowplow event tracking3237 is emitted3238 behaves like cannot access a state that is scheduled for deletion3239 returns unprocessable entity3240 with invalid state name3241 returns a 404 error3242 state is already locked3243 returns an error3244 user does not have permission to lock the state3245 returns an error3246 given_state_name: "test-state"3247 locks the terraform state3248 given_state_name: "test%2Ffoo"3249 locks the terraform state3250 with a dot in the state name3251 locks the terraform state3252 DELETE /projects/:id/terraform/state/:name/lock3253 behaves like endpoint with unique user tracking3254 without authentication3255 does not track unique hll event3256 does not track Snowplow event3257 with maintainer permissions3258 behaves like tracking unique hll events3259 tracks unique event3260 behaves like Snowplow event tracking with RedisHLL context3261 behaves like Snowplow event tracking3262 is emitted3263 behaves like cannot access a state that is scheduled for deletion3264 returns unprocessable entity3265 behaves like it depends on value of the `terraform_state.enabled` config3266 when terraform_state.enabled=false3267 returns `forbidden` response3268 when terraform_state.enabled=true3269 returns a successful response3270 given_state_name: "test-state"3271 with the correct lock id3272 removes the terraform state lock3273 with no lock id (force-unlock)3274 removes the terraform state lock3275 given_state_name: "test.state"3276 with the correct lock id3277 removes the terraform state lock3278 with no lock id (force-unlock)3279 removes the terraform state lock3280 given_state_name: "test%2Ffoo"3281 with the correct lock id3282 removes the terraform state lock3283 with no lock id (force-unlock)3284 removes the terraform state lock3285 with invalid state name3286 returns a 404 error3287 with an incorrect lock id3288 returns an error3289 with a longer than 255 character lock id3290 returns an error3291 user does not have permission to unlock the state3292 returns an error3293Projects::MergeRequests::DraftsController3294 GET #index3295 list merge request draft notes for current user3296 POST #create3297 creates a draft note3298 creates draft note with position3299 creates a draft note with quick actions3300 without permissions3301 does not allow draft note creation3302 in a thread3303 creates draft note as a reply3304 creates a draft note that will resolve a thread3305 cannot create more than one draft note per thread3306 commit_id is present3307 value is a commit sha3308 creates the draft note with commit ID3309 value is "undefined"3310 creates the draft note with nil commit ID3311 when the draft note is invalid3312 does not allow draft note creation3313 returns status 4223314 PUT #update3315 updates the draft3316 without permissions3317 does not allow editing draft note belonging to someone else3318 when the draft note is invalid3319 does not update the draft3320 returns status 4223321 POST #publish3322 publishes draft notes with position3323 does nothing if there are no draft notes3324 publishes a draft note with quick actions and applies them3325 publishes all draft notes for an MR3326 can publish just a single draft note3327 without permissions3328 when note belongs to someone else3329 behaves like action that does not allow publishing draft note3330 does not allow publishing draft note3331 when merge request discussion is locked3332 behaves like action that does not allow publishing draft note3333 does not allow publishing draft note3334 when PublishService errors3335 returns message and 500 response3336 when publishing drafts in a thread3337 resolves a thread if the draft note resolves it3338 unresolves a thread if the draft note unresolves it3339 publish with note3340 creates note3341 does not create note when note param is empty3342 tracks merge request activity3343 approve merge request3344 approves merge request3345 does not approve merge request3346 tracks merge request activity3347 when merge request is already approved by user3348 does return 2003349 DELETE #destroy3350 destroys the draft note when ID is given3351 without permissions3352 does not allow destroying a draft note belonging to someone else3353 without permissions3354 does not allow editing draft note belonging to someone else3355 DELETE #discard3356 deletes all DraftNotes belonging to a user in a Merge Request3357 without permissions3358 does not destroys a draft note belonging to someone else3359Adding a Note3360 behaves like a Note mutation when the user does not have permission3361 behaves like a Note mutation that does not create a Note3362 is expected not to change `Note.count`3363 behaves like a mutation that returns top-level errors3364 is expected to contain exactly "The resource that you are attempting to access does not exist or you don't have permission to perform this action"3365 when the user has permission3366 returns the note3367 behaves like a working GraphQL mutation3368 with a personal access token3369 behaves like prevents access to the mutation3370 does not resolve the mutation3371 behaves like allows access to the mutation3372 behaves like a working graphql query that returns data3373 contains data3374 behaves like a working graphql query3375 returns a successful response3376 with an OAuth token3377 behaves like prevents access to the mutation3378 does not resolve the mutation3379 behaves like allows access to the mutation3380 behaves like a working graphql query that returns data3381 contains data3382 behaves like a working graphql query3383 returns a successful response3384 behaves like a Note mutation that creates a Note3385 is expected to change `Note.count` by 13386 behaves like a Note mutation when there are active record validation errors3387 returns an empty Note3388 behaves like a Note mutation that does not create a Note3389 is expected not to change `Note.count`3390 behaves like a mutation that returns errors in the response3391 is expected to contain exactly "Error 1" and "Error 2"3392 behaves like a Note mutation when the given resource id is not for a Noteable3393 behaves like a Note mutation that does not create a Note3394 is expected not to change `Note.count`3395 behaves like a mutation that returns top-level errors3396 is expected to include / does not represent an instance of Noteable/3397 behaves like a Note mutation when there are rate limit validation errors3398 with rate limiter3399 behaves like a Note mutation that does not create a Note3400 is expected not to change `Note.count`3401 behaves like a mutation that returns top-level errors3402 is expected to contain exactly "This endpoint has been requested too many times. Try again later."3403 when the user is in the allowlist3404 behaves like a Note mutation that creates a Note3405 is expected to change `Note.count` by 13406 creating Notes in reply to a discussion3407 when the user does not have permission to create notes on the discussion3408 behaves like a mutation that returns top-level errors3409 is expected to contain exactly "The discussion does not exist or you don't have permission to perform this action"3410 when the user has permission to create notes on the discussion3411 creates a Note in a discussion3412 when the discussion_id is not for a Discussion3413 behaves like a mutation that returns top-level errors3414 is expected to include / does not represent an instance of Discussion/3415 for an issue3416 when using internal param3417 behaves like a Note mutation with confidential notes3418 returns a Note with confidentiality enabled3419 behaves like a Note mutation that creates a Note3420 is expected to change `Note.count` by 13421 when using deprecated confidential param3422 behaves like a Note mutation with confidential notes3423 returns a Note with confidentiality enabled3424 behaves like a Note mutation that creates a Note3425 is expected to change `Note.count` by 13426 as work item3427 when using internal param3428 behaves like a Note mutation with confidential notes3429 returns a Note with confidentiality enabled3430 behaves like a Note mutation that creates a Note3431 is expected to change `Note.count` by 13432 when using deprecated confidential param3433 behaves like a Note mutation with confidential notes3434 returns a Note with confidentiality enabled3435 behaves like a Note mutation that creates a Note3436 is expected to change `Note.count` by 13437 without notes widget3438 behaves like a Note mutation that does not create a Note3439 is expected not to change `Note.count`3440 behaves like a mutation that returns top-level errors3441 is expected to contain exactly "The resource that you are attempting to access does not exist or you don't have permission to perform this action"3442 when body contains quick actions3443 behaves like work item supports labels widget updates via quick actions3444 when only removing labels3445 behaves like work item labels are updated3446 is expected to contain exactly3447 when only adding labels3448 behaves like work item labels are updated3449 is expected to contain exactly #<ProjectLabel id:171 namespace684/project-745~171>, #<ProjectLabel id:172 namespace684/project-745~172>, and #<ProjectLabel id:170 namespace684/project-745~170>3450 when adding and removing labels3451 behaves like work item labels are updated3452 is expected to contain exactly #<ProjectLabel id:171 namespace684/project-745~171> and #<ProjectLabel id:172 namespace684/project-745~172>3453 behaves like work item does not support labels widget updates via quick actions3454 ignores the quick action3455 behaves like work item supports assignee widget updates via quick actions3456 when assigning a user3457 updates the work item assignee3458 when unassigning a user3459 updates the work item assignee3460 behaves like work item does not support assignee widget updates via quick actions3461 ignores the quick action3462 behaves like work item supports start and due date widget updates via quick actions3463 updates start and due date3464 behaves like work item does not support start and due date widget updates via quick actions3465 ignores the quick action3466 behaves like work item supports type change via quick actions3467 with /type quick command3468 behaves like a quick command that changes type3469 updates type3470 when update service returns errors3471 mutation response include the errors3472 when quick command for unsupported widget is present3473 updates only type3474 when the type name is upper case3475 changes type to issue3476 with /promote_to quick command3477 behaves like a quick command that changes type3478 updates type3479 when update service returns errors3480 mutation response include the errors3481 when quick command for unsupported widget is present3482 updates only type3483 when the type name is upper case3484 changes type to issue3485 when body only contains quick actions3486 returns a nil note and info about the command in errors3487 starts the merge process3488Projects::CommitController3489 GET show3490 handles binary files3491 with valid id3492 responds with 2003493 when a pipeline job is running3494 defines last pipeline information3495 with invalid id3496 responds with 4043497 with valid page3498 responds with 2003499 with invalid page3500 does not return an error3501 as diff3502 triggers workhorse to serve the request3503 as patch3504 contains a git diff3505 commit that removes a submodule3506 renders it3507 in the context of a merge_request3508 prepare diff notes in the context of the merge request3509 GET branches3510 contains branch and tags information3511 returns :limit_exceeded when number of branches/tags reach a threshhold3512 when commit is not found3513 responds with 4043514 POST revert3515 when target branch is not provided3516 renders the 404 page3517 when the revert commit is missing3518 renders the 404 page3519 when the revert was successful3520 redirects to the commits page3521 when the revert failed3522 redirects to the commit page3523 in the context of a merge_request3524 when the revert was successful3525 redirects to the merge request page3526 when the revert failed3527 redirects to the merge request page3528 POST cherry_pick3529 when target branch is not provided3530 renders the 404 page3531 when the cherry-pick commit is missing3532 renders the 404 page3533 when the cherry-pick was successful3534 redirects to the commits page3535 when the cherry_pick failed3536 redirects to the commit page3537 in the context of a merge_request3538 when the cherry_pick was successful3539 redirects to the merge request page3540 when the cherry_pick failed3541 redirects to the merge request page3542 when a project has a fork3543 successfully cherry picks a commit from fork to upstream project3544 when the cherry pick is performed via merge request3545 successfully cherry picks a commit from fork to a cherry pick branch3546 when a user cannot push to upstream project3547 cherry picks a commit to the fork3548 when a user do not have access to the target project3549 cherry picks a commit to the fork3550 GET #diff_files3551 renders diff files3552 when format is not html3553 returns 404 page3554 GET diff_for_path3555 when the commit exists3556 when the user has access to the project3557 when the path exists in the diff3558 enables diff notes3559 only renders the diffs for the path given3560 when the path does not exist in the diff3561 returns a 4043562 when the user does not have access to the project3563 returns a 4043564 when the commit does not exist3565 returns a 4043566 GET pipelines3567 when the commit exists3568 when the commit has pipelines3569 when rendering a HTML format3570 shows pipelines3571 defines last pipeline information3572 when rendering a JSON format3573 responds with serialized pipelines3574 with pagination3575 paginates the result when ref is blank3576 paginates the result when ref is present3577 when the commit does not exist3578 returns a 4043579Projects::IssuesController3580 GET #new3581 behaves like observability csp policy3582 when there is no CSP config3583 does not add any csp header3584 frame-src3585 when frame-src exists in the CSP config3586 appends the proper url to frame-src CSP directives3587 when signin url is already present in the policy3588 does not append signin again3589 when oauth url is already present in the policy3590 does not append oauth again3591 when default-src exists in the CSP config3592 does not change default-src3593 appends the proper url to frame-src CSP directives3594 when frame-src and default-src exist in the CSP config3595 appends to frame-src CSP directives3596 connect-src3597 when connect-src exists in the CSP config3598 appends the proper url to connect-src CSP directives3599 when default-src exists in the CSP config3600 does not change default-src3601 appends the proper url to connect-src CSP directives3602 when connect-src and default-src exist in the CSP config3603 appends to connect-src CSP directives3604 GET #show3605 behaves like observability csp policy3606 when there is no CSP config3607 does not add any csp header3608 frame-src3609 when frame-src exists in the CSP config3610 appends the proper url to frame-src CSP directives3611 when signin url is already present in the policy3612 does not append signin again3613 when oauth url is already present in the policy3614 does not append oauth again3615 when default-src exists in the CSP config3616 does not change default-src3617 appends the proper url to frame-src CSP directives3618 when frame-src and default-src exist in the CSP config3619 appends to frame-src CSP directives3620 connect-src3621 when connect-src exists in the CSP config3622 appends the proper url to connect-src CSP directives3623 when default-src exists in the CSP config3624 does not change default-src3625 appends the proper url to connect-src CSP directives3626 when connect-src and default-src exist in the CSP config3627 appends to connect-src CSP directives3628 incident tabs3629 redirects to the issues route for non-incidents3630 responds with selected tab for incidents3631 GET #discussions3632 pagination3633 returns paginated notes and cursor based on per_page param3634 token authentication3635 when public project3636 behaves like authenticates sessionless user for the request spec3637 index atom3638 when the 'private_token' param is populated with the personal access token3639 when valid token3640 when resource is public3641 authenticates user and returns response with ok status3642 when user with expired password3643 does not authenticate user and returns response with ok status3644 when the personal access token has no api scope3645 when resource is public3646 does not authenticate user and returns response with ok status3647 when invalid token3648 when resource is public3649 does not authenticate user and returns response with ok status3650 when the 'PRIVATE-TOKEN' header is populated with the personal access token3651 when valid token3652 when resource is public3653 authenticates user and returns response with ok status3654 when user with expired password3655 does not authenticate user and returns response with ok status3656 when the personal access token has no api scope3657 when resource is public3658 does not authenticate user and returns response with ok status3659 when invalid token3660 when resource is public3661 does not authenticate user and returns response with ok status3662 when the 'feed_token' param is populated with the feed token3663 when valid token3664 when resource is public3665 authenticates user and returns response with ok status3666 when user with expired password3667 does not authenticate user and returns response with ok status3668 when invalid token3669 when resource is public3670 does not authenticate user and returns response with ok status3671 behaves like authenticates sessionless user for the request spec3672 calendar ics3673 when the 'private_token' param is populated with the personal access token3674 when valid token3675 when resource is public3676 authenticates user and returns response with ok status3677 when user with expired password3678 does not authenticate user and returns response with ok status3679 when the personal access token has no api scope3680 when resource is public3681 does not authenticate user and returns response with ok status3682 when invalid token3683 when resource is public3684 does not authenticate user and returns response with ok status3685 when the 'PRIVATE-TOKEN' header is populated with the personal access token3686 when valid token3687 when resource is public3688 authenticates user and returns response with ok status3689 when user with expired password3690 does not authenticate user and returns response with ok status3691 when the personal access token has no api scope3692 when resource is public3693 does not authenticate user and returns response with ok status3694 when invalid token3695 when resource is public3696 does not authenticate user and returns response with ok status3697 when the 'feed_token' param is populated with the feed token3698 when valid token3699 when resource is public3700 authenticates user and returns response with ok status3701 when user with expired password3702 does not authenticate user and returns response with ok status3703 when invalid token3704 when resource is public3705 does not authenticate user and returns response with ok status3706 when private project3707 behaves like authenticates sessionless user for the request spec3708 index atom3709 when the 'private_token' param is populated with the personal access token3710 when valid token3711 when resource is private3712 authenticates user and returns response with ok status3713 when user with expired password3714 does not return response with ok status3715 when password expiration is not applicable3716 when ldap user3717 authenticates user and returns response with ok status3718 when the personal access token has no api scope3719 when resource is private3720 does not return response with ok status3721 when invalid token3722 when resource is private3723 does not return response with ok status3724 when the 'PRIVATE-TOKEN' header is populated with the personal access token3725 when valid token3726 when resource is private3727 authenticates user and returns response with ok status3728 when user with expired password3729 does not return response with ok status3730 when password expiration is not applicable3731 when ldap user3732 authenticates user and returns response with ok status3733 when the personal access token has no api scope3734 when resource is private3735 does not return response with ok status3736 when invalid token3737 when resource is private3738 does not return response with ok status3739 when the 'feed_token' param is populated with the feed token3740 when valid token3741 when resource is private3742 authenticates user and returns response with ok status3743 when user with expired password3744 does not return response with ok status3745 when password expiration is not applicable3746 when ldap user3747 authenticates user and returns response with ok status3748 when invalid token3749 when resource is private3750 does not return response with ok status3751 behaves like authenticates sessionless user for the request spec3752 calendar ics3753 when the 'private_token' param is populated with the personal access token3754 when valid token3755 when resource is private3756 authenticates user and returns response with ok status3757 when user with expired password3758 does not return response with ok status3759 when password expiration is not applicable3760 when ldap user3761 authenticates user and returns response with ok status3762 when the personal access token has no api scope3763 when resource is private3764 does not return response with ok status3765 when invalid token3766 when resource is private3767 does not return response with ok status3768 when the 'PRIVATE-TOKEN' header is populated with the personal access token3769 when valid token3770 when resource is private3771 authenticates user and returns response with ok status3772 when user with expired password3773 does not return response with ok status3774 when password expiration is not applicable3775 when ldap user3776 authenticates user and returns response with ok status3777 when the personal access token has no api scope3778 when resource is private3779 does not return response with ok status3780 when invalid token3781 when resource is private3782 does not return response with ok status3783 when the 'feed_token' param is populated with the feed token3784 when valid token3785 when resource is private3786 authenticates user and returns response with ok status3787 when user with expired password3788 does not return response with ok status3789 when password expiration is not applicable3790 when ldap user3791 authenticates user and returns response with ok status3792 when invalid token3793 when resource is private3794 does not return response with ok status3795API::Ci::Runner3796 /api/v4/jobs3797 artifacts3798 POST /api/v4/jobs/:id/artifacts/authorize3799 reject requests that did not go through gitlab-workhorse3800 when using token as parameter3801 and the artifact is too large3802 behaves like rejecting artifacts that are too large3803 based on plan limit setting3804 behaves like failed request3805 responds with payload too large error3806 based on application setting3807 behaves like failed request3808 responds with payload too large error3809 based on root namespace setting3810 behaves like failed request3811 responds with payload too large error3812 based on child namespace setting3813 behaves like failed request3814 responds with payload too large error3815 based on project setting3816 behaves like failed request3817 responds with payload too large error3818 posting artifacts to running job3819 doesn't update runner info3820 behaves like API::CI::Runner application context metadata3821 contains correct context metadata3822 behaves like runner migrations backoff3823 when executing locking database migrations3824 returns 429 error3825 with runner_migrations_backoff disabled3826 does not return 4293827 when using local storage3828 behaves like authorizes local file3829 succeeds3830 when using remote storage3831 when direct upload is enabled3832 succeeds3833 when direct upload is disabled3834 behaves like authorizes local file3835 succeeds3836 when job does not exist anymore3837 returns 403 Forbidden3838 when using token as header3839 authorizes posting artifacts to running job3840 fails to post too large artifact3841 when using runners token3842 fails to authorize artifacts posting3843 authorization token is invalid3844 responds with forbidden3845 authorize uploading of an lsif artifact3846 adds ProcessLsif header3847 tracks code_intelligence usage ping3848 POST /api/v4/jobs/:id/artifacts3849 doesn't update runner info3850 behaves like API::CI::Runner application context metadata3851 contains correct context metadata3852 behaves like runner migrations backoff3853 when executing locking database migrations3854 returns 429 error3855 with runner_migrations_backoff disabled3856 does not return 4293857 when the artifact is too large3858 behaves like rejecting artifacts that are too large3859 based on plan limit setting3860 behaves like failed request3861 responds with payload too large error3862 based on application setting3863 behaves like failed request3864 responds with payload too large error3865 based on root namespace setting3866 behaves like failed request3867 responds with payload too large error3868 based on child namespace setting3869 behaves like failed request3870 responds with payload too large error3871 based on project setting3872 behaves like failed request3873 responds with payload too large error3874 when artifacts are being stored inside of tmp path3875 when job has been erased3876 responds with forbidden3877 when job does not exist anymore3878 returns 403 Forbidden3879 when job is running3880 when uses accelerated file post3881 for file stored locally3882 behaves like successful artifacts upload3883 updates successfully3884 for file stored remotely3885 when uploaded file has matching pending remote upload to its final location3886 behaves like successful artifacts upload3887 updates successfully3888 when uploaded file is uploaded to temporary location3889 and matching temporary remote_id is used3890 behaves like successful artifacts upload3891 updates successfully3892 and invalid remote_id is used3893 responds with internal server error3894 when using runners token3895 responds with forbidden3896 when artifacts post request does not contain file3897 fails to post artifacts without file3898 GitLab Workhorse is not configured3899 fails to post artifacts without GitLab-Workhorse3900 Is missing GitLab Workhorse token headers3901 fails to post artifacts without GitLab-Workhorse3902 when setting an expire date3903 when an expire_in is given3904 updates when specified3905 when no expire_in is given3906 ignores if not specified3907 with application default3908 when default is 5 days3909 sets to application default3910 when default is 03911 does not set expire_in3912 when value is never3913 does not set expire_in3914 posts artifacts file and metadata file3915 when posts data accelerated by workhorse is correct3916 stores artifacts and artifacts metadata3917 with a malicious file.path param3918 rejects the request3919 when workhorse header is missing3920 rejects the request3921 when there is no artifacts file in post data3922 is expected to respond with bad request3923 does not store metadata3924 when access level is private3925 sets job artifact access level to private3926 when access level is public3927 sets job artifact access level to public3928 when access level is unknown3929 sets job artifact access level to public3930 when artifact_type is archive3931 when artifact_format is zip3932 stores junit test report3933 behaves like storing arguments in the application context3934 places the expected params in the application context3935 behaves like not executing any extra queries for the application context3936 does not execute more queries than without adding anything to the application context3937 when artifact_format is gzip3938 returns an error3939 when artifact_type is junit3940 when artifact_format is gzip3941 stores junit test report3942 when artifact_format is raw3943 returns an error3944 when artifact_type is metrics_referee3945 when artifact_format is gzip3946 stores metrics_referee data3947 when artifact_format is raw3948 returns an error3949 when artifact_type is network_referee3950 when artifact_format is gzip3951 stores network_referee data3952 when artifact_format is raw3953 returns an error3954 when artifact_type is dotenv3955 when artifact_format is gzip3956 stores dotenv file3957 parses dotenv file3958 when parse error happens3959 returns an error3960 when artifact_format is raw3961 returns an error3962 when artifacts already exist for the job3963 when sha256 is the same of the existing artifact3964 ignores the new artifact3965 when sha256 is different than the existing artifact3966 logs and returns an error3967 when object storage throws errors3968 does not store artifacts3969 when artifacts are being stored outside of tmp path3970 fails to post artifacts for outside of tmp path3971 GET /api/v4/jobs/:id/artifacts3972 doesn't update runner info3973 behaves like API::CI::Runner application context metadata3974 contains correct context metadata3975 behaves like runner migrations backoff3976 when executing locking database migrations3977 returns 429 error3978 with runner_migrations_backoff disabled3979 does not return 4293980 when job has artifacts3981 when using job token3982 behaves like successful artifact download3983 when artifacts are stored locally3984 downloads artifacts3985 when artifacts are stored remotely3986 when proxy download is being used3987 uses workhorse send-url3988 when direct download is being used3989 receives redirect for downloading artifacts3990 when the job is no longer running3991 behaves like unauthorized request3992 responds with unauthorized3993 when using token belonging to the dependent job3994 behaves like successful artifact download3995 when artifacts are stored locally3996 downloads artifacts3997 when artifacts are stored remotely3998 when proxy download is being used3999 uses workhorse send-url4000 when direct download is being used4001 receives redirect for downloading artifacts4002 when the dependent job is no longer running4003 behaves like unauthorized request4004 responds with unauthorized4005 when using token belonging to another job created by another project member4006 behaves like successful artifact download4007 when artifacts are stored locally4008 downloads artifacts4009 when artifacts are stored remotely4010 when proxy download is being used4011 uses workhorse send-url4012 when direct download is being used4013 receives redirect for downloading artifacts4014 when using token belonging to a pending dependent job4015 behaves like unauthorized request4016 responds with unauthorized4017 when using a token from a cross pipeline build4018 behaves like successful artifact download4019 when artifacts are stored locally4020 downloads artifacts4021 when artifacts are stored remotely4022 when proxy download is being used4023 uses workhorse send-url4024 when direct download is being used4025 receives redirect for downloading artifacts4026 when using a token from an unrelated project4027 responds with forbidden4028 when using runnners token4029 behaves like unauthorized request4030 responds with unauthorized4031 when using an invalid token4032 behaves like unauthorized request4033 responds with unauthorized4034 when job does not have artifacts4035 responds with not found4036 when job does not exist anymore4037 responds with 403 Forbidden4038Admin::ClustersController4039 GET #index4040 functionality4041 when instance has one or more clusters4042 lists available clusters and displays html4043 lists available clusters and renders json serializer4044 sets the polling interval header for json requests4045 feature flag is disabled4046 responds with :not_found4047 when page is specified4048 redirects to the page4049 displays cluster list for associated page4050 when instance does not have a cluster4051 returns an empty state page4052 security4053 is expected to be allowed for admin. Expected: 200,201,204,302 Got: 2004054 is expected to be denied for user. Expected: 401,404 Got: 4044055 is expected to be denied for external. Expected: 401,404 Got: 4044056 POST #create_user4057 feature flag is disabled4058 responds with :not_found4059 functionality4060 when creates a cluster4061 creates a new cluster4062 when creates a RBAC-enabled cluster4063 creates a new cluster4064 security4065 is expected to be allowed for admin. Expected: 200,201,204,302 Got: 3024066 is expected to be denied for user. Expected: 401,404 Got: 4044067 is expected to be denied for external. Expected: 401,404 Got: 4044068 DELETE clear cluster cache4069 deletes the namespaces associated with the cluster4070 feature flag is disabled4071 responds with :not_found4072 security4073 is expected to be allowed for admin. Expected: 200,201,204,302 Got: 3024074 is expected to be denied for user. Expected: 401,404 Got: 4044075 is expected to be denied for external. Expected: 401,404 Got: 4044076 GET #cluster_status4077 feature flag is disabled4078 responds with :not_found4079 functionality4080 responds with matching schema4081 security4082 is expected to be allowed for admin. Expected: 200,201,204,302 Got: 2004083 is expected to be denied for user. Expected: 401,404 Got: 4044084 is expected to be denied for external. Expected: 401,404 Got: 4044085 GET #show4086 feature flag is disabled4087 responds with :not_found4088 security4089 is expected to be allowed for admin. Expected: 200,201,204,302 Got: 2004090 is expected to be denied for user. Expected: 401,404 Got: 4044091 is expected to be denied for external. Expected: 401,404 Got: 4044092 PUT #update4093 updates and redirects back to show page4094 feature flag is disabled4095 responds with :not_found4096 when domain is invalid4097 does not update cluster attributes4098 when format is json4099 when changing parameters4100 when valid parameters are used4101 updates and redirects back to show page4102 when invalid parameters are used4103 rejects changes4104 security4105 is expected to be allowed for admin. Expected: 200,201,204,302 Got: 3024106 is expected to be denied for user. Expected: 401,404 Got: 4044107 is expected to be denied for external. Expected: 401,404 Got: 4044108 DELETE #destroy4109 feature flag is disabled4110 responds with :not_found4111 functionality4112 when cluster is provided by GCP4113 when cluster is created4114 destroys and redirects back to clusters list4115 when cluster is being created4116 destroys and redirects back to clusters list4117 when cluster is provided by user4118 destroys and redirects back to clusters list4119 security4120 is expected to be allowed for admin. Expected: 200,201,204,302 Got: 3024121 is expected to be denied for user. Expected: 401,404 Got: 4044122 is expected to be denied for external. Expected: 401,404 Got: 4044123Mailer previews4124 # order random4125 preview: NotifyPreview, email: "member_invite_declined_email"4126 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4127 preview: NotifyPreview, email: "new_epic_email"4128 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4129 preview: DeviseMailerPreview, email: "user_admin_approval"4130 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4131 preview: NotifyPreview, email: "import_work_items_csv_email"4132 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4133 preview: NotifyPreview, email: "service_desk_custom_email_verification_email"4134 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4135 preview: NotifyPreview, email: "note_merge_request_email_for_discussion"4136 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4137 preview: NotifyPreview, email: "remote_mirror_update_failed_email"4138 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4139 preview: NotifyPreview, email: "github_gists_import_errors_email"4140 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4141 preview: NotifyPreview, email: "user_associated_with_enterprise_group_email"4142 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4143 preview: NotifyPreview, email: "service_desk_verification_result_email_for_invalid_credentials_error"4144 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4145 preview: Emails::NamespaceStorageUsageMailerPreview, email: "limit_warning"4146 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4147 preview: NotifyPreview, email: "service_desk_verification_result_email_for_verified_state"4148 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4149 preview: NotifyPreview, email: "mirror_was_hard_failed_email"4150 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4151 preview: NotifyPreview, email: "service_desk_verification_result_email_for_mail_not_received_within_timeframe_error"4152 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4153 preview: NotifyPreview, email: "mirror_was_disabled_email"4154 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4155 preview: DeviseMailerPreview, email: "confirmation_instructions_for_signup"4156 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4157 preview: NotifyPreview, email: "member_access_granted_email"4158 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4159 preview: NotifyPreview, email: "new_mention_in_merge_request_email"4160 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4161 preview: CiMinutesUsageMailerPreview, email: "out_of_minutes"4162 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4163 preview: NotifyPreview, email: "unknown_sign_in_email"4164 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4165 preview: LicenseMailerPreview, email: "approaching_active_user_count_limit"4166 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4167 preview: NotifyPreview, email: "merged_merge_request_email"4168 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4169 preview: NotifyPreview, email: "pipeline_failed_email"4170 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4171 preview: NotifyPreview, email: "ssh_key_expired_email"4172 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4173 preview: NotifyPreview, email: "access_token_expired_email"4174 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4175 preview: Emails::NamespaceStorageUsageMailerPreview, email: "out_of_storage"4176 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4177 preview: NotifyPreview, email: "autodevops_disabled_email"4178 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4179 preview: NotifyPreview, email: "member_invited_email"4180 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4181 preview: NotifyPreview, email: "service_desk_verification_result_email_for_incorrect_token_error"4182 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4183 preview: NotifyPreview, email: "removed_milestone_merge_request_email"4184 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4185 preview: NotifyPreview, email: "project_was_exported_email"4186 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4187 preview: NotifyPreview, email: "merge_when_pipeline_succeeds_email"4188 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4189 preview: NotifyPreview, email: "user_auto_banned_namespace_email"4190 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4191 preview: NotifyPreview, email: "import_requirements_csv_email"4192 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4193 preview: NotifyPreview, email: "member_access_requested_email"4194 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4195 preview: NotifyPreview, email: "service_desk_new_note_email"4196 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4197 preview: NotifyPreview, email: "inactive_project_deletion_warning"4198 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4199 preview: NotifyPreview, email: "access_token_revoked_email"4200 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4201 preview: NotifyPreview, email: "merge_request_unmergeable_email"4202 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4203 preview: NotifyPreview, email: "request_review_merge_request_email"4204 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4205 preview: NotifyPreview, email: "pipeline_success_email"4206 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4207 preview: NotifyPreview, email: "user_cap_reached"4208 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4209 preview: NotifyPreview, email: "closed_issue_email"4210 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4211 preview: DeviseMailerPreview, email: "confirmation_instructions_for_new_email"4212 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4213 preview: NotifyPreview, email: "new_group_member_with_confirmation_email"4214 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4215 preview: NotifyPreview, email: "new_issue_email"4216 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4217 preview: NotifyPreview, email: "service_desk_verification_result_email_for_incorrect_from_error"4218 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4219 preview: NotifyPreview, email: "new_email_address_added_email"4220 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4221 preview: NotifyPreview, email: "changed_milestone_issue_email"4222 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4223 preview: NotifyPreview, email: "user_auto_banned_instance_email"4224 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4225 preview: NotifyPreview, email: "new_review_email"4226 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4227 preview: NotifyPreview, email: "service_desk_verification_result_email_for_smtp_host_issue_error"4228 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4229 preview: EmailRejectionMailerPreview, email: "rejection"4230 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4231 preview: NotifyPreview, email: "closed_merge_request_email"4232 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4233 preview: NotifyPreview, email: "send_admin_notification"4234 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4235 preview: NotifyPreview, email: "service_desk_verification_triggered_email"4236 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4237 preview: NotifyPreview, email: "unapproved_merge_request_email"4238 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4239 preview: NotifyPreview, email: "merge_commits_csv_email"4240 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4241 preview: NotifyPreview, email: "project_was_moved_email"4242 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4243 preview: NotifyPreview, email: "removed_milestone_issue_email"4244 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4245 preview: DeviseMailerPreview, email: "reset_password_instructions"4246 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4247 preview: NotifyPreview, email: "approved_merge_request_email"4248 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4249 preview: CiMinutesUsageMailerPreview, email: "limit_warning"4250 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4251 preview: NotifyPreview, email: "abandoned_trial_notification"4252 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4253 preview: NotifyPreview, email: "requirements_csv_email"4254 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4255 preview: NotifyPreview, email: "note_merge_request_email_for_individual_note"4256 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4257 preview: DeviseMailerPreview, email: "password_change"4258 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4259 preview: NotifyPreview, email: "member_invite_accepted_email"4260 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4261 preview: NotifyPreview, email: "import_issues_csv_email"4262 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4263 preview: NotifyPreview, email: "note_merge_request_email_for_diff_discussion"4264 example at ./spec/mailers/previews_spec.rb:38 (PENDING: See https://gitlab.com/gitlab-org/gitlab/-/issues/372885)4265 preview: NotifyPreview, email: "new_merge_request_email"4266 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4267 preview: NotifyPreview, email: "issue_status_changed_email"4268 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4269 preview: RepositoryCheckMailerPreview, email: "notify"4270 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4271 preview: NotifyPreview, email: "merge_request_status_email"4272 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4273 preview: NotifyPreview, email: "confirmation_instructions_email"4274 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4275 preview: NotifyPreview, email: "pages_domain_enabled_email"4276 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4277 preview: NotifyPreview, email: "project_mirror_user_changed_email"4278 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4279 preview: NotifyPreview, email: "access_token_created_email"4280 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4281 preview: NotifyPreview, email: "member_access_denied_email"4282 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4283 preview: NotifyPreview, email: "member_about_to_expire_email"4284 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4285 preview: NotifyPreview, email: "verification_instructions_email"4286 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4287 preview: NotifyPreview, email: "service_desk_thank_you_email"4288 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4289 preview: NotifyPreview, email: "send_unsubscribed_notification"4290 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4291 preview: DeviseMailerPreview, email: "unlock_instructions"4292 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4293 preview: NotifyPreview, email: "issues_csv_email"4294 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4295 preview: NotifyPreview, email: "pipeline_fixed_email"4296 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4297 preview: NotifyPreview, email: "two_factor_otp_attempt_failed_email"4298 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4299 preview: DeviseMailerPreview, email: "email_changed"4300 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4301 preview: NotifyPreview, email: "changed_milestone_merge_request_email"4302 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4303 preview: NotifyPreview, email: "new_user_email"4304 is expected to be a kind of Mail::Message or be a kind of ActionMailer::MessageDelivery4305Updating the package settings4306 post graphql mutation4307 with existing package settings4308 user_role: :owner, shared_examples_name: "accepting the mutation request updating the package settings"4309 behaves like accepting the mutation request updating the package settings4310 behaves like updating the namespace package setting attributes4311 updates the namespace package setting4312 behaves like not creating the namespace package setting4313 doesn't create the namespace package setting4314 behaves like returning a success4315 returns the updated package settings4316 behaves like returning response status4317 returns success4318 behaves like rejecting invalid regex4319 for field mavenDuplicateExceptionRegex4320 returns an error4321 behaves like returning response status4322 returns success4323 behaves like not creating the namespace package setting4324 doesn't create the namespace package setting4325 when nuget_duplicates_option FF is disabled4326 raises an error4327 user_role: :maintainer, shared_examples_name: "denying the mutation request"4328 behaves like denying the mutation request4329 returns no response4330 behaves like not creating the namespace package setting4331 doesn't create the namespace package setting4332 behaves like returning response status4333 returns success4334 behaves like disabling admin_package feature flag4335 behaves like accepting the mutation request updating the package settings4336 behaves like updating the namespace package setting attributes4337 updates the namespace package setting4338 behaves like not creating the namespace package setting4339 doesn't create the namespace package setting4340 behaves like returning a success4341 returns the updated package settings4342 behaves like returning response status4343 returns success4344 behaves like rejecting invalid regex4345 for field mavenDuplicateExceptionRegex4346 returns an error4347 behaves like returning response status4348 returns success4349 behaves like not creating the namespace package setting4350 doesn't create the namespace package setting4351 when nuget_duplicates_option FF is disabled4352 raises an error4353 user_role: :developer, shared_examples_name: "denying the mutation request"4354 behaves like denying the mutation request4355 returns no response4356 behaves like not creating the namespace package setting4357 doesn't create the namespace package setting4358 behaves like returning response status4359 returns success4360 user_role: :reporter, shared_examples_name: "denying the mutation request"4361 behaves like denying the mutation request4362 returns no response4363 behaves like not creating the namespace package setting4364 doesn't create the namespace package setting4365 behaves like returning response status4366 returns success4367 user_role: :guest, shared_examples_name: "denying the mutation request"4368 behaves like denying the mutation request4369 returns no response4370 behaves like not creating the namespace package setting4371 doesn't create the namespace package setting4372 behaves like returning response status4373 returns success4374 user_role: :anonymous, shared_examples_name: "denying the mutation request"4375 behaves like denying the mutation request4376 returns no response4377 behaves like not creating the namespace package setting4378 doesn't create the namespace package setting4379 behaves like returning response status4380 returns success4381 without existing package settings4382 user_role: :owner, shared_examples_name: "accepting the mutation request creating the package settings"4383 behaves like accepting the mutation request creating the package settings4384 behaves like creating the namespace package setting4385 creates a new package setting4386 saves the settings4387 behaves like returning a success4388 returns the updated package settings4389 behaves like returning response status4390 returns success4391 behaves like returning a success4392 returns the updated package settings4393 behaves like returning response status4394 returns success4395 behaves like rejecting invalid regex4396 for field mavenDuplicateExceptionRegex4397 returns an error4398 behaves like returning response status4399 returns success4400 behaves like not creating the namespace package setting4401 doesn't create the namespace package setting4402 user_role: :maintainer, shared_examples_name: "denying the mutation request"4403 behaves like denying the mutation request4404 returns no response4405 behaves like not creating the namespace package setting4406 doesn't create the namespace package setting4407 behaves like returning response status4408 returns success4409 behaves like disabling admin_package feature flag4410 behaves like accepting the mutation request creating the package settings4411 behaves like creating the namespace package setting4412 creates a new package setting4413 saves the settings4414 behaves like returning a success4415 returns the updated package settings4416 behaves like returning response status4417 returns success4418 behaves like returning a success4419 returns the updated package settings4420 behaves like returning response status4421 returns success4422 behaves like rejecting invalid regex4423 for field mavenDuplicateExceptionRegex4424 returns an error4425 behaves like returning response status4426 returns success4427 behaves like not creating the namespace package setting4428 doesn't create the namespace package setting4429 user_role: :developer, shared_examples_name: "denying the mutation request"4430 behaves like denying the mutation request4431 returns no response4432 behaves like not creating the namespace package setting4433 doesn't create the namespace package setting4434 behaves like returning response status4435 returns success4436 user_role: :reporter, shared_examples_name: "denying the mutation request"4437 behaves like denying the mutation request4438 returns no response4439 behaves like not creating the namespace package setting4440 doesn't create the namespace package setting4441 behaves like returning response status4442 returns success4443 user_role: :guest, shared_examples_name: "denying the mutation request"4444 behaves like denying the mutation request4445 returns no response4446 behaves like not creating the namespace package setting4447 doesn't create the namespace package setting4448 behaves like returning response status4449 returns success4450 user_role: :anonymous, shared_examples_name: "denying the mutation request"4451 behaves like denying the mutation request4452 returns no response4453 behaves like not creating the namespace package setting4454 doesn't create the namespace package setting4455 behaves like returning response status4456 returns success4457getting a package list for a group4458 behaves like group and project packages query4459 when user has access to the resource4460 returns packages successfully4461 deals with metadata4462 returns the count of the packages4463 behaves like a working graphql query that returns data4464 contains data4465 behaves like a working graphql query4466 returns a successful response4467 _links4468 does not contain the web path of errored package4469 when the user does not have access to the resource4470 behaves like a working graphql query that returns no data4471 contains no data4472 behaves like a working graphql query4473 returns a successful response4474 when the user is not authenticated4475 behaves like a working graphql query that returns no data4476 contains no data4477 behaves like a working graphql query4478 returns a successful response4479 sorting and pagination4480 CREATED_ASC4481 behaves like sorted paginated query4482 behaves like requires variables4483 shared example requires variables to be set4485 when sorting4486 sorts correctly4487 when paginating4488 paginates correctly4489 NAME_ASC4490 behaves like sorted paginated query4491 behaves like requires variables4492 shared example requires variables to be set4494 when sorting4495 sorts correctly4496 when paginating4497 paginates correctly4498 VERSION_ASC4499 behaves like sorted paginated query4500 behaves like requires variables4501 shared example requires variables to be set4503 when sorting4504 sorts correctly4505 when paginating4506 paginates correctly4507 TYPE_ASC4508 behaves like sorted paginated query4509 behaves like requires variables4510 shared example requires variables to be set4512 when sorting4513 sorts correctly4514 when paginating4515 paginates correctly4516 CREATED_DESC4517 behaves like sorted paginated query4518 behaves like requires variables4519 shared example requires variables to be set4521 when sorting4522 sorts correctly4523 when paginating4524 paginates correctly4525 NAME_DESC4526 behaves like sorted paginated query4527 behaves like requires variables4528 shared example requires variables to be set4530 when sorting4531 sorts correctly4532 when paginating4533 paginates correctly4534 VERSION_DESC4535 behaves like sorted paginated query4536 behaves like requires variables4537 shared example requires variables to be set4539 when sorting4540 sorts correctly4541 when paginating4542 paginates correctly4543 TYPE_DESC4544 behaves like sorted paginated query4545 behaves like requires variables4546 shared example requires variables to be set4548 when sorting4549 sorts correctly4550 when paginating4551 paginates correctly4552 with an invalid sort4553 throws an error4554 filtering4555 package_name4556 is expected to contain exactly {"name"=>"bab"}4557 package_type4558 is expected to contain exactly {"name"=>"dab"}4559 status4560 is expected to contain exactly {"name"=>"my/company/app/my-app"}4561 include_versionless4562 is expected to include {"name" => "my/company/app/my-app"}4563 when reading pipelines4564 loads the second page with pagination first correctly4565 loads the second page with pagination last correctly4566 with a batched query4567 returns an error for the second group and data for the first4568Query.work_item(id)4569 when the user can read the work item4570 returns all fields4571 behaves like a working graphql query4572 returns a successful response4573 when querying widgets4574 description widget4575 returns widget information4576 hierarchy widget4577 returns widget information4578 avoids N+1 queries4579 when user is guest4580 filters out not accessible children or parent4581 when requesting child item4582 returns parent information4583 when ordered by default by created_at4584 places the oldest child item to the beginning of the children list4585 places the newest child item to the end of the children list4586 when relative position is set4587 places children according to relative_position at the beginning of the children list4588 assignees widget4589 returns widget information4590 labels widget4591 returns widget information4592 start and due date widget4593 returns widget information4594 milestone widget4595 returns widget information4596 notifications widget4597 returns widget information4598 currentUserTodos widget4599 with access4600 returns widget information4601 with filter4602 returns widget information4603 award emoji widget4604 returns widget information4605 linked items widget4606 returns widget information4607 when `linked_work_items` feature flag is disabled4608 returns empty result4609 notes widget4610 when fetching award emoji from notes4611 returns award emoji data4612 returns author contributor status and max access level4613 avoids N+1 queries4614 when an Issue Global ID is provided4615 allows an Issue GID as input4616 when the user can not read the work item4617 returns an access error4618 when the user cannot set work item metadata4619 returns correct user permission4620Projects::MergeRequests::ConflictsController4621 GET show4622 when the request is html4623 does tracks the resolve call4624 when the conflicts cannot be resolved in the UI4625 returns a 200 status code4626 returns JSON with a message4627 does not track the resolve call4628 with valid conflicts4629 matches the schema4630 includes meta info about the MR4631 includes each file that has conflicts4632 splits files into sections with lines4633 has unique section IDs across files4634 GET conflict_for_path4635 when the conflicts cannot be resolved in the UI4636 returns a 404 status code4637 when the file does not exist cannot be resolved in the UI4638 returns a 404 status code4639 with an existing file4640 returns a 200 and the file in JSON format4641 POST resolve_conflicts4642 with valid params4643 handles the success case4644 when sections are missing4645 handles the error case4646 when files are missing4647 handles the error case4648 when a file has identical content to the conflict4649 handles the error case4650Snippets::NotesController4651 GET index4652 when a snippet is public4653 returns status 2004654 returns not empty array of notes4655 when a snippet is internal4656 when user not logged in4657 returns status 4044658 when user logged in4659 returns status 2004660 when a snippet is private4661 when user not logged in4662 returns status 4044663 when user other than author logged in4664 returns status 4044665 when author logged in4666 returns status 2004667 returns 1 note4668 dont show non visible notes4669 does not return any note4670 POST create4671 when a snippet is public4672 returns status 3024673 creates the note4674 behaves like create notes request exceeding rate limit4675 allows user in allow-list to create notes, even if the case is different4676 when rate limiter enabled4677 logs request and declines it when endpoint called more than the threshold4678 when rate limiter is disabled4679 does not log request and does not block the request4680 when a snippet is internal4681 returns status 3024682 creates the note4683 behaves like create notes request exceeding rate limit4684 allows user in allow-list to create notes, even if the case is different4685 when rate limiter enabled4686 logs request and declines it when endpoint called more than the threshold4687 when rate limiter is disabled4688 does not log request and does not block the request4689 when a snippet is private4690 when user is not the author4691 returns status 4044692 does not create the note4693 when user sends a snippet_id for a public snippet4694 returns status 3024695 creates the note on the public snippet4696 when user is the author4697 returns status 3024698 creates the note4699 behaves like create notes request exceeding rate limit4700 allows user in allow-list to create notes, even if the case is different4701 when rate limiter enabled4702 logs request and declines it when endpoint called more than the threshold4703 when rate limiter is disabled4704 does not log request and does not block the request4705 PUT update4706 when the note is valid4707 updates the note4708 returns status 2004709 when there are ActiveRecord validation errors4710 does not update the note4711 returns status 4224712 DELETE destroy4713 when user is the author of a note4714 returns status 2004715 deletes the note4716 system note4717 does not delete the note4718 when user is not the author of a note4719 returns status 4044720 does not update the note4721 POST toggle_award_emoji4722 toggles the award emoji4723 removes the already awarded emoji when it exists4724Groups::Settings::AccessTokensController4725 GET /:namespace/-/settings/access_tokens4726 behaves like feature unavailable4727 user is not a owner4728 is expected to respond with numeric status code not_found4729 behaves like GET resource access tokens available4730 retrieves active access tokens4731 lists all available scopes4732 returns for json response4733 behaves like GET access tokens are paginated and ordered4734 when multiple access tokens are returned4735 returns paginated response4736 when access_token_pagination feature flag is disabled4737 returns all tokens in system4738 when tokens returned are ordered4739 orders token list ascending on expires_at4740 orders tokens on id in case token has same expires_at4741 POST /:namespace/-/settings/access_tokens4742 behaves like feature unavailable4743 user is not a owner4744 is expected to respond with numeric status code not_found4745 behaves like POST resource access tokens available4746 renders JSON with a token4747 creates resource access token4748 creates project bot user4749 is expected to change `User.count` by 14750 is expected to change `PersonalAccessToken.count` by 14751 when unsuccessful4752 does not create the token4753 does not add the project bot as a member4754 does not create the project bot user4755 renders JSON with an error4756 when group access token creation is disabled4757 is expected to respond with numeric status code not_found4758 does not create the token4759 does not add the project bot as a member4760 does not create the project bot user4761 with custom access level4762 behaves like POST resource access tokens available4763 renders JSON with a token4764 creates resource access token4765 creates project bot user4766 is expected to change `User.count` by 14767 is expected to change `PersonalAccessToken.count` by 14768 when unsuccessful4769 does not create the token4770 does not add the project bot as a member4771 does not create the project bot user4772 renders JSON with an error4773 PUT /:namespace/-/settings/access_tokens/:id4774 behaves like feature unavailable4775 user is not a owner4776 is expected to respond with numeric status code not_found4777 behaves like PUT resource access tokens available4778 calls delete user worker4779 removes membership of bot user4780 creates GhostUserMigration records to handle migration in a worker4781 when unsuccessful4782 shows a failure alert4783 #index4784 includes details of the active group access tokens4785IdeController4786 # order random4787 #index4788 with /-/ide4789 returns 4044790 with /-/ide/project4791 returns 4044792 with /-/ide/project/:project4793 instantiates project instance var and returns 2004794 behaves like user access rights check4795 when user can read project4796 increases the views counter4797 when user can read project but cannot push code4798 when user does not have fork4799 instantiates fork_info instance var with fork_path and returns 2004800 has nil fork_info if user cannot fork4801 when user has fork4802 instantiates fork_info instance var with ide_path and returns 2004803 when user cannot read project4804 returns 4044805 with /-/ide/project/:project/edit4806 instantiates project instance var and returns 2004807 behaves like user access rights check4808 when user can read project4809 increases the views counter4810 when user can read project but cannot push code4811 when user does not have fork4812 instantiates fork_info instance var with fork_path and returns 2004813 has nil fork_info if user cannot fork4814 when user has fork4815 instantiates fork_info instance var with ide_path and returns 2004816 when user cannot read project4817 returns 4044818 with /-/ide/project/:project/blob4819 instantiates project instance var and returns 2004820 behaves like user access rights check4821 when user can read project4822 increases the views counter4823 when user can read project but cannot push code4824 when user does not have fork4825 instantiates fork_info instance var with fork_path and returns 2004826 has nil fork_info if user cannot fork4827 when user has fork4828 instantiates fork_info instance var with ide_path and returns 2004829 when user cannot read project4830 returns 4044831 with /-/ide/project/:project/tree4832 instantiates project instance var and returns 2004833 behaves like user access rights check4834 when user can read project4835 increases the views counter4836 when user can read project but cannot push code4837 when user does not have fork4838 instantiates fork_info instance var with fork_path and returns 2004839 has nil fork_info if user cannot fork4840 when user has fork4841 instantiates fork_info instance var with ide_path and returns 2004842 when user cannot read project4843 returns 4044844 Snowplow view event4845 is tracked4846 layout4847 ff_state: false, expect_top_nav: true4848 handles rendering top nav4849 ff_state: true, expect_top_nav: false4850 handles rendering top nav4851 content security policy4852 updates the content security policy with the correct frame sources4853 with relative_url_root, updates the content security policy with the correct frame sources4854getting group information4855 Query group(fullPath)4856 behaves like a working graphql query4857 returns a successful response4858 when unauthenticated4859 returns nil for a private group4860 returns a public group4861 when authenticated as user4862 returns one of user1's groups4863 does not return a non existing group4864 does not return a group not attached to user14865 avoids N+1 queries (PENDING: See: https://gitlab.com/gitlab-org/gitlab/-/issues/245272)4866 when querying group's descendant groups4867 returns all descendant groups user has access to4868 with timelog categories4869 when user is guest4870 includes empty timelog categories array4871 when user has reporter role4872 returns the timelog category with all its fields4873 when timelog_categories flag is disabled4874 returns no timelog categories4875 for N+1 queries4876 avoids N+1 database queries (PENDING: See: https://gitlab.com/gitlab-org/gitlab/-/issues/369396)4877 when authenticated as admin4878 returns any existing group4879 does not return a non existing group4880API::AccessRequests4881 behaves like GET /:sources/:id/access_requests4882 with :sources == projects4883 behaves like a 404 response when source is private4884 returns 4044885 when authenticated as a non-maintainer/owner4886 as a developer4887 returns 4034888 as a access_requester4889 returns 4034890 as a stranger4891 returns 4034892 when authenticated as a maintainer/owner4893 returns access requesters4894 behaves like GET /:sources/:id/access_requests4895 with :sources == groups4896 behaves like a 404 response when source is private4897 returns 4044898 when authenticated as a non-maintainer/owner4899 as a developer4900 returns 4034901 as a access_requester4902 returns 4034903 as a stranger4904 returns 4034905 when authenticated as a maintainer/owner4906 returns access requesters4907 behaves like POST /:sources/:id/access_requests4908 with :sources == projects4909 behaves like a 404 response when source is private4910 returns 4044911 when authenticated as a member4912 as a developer4913 returns 4034914 as a maintainer4915 returns 4034916 when authenticated as an access requester4917 returns 4004918 when authenticated as a stranger4919 returns 2014920 when access request is disabled for the project4921 returns 4034922 behaves like POST /:sources/:id/access_requests4923 with :sources == groups4924 behaves like a 404 response when source is private4925 returns 4044926 when authenticated as a member4927 as a developer4928 returns 4034929 as a maintainer4930 returns 4034931 when authenticated as an access requester4932 returns 4004933 when authenticated as a stranger4934 returns 2014935 when access request is disabled for the group4936 returns 4034937 behaves like PUT /:sources/:id/access_requests/:user_id/approve4938 with :sources == projects4939 behaves like a 404 response when source is private4940 returns 4044941 when authenticated as a non-maintainer/owner4942 as a developer4943 returns 4034944 as a access_requester4945 returns 4034946 as a stranger4947 returns 4034948 when authenticated as a maintainer/owner4949 returns 2014950 user_id does not match an existing access requester4951 returns 4044952 behaves like PUT /:sources/:id/access_requests/:user_id/approve4953 with :sources == groups4954 behaves like a 404 response when source is private4955 returns 4044956 when authenticated as a non-maintainer/owner4957 as a developer4958 returns 4034959 as a access_requester4960 returns 4034961 as a stranger4962 returns 4034963 when authenticated as a maintainer/owner4964 returns 2014965 user_id does not match an existing access requester4966 returns 4044967 behaves like DELETE /:sources/:id/access_requests/:user_id4968 with :sources == projects4969 behaves like a 404 response when source is private4970 returns 4044971 when authenticated as a non-maintainer/owner4972 as a developer4973 returns 4034974 as a stranger4975 returns 4034976 when authenticated as the access requester4977 deletes the access requester4978 when authenticated as a maintainer/owner4979 deletes the access requester4980 user_id matches a member, not an access requester4981 returns 4044982 user_id does not match an existing access requester4983 returns 4044984 behaves like DELETE /:sources/:id/access_requests/:user_id4985 with :sources == groups4986 behaves like a 404 response when source is private4987 returns 4044988 when authenticated as a non-maintainer/owner4989 as a developer4990 returns 4034991 as a stranger4992 returns 4034993 when authenticated as the access requester4994 deletes the access requester4995 when authenticated as a maintainer/owner4996 deletes the access requester4997 user_id matches a member, not an access requester4998 returns 4044999 user_id does not match an existing access requester5000 returns 4045001Toggling an AwardEmoji5002 when the user has permission5003 when the given awardable is not an Awardable5004 behaves like a mutation that does not create or destroy an AwardEmoji5005 is expected not to change `AwardEmoji.count`5006 behaves like a mutation that returns top-level errors5007 is expected to include /was provided invalid value for awardableId/5008 when the given awardable is an Awardable but still cannot be awarded an emoji5009 behaves like a mutation that does not create or destroy an AwardEmoji5010 is expected not to change `AwardEmoji.count`5011 behaves like a mutation that returns top-level errors5012 is expected to contain exactly "You cannot add emoji reactions to this resource."5013 when the given awardable is an Awardable5014 when no emoji has been awarded by the current_user yet5015 creates an emoji5016 returns the emoji5017 returns toggledOn as true5018 marking Todos as done5019 type: :issue, expectation: true5020 is expected to eq true5021 type: :merge_request, expectation: true5022 is expected to eq true5023 type: :project_snippet, expectation: false5024 is expected to eq false5025 for notes5026 regular Notes5027 marks the Todo as done5028 PersonalSnippet Notes5029 does not mark the Todo as done5030 when there were active record validation errors5031 returns an empty awardEmoji5032 behaves like a mutation that does not create or destroy an AwardEmoji5033 is expected not to change `AwardEmoji.count`5034 behaves like a mutation that returns errors in the response5035 is expected to contain exactly "Error 1" and "Error 2"5036 when an emoji has been awarded by the current_user5037 removes the emoji5038 returns no errors5039 returns an empty awardEmoji5040 returns toggledOn as false5041 when the user does not have permission5042 behaves like a mutation that does not create or destroy an AwardEmoji5043 is expected not to change `AwardEmoji.count`5044 behaves like a mutation that returns a top-level access error5045 is expected to contain exactly "The resource that you are attempting to access does not exist or you don't have permission to perform this action"5046Oauth::ApplicationsController5047 project members5048 GET #new5049 is expected to respond with numeric status code ok5050 behaves like redirects to login page when the user is not signed in5051 is expected to redirect to "/users/sign_in"5052 behaves like redirects to 2fa setup page when the user requires it5053 when 2fa is set up on application level5054 is expected to redirect to "/-/profile/two_factor_auth"5055 when 2fa is set up on group level5056 is expected to redirect to "/-/profile/two_factor_auth"5057 DELETE #destroy5058 is expected to redirect to "http://test.host/oauth/applications"5059 behaves like redirects to login page when the user is not signed in5060 is expected to redirect to "/users/sign_in"5061 behaves like redirects to 2fa setup page when the user requires it5062 when 2fa is set up on application level5063 is expected to redirect to "/-/profile/two_factor_auth"5064 when 2fa is set up on group level5065 is expected to redirect to "/-/profile/two_factor_auth"5066 GET #edit5067 is expected to respond with numeric status code ok5068 behaves like redirects to login page when the user is not signed in5069 is expected to redirect to "/users/sign_in"5070 behaves like redirects to 2fa setup page when the user requires it5071 when 2fa is set up on application level5072 is expected to redirect to "/-/profile/two_factor_auth"5073 when 2fa is set up on group level5074 is expected to redirect to "/-/profile/two_factor_auth"5075 PUT #update5076 is expected to redirect to "http://test.host/oauth/applications/12"5077 behaves like redirects to login page when the user is not signed in5078 is expected to redirect to "/users/sign_in"5079 behaves like redirects to 2fa setup page when the user requires it5080 when 2fa is set up on application level5081 is expected to redirect to "/-/profile/two_factor_auth"5082 when 2fa is set up on group level5083 is expected to redirect to "/-/profile/two_factor_auth"5084 PUT #renew5085 is expected to respond with numeric status code ok5086 is expected to change `application.reload.secret`5087 returns the secret in json format5088 behaves like redirects to login page when the user is not signed in5089 is expected to redirect to "/users/sign_in"5090 behaves like redirects to 2fa setup page when the user requires it5091 when 2fa is set up on application level5092 is expected to redirect to "/-/profile/two_factor_auth"5093 when 2fa is set up on group level5094 is expected to redirect to "/-/profile/two_factor_auth"5095 when renew fails5096 is expected not to change `application.reload.secret`5097 is expected to respond with numeric status code unprocessable_entity5098 GET #show5099 is expected to respond with numeric status code ok5100 behaves like redirects to login page when the user is not signed in5101 is expected to redirect to "/users/sign_in"5102 behaves like redirects to 2fa setup page when the user requires it5103 when 2fa is set up on application level5104 is expected to redirect to "/-/profile/two_factor_auth"5105 when 2fa is set up on group level5106 is expected to redirect to "/-/profile/two_factor_auth"5107 GET #index5108 is expected to respond with numeric status code ok5109 when OAuth applications are disabled5110 is expected to respond with numeric status code ok5111 behaves like redirects to login page when the user is not signed in5112 is expected to redirect to "/users/sign_in"5113 behaves like redirects to 2fa setup page when the user requires it5114 when 2fa is set up on application level5115 is expected to redirect to "/-/profile/two_factor_auth"5116 when 2fa is set up on group level5117 is expected to redirect to "/-/profile/two_factor_auth"5118 POST #create5119 creates an application5120 redirects back to profile page if OAuth applications are disabled5121 when redirect_uri is invalid5122 shows an error for a forbidden URI5123 when scopes are not present5124 shows an error for blank scopes5125 when scopes are invalid5126 shows an error for invalid scopes5127 behaves like redirects to login page when the user is not signed in5128 is expected to redirect to "/users/sign_in"5129 behaves like redirects to 2fa setup page when the user requires it5130 when 2fa is set up on application level5131 is expected to redirect to "/-/profile/two_factor_auth"5132 when 2fa is set up on group level5133 is expected to redirect to "/-/profile/two_factor_auth"5134 Helpers5135 current_user_mode available5136 includes Two-factor enforcement concern5137 locale5138 sets user's locale5139Emails::PagesDomains5140 #pages_domain_enabled_email5141 is expected to have body including "has been enabled"5142 behaves like a pages domain verification email5143 has the expected content5144 behaves like a pages domain email5145 has the expected content5146 behaves like an email sent to a user5147 is sent to user's global notification email address5148 with group notification email5149 is sent to user's group notification email5150 behaves like an email sent from GitLab5151 has the characteristics of an email sent from GitLab5152 behaves like it should not have Gmail Actions links5153 is expected not to have body including "ViewAction"5154 behaves like a user cannot unsubscribe through footer link5155 does not have a List-Unsubscribe header or a body link5156 #pages_domain_disabled_email5157 is expected to have body including "has been disabled"5158 behaves like a pages domain verification email5159 has the expected content5160 behaves like a pages domain email5161 has the expected content5162 behaves like an email sent to a user5163 is sent to user's global notification email address5164 with group notification email5165 is sent to user's group notification email5166 behaves like an email sent from GitLab5167 has the characteristics of an email sent from GitLab5168 behaves like it should not have Gmail Actions links5169 is expected not to have body including "ViewAction"5170 behaves like a user cannot unsubscribe through footer link5171 does not have a List-Unsubscribe header or a body link5172 behaves like notification about upcoming domain removal5173 when domain is not scheduled for removal5174 asks user to remove it5175 when domain is scheduled for removal5176 notifies user that domain will be removed automatically5177 #pages_domain_verification_succeeded_email5178 is expected to have body including "successfully verified"5179 behaves like a pages domain verification email5180 has the expected content5181 behaves like a pages domain email5182 has the expected content5183 behaves like an email sent to a user5184 is sent to user's global notification email address5185 with group notification email5186 is sent to user's group notification email5187 behaves like an email sent from GitLab5188 has the characteristics of an email sent from GitLab5189 behaves like it should not have Gmail Actions links5190 is expected not to have body including "ViewAction"5191 behaves like a user cannot unsubscribe through footer link5192 does not have a List-Unsubscribe header or a body link5193 #pages_domain_verification_failed_email5194 behaves like a pages domain email5195 has the expected content5196 behaves like an email sent to a user5197 is sent to user's global notification email address5198 with group notification email5199 is sent to user's group notification email5200 behaves like an email sent from GitLab5201 has the characteristics of an email sent from GitLab5202 behaves like it should not have Gmail Actions links5203 is expected not to have body including "ViewAction"5204 behaves like a user cannot unsubscribe through footer link5205 does not have a List-Unsubscribe header or a body link5206 behaves like notification about upcoming domain removal5207 when domain is not scheduled for removal5208 asks user to remove it5209 when domain is scheduled for removal5210 notifies user that domain will be removed automatically5211 #pages_domain_auto_ssl_failed_email5212 says that we failed to obtain certificate5213 behaves like a pages domain email5214 has the expected content5215 behaves like an email sent to a user5216 is sent to user's global notification email address5217 with group notification email5218 is sent to user's group notification email5219 behaves like an email sent from GitLab5220 has the characteristics of an email sent from GitLab5221 behaves like it should not have Gmail Actions links5222 is expected not to have body including "ViewAction"5223 behaves like a user cannot unsubscribe through footer link5224 does not have a List-Unsubscribe header or a body link5225Adding an AwardEmoji5226 when the user does not have permission5227 behaves like a mutation that does not create an AwardEmoji5228 is expected not to change `AwardEmoji.count`5229 behaves like a mutation that returns a top-level access error5230 is expected to contain exactly "The resource that you are attempting to access does not exist or you don't have permission to perform this action"5231 when the user has permission5232 when the given awardable is not an Awardable5233 behaves like a mutation that does not create an AwardEmoji5234 is expected not to change `AwardEmoji.count`5235 behaves like a mutation that returns top-level errors5236 is expected to include /was provided invalid value for awardableId/5237 when the given awardable is an Awardable but still cannot be awarded an emoji5238 behaves like a mutation that does not create an AwardEmoji5239 is expected not to change `AwardEmoji.count`5240 behaves like a mutation that returns top-level errors5241 is expected to contain exactly "You cannot add emoji reactions to this resource."5242 when the given awardable is an Awardable5243 creates an emoji5244 returns the emoji5245 marking Todos as done5246 type: :issue, expectation: true5247 is expected to eq true5248 type: :merge_request, expectation: true5249 is expected to eq true5250 type: :project_snippet, expectation: false5251 is expected to eq false5252 for notes5253 regular Notes5254 marks the Todo as done5255 PersonalSnippet Notes5256 does not mark the Todo as done5257 when there were active record validation errors5258 returns an empty awardEmoji5259 behaves like a mutation that does not create an AwardEmoji5260 is expected not to change `AwardEmoji.count`5261 behaves like a mutation that returns errors in the response5262 is expected to contain exactly "Error 1" and "Error 2"5263Merge Requests Diffs5264 GET diffs_batch5265 without caching5266 behaves like serializes diffs with expected arguments5267 serializes paginated merge request diff collection5268 with caching5269 does not serialize diffs5270 with the different user5271 behaves like serializes diffs with expected arguments5272 serializes paginated merge request diff collection5273 with a new unfoldable diff position5274 behaves like serializes diffs with expected arguments5275 serializes paginated merge request diff collection5276 with diff_head option5277 behaves like serializes diffs with expected arguments5278 serializes paginated merge request diff collection5279 with the different pagination option5280 behaves like serializes diffs with expected arguments5281 serializes paginated merge request diff collection5282 with the different diff_view5283 behaves like serializes diffs with expected arguments5284 serializes paginated merge request diff collection5285 with the different expanded option5286 behaves like serializes diffs with expected arguments5287 serializes paginated merge request diff collection5288 with the different ignore_whitespace_change option5289 behaves like serializes diffs with expected arguments5290 serializes paginated merge request diff collection5291 when the paths is given5292 when using ETag caching5293 does not serialize diffs5294 when not using ETag caching5295 does not use cache5296Projects::Settings::RepositoryController5297 GET show5298 renders show with 200 status code5299 PUT cleanup5300 enqueues a project cleanup5301 when project cleanup returns an error5302 shows an error5303 POST create_deploy_token5304 a good request5305 creates the deploy token5306 a bad request5307 does not create the deploy token5308 an invalid request5309 raises a validation error5310 PUT update5311 when updating default branch5312 with a good request5313 updates default branch and redirect to project_settings_repository_path5314 with a bad input5315 does not update default branch and shows an alert5316 when updating branch names template from issues5317 with a good request5318 updates issue_branch_template and redirect to project_settings_repository_path5319 with a bad input5320 updates issue_branch_template and redirect to project_settings_repository_path5321API::ProjectRepositoryStorageMoves5322 behaves like repository_storage_moves API5323 GET /projects/:id/repository_storage_moves5324 behaves like get container repository storage move list5325 returns container repository storage moves5326 avoids N+1 queries5327 returns the most recently created first5328 permissions5329 is expected to be allowed for :admin5330 is expected to be denied for :user5331 non-existent container5332 returns not found5333 GET /projects/:id/repository_storage_moves/:repository_storage_move_id5334 behaves like get single container repository storage move5335 returns a container repository storage move5336 non-existent container repository storage move5337 returns not found5338 permissions5339 is expected to be allowed for :admin5340 is expected to be denied for :user5341 non-existent container5342 returns not found5343 GET /project_repository_storage_moves5344 behaves like get container repository storage move list5345 returns container repository storage moves5346 avoids N+1 queries5347 returns the most recently created first5348 permissions5349 is expected to be allowed for :admin5350 is expected to be denied for :user5351 GET /project_repository_storage_moves/:repository_storage_move_id5352 behaves like get single container repository storage move5353 returns a container repository storage move5354 non-existent container repository storage move5355 returns not found5356 permissions5357 is expected to be allowed for :admin5358 is expected to be denied for :user5359 POST /projects/:id/repository_storage_moves5360 schedules a container repository storage move5361 permissions5362 is expected to be allowed for :admin5363 is expected to be denied for :user5364 destination_storage_name is missing5365 schedules a container repository storage move5366 when container does not exist5367 returns not found5368 POST /project_repository_storage_moves5369 schedules the worker5370 source_storage_name is invalid5371 gives an error5372 destination_storage_name is missing5373 schedules the worker5374 destination_storage_name is invalid5375 gives an error5376 normal user5377 is expected to be denied for :user5378getting dependency proxy manifests in a group5379 returns the total count of manifests5380 behaves like a working graphql query5381 returns a successful response5382 with different permissions5383 group_visibility: :private, role: :maintainer, access_granted: true5384 return the proper response5385 group_visibility: :private, role: :developer, access_granted: true5386 return the proper response5387 group_visibility: :private, role: :reporter, access_granted: true5388 return the proper response5389 group_visibility: :private, role: :guest, access_granted: true5390 return the proper response5391 group_visibility: :private, role: :anonymous, access_granted: false5392 return the proper response5393 group_visibility: :public, role: :maintainer, access_granted: true5394 return the proper response5395 group_visibility: :public, role: :developer, access_granted: true5396 return the proper response5397 group_visibility: :public, role: :reporter, access_granted: true5398 return the proper response5399 group_visibility: :public, role: :guest, access_granted: true5400 return the proper response5401 group_visibility: :public, role: :anonymous, access_granted: false5402 return the proper response5403 limiting the number of manifests5404 only returns N manifests5405 sorting and pagination5406 with default sorting5407 behaves like sorted paginated query5408 behaves like requires variables5409 shared example requires variables to be set5411 when sorting5412 sorts correctly5413 when paginating5414 paginates correctly5415Groups::LabelsController5416 GET #index5417 returns group and project labels by default5418 with ancestor group5419 returns ancestor group labels5420 external authorization5421 behaves like disabled when using an external authorization service5422 works when the feature is not enabled5423 renders a 404 with a message when the feature is enabled5424 with views rendered5425 avoids N+1 queries5426 POST #toggle_subscription5427 allows user to toggle subscription on group labels5428 DELETE #destroy5429 when current user has ability to destroy the label5430 removes the label5431 does not remove the label if it is locked5432 when label is succesfuly destroyed5433 redirects to the group labels page5434 when current_user does not have ability to destroy the label5435 responds with status 4045436 PUT #update5437 when updating lock_on_merge5438 when feature flag is disabled5439 does not allow setting lock_on_merge5440 when feature flag is enabled5441 allows setting lock_on_merge5442Groups::Crm::OrganizationsController5443 GET #index5444 behaves like ok response with index template if authorized5445 private group5446 with authorized user5447 when crm_enabled is true5448 behaves like ok response with index template5449 renders the index template5450 when crm_enabled is false5451 behaves like response with 404 status5452 returns 4045453 when subgroup5454 behaves like response with 404 status5455 returns 4045456 with unauthorized user5457 behaves like response with 404 status5458 returns 4045459 with anonymous user5460 blah5461 public group5462 with anonymous user5463 behaves like response with 404 status5464 returns 4045465 GET #new5466 behaves like ok response with index template if authorized5467 private group5468 with authorized user5469 when crm_enabled is true5470 behaves like ok response with index template5471 renders the index template5472 when crm_enabled is false5473 behaves like response with 404 status5474 returns 4045475 when subgroup5476 behaves like response with 404 status5477 returns 4045478 with unauthorized user5479 behaves like response with 404 status5480 returns 4045481 with anonymous user5482 blah5483 public group5484 with anonymous user5485 behaves like response with 404 status5486 returns 4045487 GET #edit5488 behaves like ok response with index template if authorized5489 private group5490 with authorized user5491 when crm_enabled is true5492 behaves like ok response with index template5493 renders the index template5494 when crm_enabled is false5495 behaves like response with 404 status5496 returns 4045497 when subgroup5498 behaves like response with 404 status5499 returns 4045500 with unauthorized user5501 behaves like response with 404 status5502 returns 4045503 with anonymous user5504 blah5505 public group5506 with anonymous user5507 behaves like response with 404 status5508 returns 4045509uploading designs5510 returns an error if the user is not allowed to upload designs5511 succeeds, and responds with the created designs5512 can respond with skipped designs5513 when the input does not include a null value for each mapped file5514 returns an error5515 when the issue does not exist5516 returns an error5517 when saving the designs raises an error5518 responds with errors5519getting group members information5520 when a member is invited only via email5521 returns null in the user field5522 when the request is correct5523 returns group members successfully5524 behaves like a working graphql query5525 returns a successful response5526 search argument5527 returns members that match the search query5528 when paginating5529 returns correct results5530 when requesting member's notification email5531 when current_user is admin5532 returns notification email5533 when current_user is not admin5534 returns an error5535 by access levels5536 by owner5537 returns owner5538 by maintainer5539 returns maintainer5540 by owner and maintainer5541 returns owner and maintainer5542 member relations5543 returns direct members5544 returns invited members and inherited members of a shared group5545 returns invited members and inherited members of an ancestor of a shared group5546 returns direct and inherited members5547 returns direct, inherited, and descendant members5548 returns an error for an invalid member relation5549 when unauthenticated5550 returns visible members5551API::Ci::Runners5552 /api/v4/runners/reset_registration_token5553 POST /api/v4/runners/reset_registration_token5554 resets runner registration token5555 when unauthenticated5556 behaves like unauthenticated5557 returns 401 error5558 when unauthorized5559 with a non-admin instance member5560 behaves like unauthorized5561 returns 403 error5562 /api/v4/groups/:id/runners/reset_registration_token5563 POST /api/v4/groups/:id/runners/reset_registration_token5564 resets runner registration token5565 when unauthorized5566 when not a group member5567 behaves like not found5568 returns 404 error5569 with a non-admin group member5570 behaves like unauthorized5571 returns 403 error5572 when malformed id is provided5573 behaves like not found5574 returns 404 error5575 /api/v4/projects/:id/runners/reset_registration_token5576 POST /api/v4/projects/:id/runners/reset_registration_token5577 resets runner registration token5578 when unauthorized5579 when not a project member5580 behaves like not found5581 returns 404 error5582 with a non-admin project member5583 behaves like unauthorized5584 returns 403 error5585 when malformed id is provided5586 behaves like not found5587 returns 404 error5588ConfirmationsController5589 #show5590 when signup info is required5591 does not redirect5592 user is already confirmed5593 renders `new`5594 displays an error message5595 does not display the email of the user5596 sets the username and caller_id in the context5597 user accesses the link after the expiry of confirmation token has passed5598 renders `new`5599 displays an error message5600 does not display the email of the user5601 sets the username and caller_id in the context5602 with an invalid confirmation token5603 renders `new`5604 displays an error message5605 sets the the caller_id in the context5606 #create5607 when signup info is required5608 does not redirect5609 when `email_confirmation_setting` is set to `soft`5610 when reCAPTCHA is disabled5611 successfully sends password reset when reCAPTCHA is not solved5612 when reCAPTCHA is enabled5613 successfully sends password reset when reCAPTCHA is solved5614 when the reCAPTCHA is not solved5615 displays an error5616 sets gon variables5617 when `email_confirmation_setting` is not set to `soft`5618 redirects to the users_almost_there path5619Emails::AutoDevops5620 #auto_devops_disabled_email5621 sents email with correct subject5622 sents an email to the user5623 is sent as GitLab email5624 behaves like appearance header and footer enabled5625 contains header and footer5626 behaves like appearance header and footer not enabled5627 does not contain header and footer5628Setting Draft status of a merge request5629 returns an error if the user is not allowed to update the merge request5630 marks the merge request as Draft5631 does not do anything if the merge request was already marked `Draft`5632 when passing Draft false as input5633 does not do anything if the merge reqeust was not marked draft5634 unmarks the merge request as `Draft`5635Projects::ErrorTrackingController5636 GET #index5637 html5638 renders index with 200 status code5639 with insufficient permissions5640 returns 4045641 with an anonymous user5642 redirects to sign-in page5643 format json5644 with no data5645 returns no data5646 with extra params5647 when service result is successful5648 returns a list of errors5649 behaves like sets the polling header5650 is expected to eq "1000"5651 without extra params5652 when service result is successful5653 returns a list of errors5654 when service result is erroneous5655 without http_status5656 returns 400 with message5657 with explicit http_status5658 returns http_status with message5659 GET #issue_details5660 format json5661 with no data5662 returns no data5663 behaves like sets the polling header5664 is expected to eq "1000"5665 when service result is successful5666 returns an error5667 behaves like sets the polling header5668 is expected to eq "1000"5669 when service result is erroneous5670 without http_status5671 returns 400 with message5672 with explicit http_status5673 returns http_status with message5674 PUT #update5675 format json5676 when user is a reporter5677 returns 404 error5678 when update result is successful5679 returns a success5680 when update result is erroneous5681 returns 400 with message5682API::Statistics Statistics5683 GET /application/statistics5684 behaves like GET request permissions for admin mode5685 behaves like when admin5686 behaves like makes request5687 returns5688 behaves like makes request5689 returns5690 behaves like when user5691 returns5692 behaves like makes request5693 returns5694 when no user5695 returns authentication error5696 when not an admin5697 returns forbidden error5698 when authenticated as admin5699 matches the response schema5700 gives the right statistics5701API::Ci::Runner5702 /api/v4/runners5703 POST /api/v4/runners/verify5704 behaves like runner migrations backoff5705 when executing locking database migrations5706 returns 429 error5707 with runner_migrations_backoff disabled5708 does not return 4295709 when no token is provided5710 returns 400 error5711 when invalid token is provided5712 returns 403 error5713 when valid token is provided5714 verifies Runner credentials5715 updates contacted_at5716 with glrt-prefixed token5717 verifies Runner credentials5718 does not update contacted_at5719 with non-expiring runner token5720 verifies Runner credentials5721 behaves like storing arguments in the application context for the API5722 places the expected params in the application context5723 when system_id is provided5724 creates a runner_manager5725 when non-expired token is provided5726 verifies Runner credentials5727 when expired token is provided5728 does not verify Runner credentials5729Admin::GroupsController5730 DELETE #destroy5731 schedules a group destroy5732 redirects to the admin group path5733 POST #create5734 creates group5735 creates namespace_settings for group5736 creates admin_note for group5737 delegates to Groups::CreateService service instance5738 PUT #update5739 with runner registration disabled5740 updates the setting successfully5741 does not change the registration token5742 with runner registration enabled5743 updates the setting successfully5744 changes the registration token5745Projects::FindFileController5746 GET #show5747 valid branch5748 is expected to respond with 2005749 invalid branch5750 is expected to respond with 4045751 GET #list5752 valid branch5753 returns an array of file path list5754 invalid branch5755 responds with status 4045756getting project flow metrics5757 # order random5758 behaves like value stream analytics flow metrics issueCount examples5759 returns the correct count5760 with partial filters5761 returns filtered count5762 with all filters5763 returns filtered count5764 when the user is not authorized5765 returns nil5766 behaves like validation on Time arguments5767 when `to` parameter is higher than `from`5768 returns error5769 when from and to parameter range is higher than 180 days5770 returns error5771 behaves like value stream analytics flow metrics deploymentCount examples5772 returns the correct count5773 when the user is not authorized5774 returns nil5775 when outside of the date range5776 returns 0 count5777 behaves like validation on Time arguments5778 when `to` parameter is higher than `from`5779 returns error5780 when from and to parameter range is higher than 180 days5781 returns error5782RendersCommits5783 sets instance variables for counts5784 rendering commits5785 avoids N + 15786 .prepare_commits_for_rendering5787 avoids N+15788rendering project pipeline statistics5789 contains two arrays of 8 elements each for the week pipelines5790 contains two arrays of 13 elements each for the year pipelines5791 behaves like a working graphql query5792 returns a successful response5793 behaves like monthly statistics5794 contains two arrays of 32 elements each for the month pipelines5795 behaves like monthly statistics5796 contains two arrays of 31 elements each for the month pipelines5797 behaves like monthly statistics5798 contains two arrays of 32 elements each for the month pipelines5799Todo Query5800 when requesting user is todo owner5801 is expected to include {"id" => "gid://gitlab/Todo/41"}5802 when todo target is WorkItem5803 works with a WorkItem target5804 when requesting user is not todo owner5805 is expected to be nil5806 when unauthenticated5807 is expected to be nil5808ControllerWithCrossProjectAccessCheck5809 When reading cross project is not allowed5810 #requires_cross_project_access5811 renders a 403 with trying to access a cross project page5812 is skipped when the `if` condition returns false5813 is skipped when the `unless` condition returns true5814 correctly renders an action that does not require cross project access5815 #skip_cross_project_access_check5816 renders a success when the check is skipped5817 is executed when the `if` condition returns false5818 is executed when the `unless` condition returns true5819 does not skip the check on an action that is not skipped5820 does not skip the check on an action that was not defined to skip5821GroupUpdate5822 when unauthorized5823 when not a group member5824 behaves like unauthorized5825 returns an error5826 when a non-admin group member5827 behaves like unauthorized5828 returns an error5829 when authorized5830 updates shared runners settings5831 when using DISABLED_WITH_OVERRIDE (deprecated)5832 updates shared runners settings with disabled_and_overridable5833 when bad arguments are provided5834 returns the errors5835getting branch protection for a branch rule5836 # order random5837 when the user does have read_protected_branch abilities5838 includes allow_force_push5839 behaves like a working graphql query5840 returns a successful response5841 when the user does not have read_protected_branch abilities5842 is expected not to be present5843 behaves like a working graphql query5844 returns a successful response5845Projects::ReleasesController5846 GET #downloads5847 filepath redirection5848 valid filepath5849 redirects to the asset direct link5850 redirects with a status of 3025851 invalid filepath5852 is not found5853 sessionless download authentication5854 will allow sessionless users to download the file5855 invalid filepath5856 cannot create an invalid filepath5857JobArtifactsDestroy5858 # order random5859 when the user is allowed to destroy the job artifacts5860 destroys the job artifacts and returns the expected data5861 when the the project this job belongs to is undergoing stats refresh5862 destroys no artifacts and returns the correct error5863 when the user is not allowed to destroy the job artifacts5864 returns an error5865Delete a work item5866 when the user is not allowed to delete a work item5867 behaves like a mutation that returns a top-level access error5868 is expected to contain exactly "The resource that you are attempting to access does not exist or you don't have permission to perform this action"5869 when user has permissions to delete a work item5870 deletes the work item5871API::UsageData5872 POST /usage_data/increment_counter5873 without CSRF token5874 returns forbidden5875 usage_data_api feature not enabled5876 returns not_found5877 without authentication5878 returns 401 response5879 with authentication5880 when event is missing from params5881 returns bad request5882 with correct params5883 returns status :ok5884 with unknown event5885 returns status ok5886 POST /usage_data/increment_unique_users5887 without CSRF token5888 returns forbidden5889 usage_data_api feature not enabled5890 returns not_found5891 without authentication5892 returns 401 response5893 with authentication5894 when event is missing from params5895 returns bad request5896 with correct params5897 returns status ok5898 with unknown event5899 returns status ok5900 POST /usage_data/track_event5901 without CSRF token5902 returns forbidden5903 usage_data_api feature not enabled5904 returns not_found5905 without authentication5906 returns 401 response5907 with authentication5908 with correct params5909 returns status ok5910 GET /usage_data/metric_definitions5911 without authentication5912 returns a YAML file5913moving designs5914 the user is not allowed to move designs5915 returns an error5916 the neighbors do not have positions5917 maintains the correct order in the presence of other unpositioned designs5918 behaves like a successful move5919 does not error, and reports the current order5920 moving a design between two others5921 behaves like a successful move5922 does not error, and reports the current order5923 moving a design to the start5924 behaves like a successful move5925 does not error, and reports the current order5926 moving a design to the end5927 behaves like a successful move5928 does not error, and reports the current order5929Query.project.mergeRequests.pipelines5930 .count5931 produces correct results5932 is scalable5933 .nodes5934 produces correct results5935 is scalable5936 requests merge_request_diffs at most once5937getting project label information5938 behaves like querying a GraphQL type with labels5939 running a query5940 minimum required arguments5941 returns the label information5942 returns the labels information5943 with a search param5944 finds the matching labels5945 the label does not exist5946 returns nil5947 performance5948 batches queries for labels by title5949ChecksCollaboration5950 #can_collaborate_with_project?5951 is true if the user can push to the project5952 is true when the user can push to a branch of the project5953 when the user has forked the project5954 is true5955 is false when the project is archived5956Toggling the resolve status of a discussion5957 when the user does not have permission5958 behaves like a mutation that returns a top-level access error5959 is expected to contain exactly "The resource that you are attempting to access does not exist or you don't have permission to perform this action"5960 when user has permission5961 returns the discussion without errors5962 when an error is encountered5963 behaves like a mutation that returns errors in the response5964 is expected to contain exactly "Discussion failed to be resolved"5965Updating an existing HTTP Integration5966 behaves like updating an existing HTTP integration5967 updates the integration5968Update Environment5969 # order random5970 when updating tier5971 updates successfully5972 when updating external URL5973 updates successfully5974 when url is invalid5975 returns error5976query Jira service5977 behaves like unauthorized users cannot read services5978 when anonymous user5979 is expected to equal nil5980 when user developer5981 is expected to equal nil5982 when user can access project services5983 retuns list of jira imports5984 behaves like a working graphql query5985 returns a successful response5986query terraform states5987 returns terraform state data5988 returns count of terraform states5989 unauthorized users5990 is expected to be nil5991CiJobTokenScopeAddProject5992 when unauthorized5993 when not a maintainer5994 has graphql errors5995 when authorized5996 adds the target project to the inbound job token scope5997 when invalid target project is provided5998 has mutation errors5999Projects::RunnerProjectsController6000 # order random6001 #create6002 when assigning runner to another project6003 redirects to the project runners page6004 #destroy6005 when unassigning runner from project6006 redirects to the project runners page6007Query.project.pipeline.stages.groups6008 returns a array of jobs belonging to a pipeline6009 behaves like a working graphql query6010 returns a successful response6011API::Integrations::Slack::Interactions6012 # order random6013 POST /integrations/slack/interactions6014 behaves like Slack request verification6015 unauthorized request6016 when the slack_app_signing_secret setting is not set6017 behaves like an unauthorized request6018 is expected to respond with numeric status code unauthorized6019 when the timestamp header has expired6020 behaves like an unauthorized request6021 is expected to respond with numeric status code unauthorized6022 when the timestamp header is missing6023 behaves like an unauthorized request6024 is expected to respond with numeric status code unauthorized6025 when the signature header is missing6026 behaves like an unauthorized request6027 is expected to respond with numeric status code unauthorized6028 when the signature is not verified6029 behaves like an unauthorized request6030 is expected to respond with numeric status code unauthorized6031 when type param is missing6032 behaves like a successful request that generates a tracked error6033 is expected to be empty6034 when type param is unknown6035 generates a tracked error6036 when event.type param is view_closed6037 calls the Slack Interactivity Service6038Groups::UsageQuotasController6039 # order random6040 GET /groups/*group_id/-/usage_quotas6041 when user has read_usage_quotas permission6042 renders index with 200 status code6043 renders 404 page if subgroup6044 when user does not have read_usage_quotas permission6045 renders not_found6046API::Users6047 PUT /user/preferences/6048 with correct attributes and a logged in user6049 returns a success status and the value has been changed6050 missing a preference6051 returns a bad request status6052 without a logged in user6053 returns an unauthorized status6054 with an unsupported preference6055 returns a bad parameter6056 with an unsupported value6057 returns a bad parameter6058 with an update service failure6059 returns a bad request6060Projects::ServicePingController6061 POST #web_ide_pipelines_count6062 behaves like counter is not increased6063 when the user is not authenticated6064 returns 3026065 when the user does not have access to the project6066 returns 4046067 behaves like counter is increased6068 when the authenticated user has access to the project6069 increments the usage counter6070Admin::ApplicationSettings::AppearancesController6071 POST #create6072 creates appearance with footer and header message6073 when enabling header and footer in email6074 creates appearance with enabled flag6075 PUT #update6076 updates appearance with footer and header message6077 when enabling header and footer in email6078 updates appearance with enabled flag6079Warden6080 # order random6081 rate limit6082 limits the number of requests that can be made from a single IP address per user6083Updating an existing release asset link6084 updates and existing release asset link and returns the updated link6085Emails::AdminNotification6086 adds email methods to Notify6087Users::UnsubscribesController6088 show6089 responds with success6090 behaves the same if email address isn't known in the system6091 create6092 unsubscribes the connected user6093 behaves the same if email address isn't known in the system6094PagerDuty webhook6095 # order random6096 POST /incidents/pagerduty6097 calls PagerDuty webhook processor with correct parameters6098 responds with 202 Accepted6099Mutations::UserPreferences::Update6100 when user has no existing preference6101 creates the user preference record6102 when user has existing preference6103 updates the existing value6104Harbor::Tag6105 behaves like raises NotImplementedError when calling #container6106 #container6107 raises NotImplementedError6108well-known URLs6109 # order random6110 /.well-known/change-password6111 redirects to edit profile password path6112Knapsack report was generated. Preview:6113{6114 "spec/requests/api/merge_requests_spec.rb": 480.7734840009998,6115 "spec/requests/api/conan_instance_packages_spec.rb": 291.89921191499934,6116 "spec/requests/api/composer_packages_spec.rb": 129.03206691200012,6117 "spec/requests/api/rubygem_packages_spec.rb": 95.2699455639995,6118 "spec/controllers/projects/branches_controller_spec.rb": 107.1044247079999,6119 "spec/requests/api/terraform/state_spec.rb": 71.17212430699965,6120 "spec/controllers/projects/merge_requests/drafts_controller_spec.rb": 66.02463364999949,6121 "spec/requests/api/graphql/mutations/notes/create/note_spec.rb": 68.78387496699997,6122 "spec/controllers/projects/commit_controller_spec.rb": 41.55055884400008,6123 "spec/requests/projects/issues_controller_spec.rb": 41.85135035500025,6124 "spec/requests/api/ci/runner/jobs_artifacts_spec.rb": 34.99891747299989,6125 "spec/controllers/admin/clusters_controller_spec.rb": 32.86197741400065,6126 "spec/mailers/previews_spec.rb": 21.171104464000564,6127 "spec/requests/api/graphql/mutations/namespace/package_settings/update_spec.rb": 28.751798950999728,6128 "spec/requests/api/graphql/group/packages_spec.rb": 26.441402939,6129 "spec/requests/api/graphql/work_item_spec.rb": 23.132013929000095,6130 "spec/controllers/projects/merge_requests/conflicts_controller_spec.rb": 28.38116835300025,6131 "spec/controllers/snippets/notes_controller_spec.rb": 22.65193670500048,6132 "spec/requests/groups/settings/access_tokens_controller_spec.rb": 15.558824040999752,6133 "spec/requests/ide_controller_spec.rb": 10.39734337400023,6134 "spec/requests/api/graphql/group_query_spec.rb": 24.089398086000074,6135 "spec/requests/api/access_requests_spec.rb": 10.845410418000029,6136 "spec/requests/api/graphql/mutations/award_emojis/toggle_spec.rb": 17.849750845000017,6137 "spec/controllers/oauth/applications_controller_spec.rb": 10.67008716500004,6138 "spec/mailers/emails/pages_domains_spec.rb": 7.175930390000758,6139 "spec/requests/api/graphql/mutations/award_emojis/add_spec.rb": 10.973383294999621,6140 "spec/requests/projects/merge_requests/diffs_spec.rb": 10.125939491999816,6141 "spec/controllers/projects/settings/repository_controller_spec.rb": 11.140361388999736,6142 "spec/requests/api/project_repository_storage_moves_spec.rb": 6.985858148000261,6143 "spec/requests/api/graphql/group/dependency_proxy_manifests_spec.rb": 9.628963819000091,6144 "spec/controllers/groups/labels_controller_spec.rb": 9.60992097899998,6145 "spec/requests/groups/crm/organizations_controller_spec.rb": 8.103681000000506,6146 "spec/requests/api/graphql/mutations/design_management/upload_spec.rb": 9.192220852999526,6147 "spec/requests/api/graphql/group/group_members_spec.rb": 6.95237742900008,6148 "spec/requests/api/ci/runners_reset_registration_token_spec.rb": 5.37566477099972,6149 "spec/controllers/confirmations_controller_spec.rb": 5.016726461999497,6150 "spec/mailers/emails/auto_devops_spec.rb": 7.254525278000074,6151 "spec/requests/api/graphql/mutations/merge_requests/set_draft_spec.rb": 9.75330160500016,6152 "spec/controllers/projects/error_tracking_controller_spec.rb": 3.2773228310006743,6153 "spec/requests/api/statistics_spec.rb": 4.7781542310003715,6154 "spec/requests/api/ci/runner/runners_verify_post_spec.rb": 1.6530833650003842,6155 "spec/controllers/admin/groups_controller_spec.rb": 3.4941897939997943,6156 "spec/controllers/projects/find_file_controller_spec.rb": 5.765188207999927,6157 "spec/requests/api/graphql/project/flow_metrics_spec.rb": 5.262540603999696,6158 "spec/controllers/concerns/renders_commits_spec.rb": 3.690752796999732,6159 "spec/requests/api/graphql/project/project_pipeline_statistics_spec.rb": 3.911049350000212,6160 "spec/requests/api/graphql/todo_query_spec.rb": 2.906263153000509,6161 "spec/controllers/concerns/controller_with_cross_project_access_check_spec.rb": 3.7868073029994775,6162 "spec/requests/api/graphql/mutations/groups/update_spec.rb": 3.867284431000371,6163 "spec/requests/api/graphql/project/branch_rules/branch_protection_spec.rb": 2.4685919980001927,6164 "spec/requests/projects/releases_controller_spec.rb": 3.6384996189999583,6165 "spec/requests/api/graphql/mutations/ci/job/artifacts_destroy_spec.rb": 2.0085356529998535,6166 "spec/requests/api/graphql/mutations/work_items/delete_spec.rb": 2.4536596779998945,6167 "spec/requests/api/usage_data_spec.rb": 2.074691711000014,6168 "spec/requests/api/graphql/mutations/design_management/move_spec.rb": 2.935565312000108,6169 "spec/requests/api/graphql/project/merge_request/pipelines_spec.rb": 3.0831774270000096,6170 "spec/requests/api/graphql/project/labels_query_spec.rb": 2.376713421000204,6171 "spec/controllers/concerns/checks_collaboration_spec.rb": 3.8043118519999553,6172 "spec/requests/api/graphql/mutations/discussions/toggle_resolve_spec.rb": 2.7319694730003903,6173 "spec/requests/api/graphql/mutations/alert_management/http_integration/update_spec.rb": 0.9647102519993496,6174 "spec/requests/api/graphql/mutations/environments/update_spec.rb": 1.9711673519996111,6175 "spec/requests/api/graphql/project/base_service_spec.rb": 2.19728605399996,6176 "spec/requests/api/graphql/project/terraform/states_spec.rb": 1.8902509649997228,6177 "spec/requests/api/graphql/mutations/ci/job_token_scope/add_project_spec.rb": 2.0595029589994738,6178 "spec/controllers/projects/runner_projects_controller_spec.rb": 2.0570041399996626,6179 "spec/requests/api/graphql/ci/groups_spec.rb": 2.1048353470005168,6180 "spec/requests/api/integrations/slack/interactions_spec.rb": 1.0639530279995597,6181 "spec/requests/groups/usage_quotas_controller_spec.rb": 1.7886815699994258,6182 "spec/requests/api/users_preferences_spec.rb": 0.969583541999782,6183 "spec/controllers/projects/service_ping_controller_spec.rb": 0.8844599860003655,6184 "spec/controllers/admin/application_settings/appearances_controller_spec.rb": 1.1247665749997395,6185 "spec/requests/warden_spec.rb": 1.4240111749995776,6186 "spec/requests/api/graphql/mutations/release_asset_links/update_spec.rb": 1.339494177999768,6187 "spec/mailers/emails/admin_notification_spec.rb": 1.0465136789998724,6188 "spec/controllers/users/unsubscribes_controller_spec.rb": 0.7907848000004378,6189 "spec/requests/projects/incident_management/pagerduty_incidents_spec.rb": 0.624048005000077,6190 "spec/requests/api/graphql/mutations/user_preferences/update_spec.rb": 0.628857725000671,6191 "spec/controllers/concerns/harbor/tag_spec.rb": 0.18380102300034196,6192 "spec/requests/well_known_routing_spec.rb": 0.189622212999893246193}6194Knapsack global time execution for tests: 31m 53s6195Pending: (Failures listed here are expected and do not affect your suite's status)6196 1) Mailer previews preview: NotifyPreview, email: "note_merge_request_email_for_diff_discussion" 6198 Failure/Error: CreateNoteDiffFileWorker.perform_async(id)6199 Sidekiq::Worker::EnqueueFromTransactionError:6200 CreateNoteDiffFileWorker.perform_async cannot be enqueued inside a transaction as this can lead to6201 race conditions when the worker runs before the transaction is committed and6202 tries to access a model that has not been saved yet.6203 Use an `after_commit` hook, or include `AfterCommitQueue` and use a `run_after_commit` block instead.6204 # ./config/initializers/forbid_sidekiq_in_transactions.rb:28:in `raise_inside_transaction_exception'6205 # ./config/initializers/forbid_sidekiq_in_transactions.rb:43:in `block (2 levels) in <module:NoEnqueueingFromTransactions>'6206 # ./app/models/diff_note.rb:140:in `enqueue_diff_file_creation_job'6207 # ./app/models/diff_note.rb:74:in `block in diff_file'6208 # ./gems/gitlab-utils/lib/gitlab/utils/strong_memoize.rb:34:in `strong_memoize'6209 # ./app/models/diff_note.rb:71:in `diff_file'6210 # ./app/services/notes/create_service.rb:215:in `should_track_ipynb_notes?'6211 # ./app/services/notes/create_service.rb:219:in `track_note_creation_in_ipynb'6212 # ./app/services/notes/create_service.rb:178:in `track_event'6213 # ./ee/app/services/ee/notes/create_service.rb:14:in `track_event'6214 # ./app/services/notes/create_service.rb:92:in `when_saved'6215 # ./app/services/notes/create_service.rb:40:in `block in execute'6216 # ./app/services/notes/create_service.rb:62:in `execute_quick_actions'6217 # ./app/services/notes/create_service.rb:23:in `execute'6218 # ./app/mailers/previews/notify_preview.rb:404:in `create_note'6219 # ./app/mailers/previews/notify_preview.rb:63:in `block in note_merge_request_email_for_diff_discussion'6220 # ./app/mailers/previews/notify_preview.rb:409:in `block in note_email'6221 # ./app/mailers/previews/notify_preview.rb:419:in `block in cleanup'6222 # ./app/models/concerns/cross_database_modification.rb:92:in `block in transaction'6223 # ./lib/gitlab/database/load_balancing/connection_proxy.rb:127:in `public_send'6224 # ./lib/gitlab/database/load_balancing/connection_proxy.rb:127:in `block in write_using_load_balancer'6225 # ./lib/gitlab/database/load_balancing/load_balancer.rb:133:in `block in read_write'6226 # ./lib/gitlab/database/load_balancing/load_balancer.rb:204:in `retry_with_backoff'6227 # ./lib/gitlab/database/load_balancing/load_balancer.rb:122:in `read_write'6228 # ./lib/gitlab/database/load_balancing/connection_proxy.rb:126:in `write_using_load_balancer'6229 # ./lib/gitlab/database/load_balancing/connection_proxy.rb:78:in `transaction'6230 # ./lib/gitlab/database.rb:390:in `block in transaction'6231 # ./lib/gitlab/database.rb:389:in `transaction'6232 # ./app/models/concerns/cross_database_modification.rb:83:in `transaction'6233 # ./app/mailers/previews/notify_preview.rb:418:in `cleanup'6234 # ./app/mailers/previews/notify_preview.rb:408:in `note_email'6235 # ./app/mailers/previews/notify_preview.rb:42:in `note_merge_request_email_for_diff_discussion'6236 # ./spec/mailers/previews_spec.rb:31:in `block (2 levels) in <top (required)>'6237 # ./spec/mailers/previews_spec.rb:42:in `block (3 levels) in <top (required)>'6238 # ./spec/spec_helper.rb:453:in `block (3 levels) in <top (required)>'6239 # ./spec/support/sidekiq_middleware.rb:18:in `with_sidekiq_server_middleware'6240 # ./spec/spec_helper.rb:444:in `block (2 levels) in <top (required)>'6241 # ./spec/spec_helper.rb:440:in `block (3 levels) in <top (required)>'6242 # ./lib/gitlab/application_context.rb:66:in `with_raw_context'6243 # ./spec/spec_helper.rb:440:in `block (2 levels) in <top (required)>'6244 # ./spec/spec_helper.rb:268:in `block (2 levels) in <top (required)>'6245 # ./spec/support/system_exit_detected.rb:7:in `block (2 levels) in <top (required)>'6246 # ./spec/support/fast_quarantine.rb:22:in `block (2 levels) in <top (required)>'6247 # ./spec/support/database/prevent_cross_joins.rb:106:in `block (3 levels) in <top (required)>'6248 # ./spec/support/database/prevent_cross_joins.rb:60:in `with_cross_joins_prevented'6249 # ./spec/support/database/prevent_cross_joins.rb:106:in `block (2 levels) in <top (required)>'6250 2) getting group information Query group(fullPath) when authenticated as user avoids N+1 queries6252 Failure/Error:6253 expect { post_multiplex(queries, current_user: admin) }6254 .to issue_same_number_of_queries_as { post_graphql(group_query(group1), current_user: admin) }6255 Expected 119 queries, but got 2186256 SELECT "personal_access_tokens".* FROM "personal_access_tokens" WHERE "personal_access_tokens"."token_digest" = 'dZgAaxyhQOLae0rcxxfBFRwVBvlzWiOCJGWaRNn7ads=' LIMIT 1 /*application:test,correlation_id:30bf96dce5f2bbb96fa85efed3bb69bd,db_config_name:main,line:/app/models/concerns/token_authenticatable_strategies/digest.rb:12:in `find_token_authenticatable'*/6257 SAVEPOINT active_record_2 /*application:test,correlation_id:30bf96dce5f2bbb96fa85efed3bb69bd,db_config_name:main,line:/ee/app/models/license.rb:82:in `load_license'*/6258 INSERT INTO "personal_access_tokens" ("user_id", "name", "expires_at", "created_at", "updated_at", "scopes", "token_digest") VALUES (1663, 'PAT 758', '2023-09-17', '2023-08-18 13:26:26.555954', '2023-08-18 13:26:26.555954', '---6259 - api6260 ', 'aqTcVvzm1x7kYpgVNzgGQ6JjOcYvlr8VxYQ46/h0258=') RETURNING "id" /*application:test,correlation_id:30bf96dce5f2bbb96fa85efed3bb69bd,db_config_name:main,line:<internal:kernel>:90:in `tap'*/6261 RELEASE SAVEPOINT active_record_2 /*application:test,correlation_id:30bf96dce5f2bbb96fa85efed3bb69bd,db_config_name:main,line:<internal:kernel>:90:in `tap'*/6262 SELECT "personal_access_tokens".* FROM "personal_access_tokens" WHERE "personal_access_tokens"."token_digest" = 'aqTcVvzm1x7kYpgVNzgGQ6JjOcYvlr8VxYQ46/h0258=' LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/concerns/token_authenticatable_strategies/digest.rb:12:in `find_token_authenticatable'*/6263 SELECT 1 AS one FROM "geo_nodes" LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/lib/gitlab/geo.rb:95:in `block in enabled?'*/6264 UPDATE "personal_access_tokens" SET "last_used_at" = '2023-08-18 13:26:26.610702' WHERE "personal_access_tokens"."id" = 773 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/services/personal_access_tokens/last_used_service.rb:15:in `execute'*/6265 SELECT "users".* FROM "users" WHERE "users"."id" = 1663 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/auth/auth_finders.rb:133:in `find_user_from_web_access_token'*/6266 SELECT "namespaces"."id" AS t0_r0, "namespaces"."name" AS t0_r1, "namespaces"."path" AS t0_r2, "namespaces"."owner_id" AS t0_r3, "namespaces"."created_at" AS t0_r4, "namespaces"."updated_at" AS t0_r5, "namespaces"."type" AS t0_r6, "namespaces"."description" AS t0_r7, "namespaces"."avatar" AS t0_r8, "namespaces"."membership_lock" AS t0_r9, "namespaces"."share_with_group_lock" AS t0_r10, "namespaces"."visibility_level" AS t0_r11, "namespaces"."request_access_enabled" AS t0_r12, "namespaces"."ldap_sync_status" AS t0_r13, "namespaces"."ldap_sync_error" AS t0_r14, "namespaces"."ldap_sync_last_update_at" AS t0_r15, "namespaces"."ldap_sync_last_successful_update_at" AS t0_r16, "namespaces"."ldap_sync_last_sync_at" AS t0_r17, "namespaces"."description_html" AS t0_r18, "namespaces"."lfs_enabled" AS t0_r19, "namespaces"."parent_id" AS t0_r20, "namespaces"."shared_runners_minutes_limit" AS t0_r21, "namespaces"."repository_size_limit" AS t0_r22, "namespaces"."require_two_factor_authentication" AS t0_r23, "namespaces"."two_factor_grace_period" AS t0_r24, "namespaces"."cached_markdown_version" AS t0_r25, "namespaces"."project_creation_level" AS t0_r26, "namespaces"."runners_token" AS t0_r27, "namespaces"."file_template_project_id" AS t0_r28, "namespaces"."saml_discovery_token" AS t0_r29, "namespaces"."runners_token_encrypted" AS t0_r30, "namespaces"."custom_project_templates_group_id" AS t0_r31, "namespaces"."auto_devops_enabled" AS t0_r32, "namespaces"."extra_shared_runners_minutes_limit" AS t0_r33, "namespaces"."last_ci_minutes_notification_at" AS t0_r34, "namespaces"."last_ci_minutes_usage_notification_level" AS t0_r35, "namespaces"."subgroup_creation_level" AS t0_r36, "namespaces"."emails_disabled" AS t0_r37, "namespaces"."max_pages_size" AS t0_r38, "namespaces"."max_artifacts_size" AS t0_r39, "namespaces"."mentions_disabled" AS t0_r40, "namespaces"."default_branch_protection" AS t0_r41, "namespaces"."unlock_membership_to_ldap" AS t0_r42, "namespaces"."max_personal_access_token_lifetime" AS t0_r43, "namespaces"."push_rule_id" AS t0_r44, "namespaces"."shared_runners_enabled" AS t0_r45, "namespaces"."allow_descendants_override_disabled_shared_runners" AS t0_r46, "namespaces"."traversal_ids" AS t0_r47, "namespaces"."organization_id" AS t0_r48, "routes"."id" AS t1_r0, "routes"."source_id" AS t1_r1, "routes"."source_type" AS t1_r2, "routes"."path" AS t1_r3, "routes"."created_at" AS t1_r4, "routes"."updated_at" AS t1_r5, "routes"."name" AS t1_r6, "routes"."namespace_id" AS t1_r7 FROM "namespaces" LEFT OUTER JOIN "routes" ON "routes"."source_type" = 'Namespace' AND "routes"."source_id" = "namespaces"."id" WHERE "namespaces"."type" = 'Group' AND ((LOWER(routes.path) = LOWER('group42')) OR (LOWER(routes.path) = LOWER('group43'))) /* allow_cross_joins_across_databases */ /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/loaders/full_path_model_loader.rb:26:in `block in find'*/6267 SELECT "saml_providers".* FROM "saml_providers" WHERE "saml_providers"."group_id" = 2518 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/models/ee/group.rb:364:in `block in root_saml_provider'*/6268 SELECT "namespaces".* FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND "namespaces"."id" = 2518 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/project.rb:2216:in `visibility_level_allowed_by_group?'*/6269 SELECT "namespaces".* FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND "namespaces"."id" = 2518 LIMIT 16270 SELECT "namespaces".* FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND "namespaces"."id" = 2518 LIMIT 16271 SELECT "uploads".* FROM "uploads" WHERE "uploads"."uploader" = 'AvatarUploader' AND "uploads"."path" IN ('uploads/-/system/group/avatar/2518/banana_sample.gif', 'group/avatar/2518/banana_sample.gif') ORDER BY "uploads"."id" ASC LIMIT 1000 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/concerns/avatarable.rb:119:in `block in retrieve_upload_from_batch'*/6272 SELECT "custom_emoji".* FROM "custom_emoji" WHERE "custom_emoji"."namespace_id" = 2518 ORDER BY "custom_emoji"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6273 SELECT COUNT(*) FROM "custom_emoji" WHERE "custom_emoji"."namespace_id" = 2518 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6274 SELECT "group_crm_settings".* FROM "group_crm_settings" WHERE "group_crm_settings"."group_id" = 2518 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/group.rb:863:in `crm_enabled?'*/6275 SELECT "issues"."id", "issues"."title", "issues"."author_id", "issues"."project_id", "issues"."created_at", "issues"."updated_at", "issues"."description", "issues"."milestone_id", "issues"."iid", "issues"."updated_by_id", "issues"."weight", "issues"."confidential", "issues"."due_date", "issues"."moved_to_id", "issues"."lock_version", "issues"."title_html", "issues"."description_html", "issues"."time_estimate", "issues"."relative_position", "issues"."service_desk_reply_to", "issues"."cached_markdown_version", "issues"."last_edited_at", "issues"."last_edited_by_id", "issues"."discussion_locked", "issues"."closed_at", "issues"."closed_by_id", "issues"."state_id", "issues"."duplicated_to_id", "issues"."promoted_to_epic_id", "issues"."health_status", "issues"."external_key", "issues"."sprint_id", "issues"."blocking_issues_count", "issues"."upvotes_count", "issues"."work_item_type_id", "issues"."namespace_id", "issues"."start_date" FROM "issues" INNER JOIN "projects" ON "projects"."id" = "issues"."project_id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."namespace_id" = 2518 AND (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."issues_access_level" > 0 OR "project_features"."issues_access_level" IS NULL) AND "projects"."archived" = FALSE ORDER BY "issues"."created_at" DESC, "issues"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6276 SELECT SUM("issues"."weight") FROM "issues" INNER JOIN "projects" ON "projects"."id" = "issues"."project_id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."namespace_id" = 2518 AND (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."issues_access_level" > 0 OR "project_features"."issues_access_level" IS NULL) AND "projects"."archived" = FALSE /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/graphql/ee/types/issue_connection_type.rb:19:in `weight'*/6277 SELECT COUNT(*) FROM "issues" INNER JOIN "projects" ON "projects"."id" = "issues"."project_id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."namespace_id" = 2518 AND (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."issues_access_level" > 0 OR "project_features"."issues_access_level" IS NULL) AND "projects"."archived" = FALSE /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6278 SELECT "merge_requests".* FROM "merge_requests" INNER JOIN "projects" ON "projects"."id" = "merge_requests"."target_project_id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."namespace_id" = 2518 AND (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."merge_requests_access_level" > 0 OR "project_features"."merge_requests_access_level" IS NULL) AND "projects"."archived" = FALSE /* allow_cross_joins_across_databases */ ORDER BY "merge_requests"."created_at" DESC, "merge_requests"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6279 SELECT EXTRACT(epoch FROM SUM(AGE(merge_request_metrics.merged_at, merge_request_metrics.created_at))) FROM "merge_requests" INNER JOIN "projects" ON "projects"."id" = "merge_requests"."target_project_id" INNER JOIN "merge_request_metrics" ON "merge_request_metrics"."merge_request_id" = "merge_requests"."id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."namespace_id" = 2518 AND (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."merge_requests_access_level" > 0 OR "project_features"."merge_requests_access_level" IS NULL) AND "projects"."archived" = FALSE AND "merge_requests"."target_project_id" = "merge_request_metrics"."target_project_id" AND "merge_request_metrics"."merged_at" > "merge_request_metrics"."created_at" /* allow_cross_joins_across_databases */ LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/merge_request.rb:479:in `total_time_to_merge'*/6280 SELECT COUNT(*) FROM "merge_requests" INNER JOIN "projects" ON "projects"."id" = "merge_requests"."target_project_id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."namespace_id" = 2518 AND (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."merge_requests_access_level" > 0 OR "project_features"."merge_requests_access_level" IS NULL) AND "projects"."archived" = FALSE /* allow_cross_joins_across_databases */ /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6281 SELECT "ci_group_variables"."environment_scope" FROM "ci_group_variables" WHERE "ci_group_variables"."group_id" = 2518 GROUP BY "ci_group_variables"."environment_scope" ORDER BY "ci_group_variables"."environment_scope" ASC LIMIT 100 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:ci,line:/app/models/ci/group_variable.rb:37:in `block in <class:GroupVariable>'*/6282 SELECT "milestones".* FROM ((SELECT "milestones".* FROM "milestones" WHERE 1=0)6283 UNION ALL6284 (SELECT "milestones".* FROM "milestones" WHERE "milestones"."group_id" = 2518)) milestones ORDER BY "milestones"."due_date" ASC NULLS LAST, "milestones"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6285 SELECT "boards".* FROM "boards" WHERE "boards"."group_id" = 2518 AND "boards"."id" IN (SELECT "boards"."id" FROM "boards" WHERE "boards"."group_id" = 2518 ORDER BY LOWER("boards"."name") ASC, "boards"."id" ASC LIMIT 1) ORDER BY "boards"."id" DESC LIMIT 2001 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6286 SELECT "board_group_recent_visits".* FROM "board_group_recent_visits" WHERE "board_group_recent_visits"."user_id" = 1663 AND "board_group_recent_visits"."group_id" = 2518 ORDER BY "board_group_recent_visits"."updated_at" DESC LIMIT 4 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/concerns/board_recent_visit.rb:21:in `latest'*/6287 SELECT "members".* FROM (SELECT DISTINCT ON (user_id, invite_email) * FROM "members" WHERE "members"."type" = 'GroupMember' AND "members"."source_type" = 'Namespace' AND "members"."requested_at" IS NULL AND "members"."source_id" IN (SELECT "namespaces"."id" FROM ((SELECT "namespaces".* FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND "namespaces"."id" = 2518)) namespaces WHERE "namespaces"."type" = 'Group') AND (members.access_level > 5) ORDER BY user_id, invite_email, access_level DESC, expires_at DESC, created_at ASC) members WHERE "members"."type" = 'GroupMember' ORDER BY "members"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6288 SELECT "namespaces".* FROM "namespaces" WHERE "namespaces"."id" = 2518 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/members/group_member.rb:40:in `group'*/6289 SELECT "container_repositories".* FROM "container_repositories" INNER JOIN (SELECT "projects"."id" FROM "projects" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}'))) AND ("project_features"."container_registry_access_level" > 0 OR "project_features"."container_registry_access_level" IS NULL)) projects on projects.id=container_repositories.project_id ORDER BY "container_repositories"."created_at" DESC, "container_repositories"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6290 SELECT COUNT(*) FROM "container_repositories" INNER JOIN "projects" ON "container_repositories"."project_id" = "projects"."id" WHERE "projects"."namespace_id" = 2518 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/group_type.rb:294:in `container_repositories_count'*/6291 SELECT "packages_packages".* FROM "packages_packages" WHERE "packages_packages"."project_id" IN (SELECT "projects"."id" FROM "projects" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}'))) AND (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."repository_access_level" > 0 OR "project_features"."repository_access_level" IS NULL)) AND "packages_packages"."version" IS NOT NULL AND "packages_packages"."package_type" != 12 AND "packages_packages"."status" IN (0, 3) ORDER BY "packages_packages"."created_at" DESC, "packages_packages"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6292 SELECT COUNT(*) FROM "packages_packages" WHERE "packages_packages"."project_id" IN (SELECT "projects"."id" FROM "projects" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}'))) AND (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."repository_access_level" > 0 OR "project_features"."repository_access_level" IS NULL)) AND "packages_packages"."version" IS NOT NULL AND "packages_packages"."package_type" != 12 AND "packages_packages"."status" IN (0, 3) /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6293 SELECT "dependency_proxy_group_settings".* FROM "dependency_proxy_group_settings" WHERE "dependency_proxy_group_settings"."group_id" = 2518 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/group.rb:855:in `dependency_proxy_setting'*/6294 SELECT "dependency_proxy_manifests".* FROM "dependency_proxy_manifests" WHERE "dependency_proxy_manifests"."group_id" = 2518 ORDER BY "dependency_proxy_manifests"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6295 SELECT "dependency_proxy_blobs".* FROM "dependency_proxy_blobs" WHERE "dependency_proxy_blobs"."group_id" = 2518 ORDER BY "dependency_proxy_blobs"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6296 SELECT COUNT(*) FROM "dependency_proxy_manifests" WHERE "dependency_proxy_manifests"."group_id" = 2518 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/group_type.rb:302:in `dependency_proxy_image_count'*/6297 SELECT COUNT(*) FROM "dependency_proxy_blobs" WHERE "dependency_proxy_blobs"."group_id" = 2518 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/group_type.rb:306:in `dependency_proxy_blob_count'*/6298 SELECT SUM("dependency_proxy_manifests"."size") FROM "dependency_proxy_manifests" WHERE "dependency_proxy_manifests"."group_id" = 2518 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/group_type.rb:320:in `dependency_proxy_total_size_bytes'*/6299 SELECT SUM("dependency_proxy_blobs"."size") FROM "dependency_proxy_blobs" WHERE "dependency_proxy_blobs"."group_id" = 2518 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/group_type.rb:320:in `dependency_proxy_total_size_bytes'*/6300 SELECT SUM("dependency_proxy_manifests"."size") FROM "dependency_proxy_manifests" WHERE "dependency_proxy_manifests"."group_id" = 25186301 SELECT SUM("dependency_proxy_blobs"."size") FROM "dependency_proxy_blobs" WHERE "dependency_proxy_blobs"."group_id" = 25186302 SELECT SUM("dependency_proxy_manifests"."size") FROM "dependency_proxy_manifests" WHERE "dependency_proxy_manifests"."group_id" = 25186303 SELECT SUM("dependency_proxy_blobs"."size") FROM "dependency_proxy_blobs" WHERE "dependency_proxy_blobs"."group_id" = 25186304 SELECT "dependency_proxy_image_ttl_group_policies".* FROM "dependency_proxy_image_ttl_group_policies" WHERE "dependency_proxy_image_ttl_group_policies"."group_id" = 2518 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/group.rb:851:in `dependency_proxy_image_ttl_policy'*/6305 SELECT MAX("members"."access_level") AS "maximum_access_level", "hierarchy"."id" AS "hierarchy_id" FROM ((SELECT "members"."id", "members"."access_level", "members"."source_id", "members"."source_type", "members"."user_id", "members"."notification_level", "members"."type", "members"."created_at", "members"."updated_at", "members"."created_by_id", "members"."invite_email", "members"."invite_token", "members"."invite_accepted_at", "members"."requested_at", "members"."expires_at", "members"."ldap", "members"."override", "members"."state", "members"."invite_email_success", "members"."member_namespace_id", "members"."member_role_id", "members"."expiry_notified_at" FROM "members" LEFT OUTER JOIN "users" ON "users"."id" = "members"."user_id" WHERE "members"."type" = 'GroupMember' AND "members"."source_type" = 'Namespace' AND "users"."state" = 'active' AND "members"."state" = 0 AND "members"."requested_at" IS NULL AND "members"."invite_token" IS NULL AND (members.access_level > 5) AND "members"."user_id" = 1663 /* allow_cross_joins_across_databases */)6306 UNION6307 (SELECT "members"."id", LEAST("group_group_links"."group_access", "members"."access_level") AS access_level, "group_group_links"."shared_group_id" AS source_id, "members"."source_type", "members"."user_id", "members"."notification_level", "members"."type", "members"."created_at", "members"."updated_at", "members"."created_by_id", "members"."invite_email", "members"."invite_token", "members"."invite_accepted_at", "members"."requested_at", "members"."expires_at", "members"."ldap", "members"."override", "members"."state", "members"."invite_email_success", "members"."member_namespace_id", "members"."member_role_id", "members"."expiry_notified_at" FROM "members" LEFT OUTER JOIN "users" ON "users"."id" = "members"."user_id" INNER JOIN group_group_links ON members.source_id = group_group_links.shared_with_group_id WHERE "members"."type" = 'GroupMember' AND "members"."source_type" = 'Namespace' AND "users"."state" = 'active' AND "members"."state" = 0 AND "members"."requested_at" IS NULL AND "members"."invite_token" IS NULL AND (members.access_level > 5) AND "members"."user_id" = 1663 /* allow_cross_joins_across_databases */)) members INNER JOIN (SELECT id, unnest(traversal_ids) as traversal_id FROM "namespaces" WHERE "namespaces"."id" = 2518) as hierarchy ON members.source_id = hierarchy.traversal_id WHERE "members"."type" = 'GroupMember' AND "members"."source_type" = 'Namespace' GROUP BY "hierarchy"."id" /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/preloaders/user_max_access_level_in_groups_preloader.rb:40:in `preload_with_traversal_ids'*/6308 WITH "base_ancestors_cte" AS MATERIALIZED (SELECT "namespaces"."traversal_ids" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND "namespaces"."id" = 2518) SELECT "namespaces"."id", "namespaces"."parent_id", "gitlab_subscriptions"."hosted_plan_id" FROM "namespaces" INNER JOIN (SELECT DISTINCT unnest("base_ancestors_cte"."traversal_ids") FROM base_ancestors_cte) AS ancestors(ancestor_id) ON namespaces.id = ancestors.ancestor_id LEFT OUTER JOIN gitlab_subscriptions ON gitlab_subscriptions.namespace_id=namespaces.id WHERE "namespaces"."type" = 'Group' /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/lib/gitlab/group_plans_preloader.rb:24:in `preload'*/6309 SELECT "labels".* FROM ((SELECT "labels".* FROM "labels" WHERE "labels"."group_id" = 2518)6310 UNION6311 (SELECT "labels".* FROM "labels" WHERE "labels"."group_id" IN (SELECT "projects"."namespace_id" FROM "projects" INNER JOIN "namespaces" ON "namespaces"."id" = "projects"."namespace_id" WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND "projects"."pending_delete" = FALSE AND "projects"."archived" = FALSE AND "projects"."hidden" = FALSE AND "projects"."namespace_id" = 2518 AND "namespaces"."type" = 'Group'))6312 UNION6313 (SELECT "labels".* FROM "labels" WHERE "labels"."project_id" IN (SELECT "projects"."id" FROM ((SELECT "projects"."id" FROM "projects" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."id" IN (SELECT "projects"."id" FROM "projects" WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND "projects"."pending_delete" = FALSE AND "projects"."archived" = FALSE AND "projects"."hidden" = FALSE AND "projects"."namespace_id" = 2518) AND ("project_features"."issues_access_level" > 0 OR "project_features"."issues_access_level" IS NULL))6314 UNION6315 (SELECT "projects"."id" FROM "projects" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."id" IN (SELECT "projects"."id" FROM "projects" WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND "projects"."pending_delete" = FALSE AND "projects"."archived" = FALSE AND "projects"."hidden" = FALSE AND "projects"."namespace_id" = 2518) AND ("project_features"."merge_requests_access_level" > 0 OR "project_features"."merge_requests_access_level" IS NULL))) projects WHERE "projects"."id" IN (SELECT "projects"."id" FROM "projects" WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND "projects"."pending_delete" = FALSE AND "projects"."archived" = FALSE AND "projects"."hidden" = FALSE AND "projects"."namespace_id" = 2518)))) labels ORDER BY "labels"."title" ASC, "labels"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6316 SELECT COUNT(*) FROM ((SELECT "labels".* FROM "labels" WHERE "labels"."group_id" = 2518)6317 UNION6318 (SELECT "labels".* FROM "labels" WHERE "labels"."group_id" IN (SELECT "projects"."namespace_id" FROM "projects" INNER JOIN "namespaces" ON "namespaces"."id" = "projects"."namespace_id" WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND "projects"."pending_delete" = FALSE AND "projects"."archived" = FALSE AND "projects"."hidden" = FALSE AND "projects"."namespace_id" = 2518 AND "namespaces"."type" = 'Group'))6319 UNION6320 (SELECT "labels".* FROM "labels" WHERE "labels"."project_id" IN (SELECT "projects"."id" FROM ((SELECT "projects"."id" FROM "projects" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."id" IN (SELECT "projects"."id" FROM "projects" WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND "projects"."pending_delete" = FALSE AND "projects"."archived" = FALSE AND "projects"."hidden" = FALSE AND "projects"."namespace_id" = 2518) AND ("project_features"."issues_access_level" > 0 OR "project_features"."issues_access_level" IS NULL))6321 UNION6322 (SELECT "projects"."id" FROM "projects" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."id" IN (SELECT "projects"."id" FROM "projects" WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND "projects"."pending_delete" = FALSE AND "projects"."archived" = FALSE AND "projects"."hidden" = FALSE AND "projects"."namespace_id" = 2518) AND ("project_features"."merge_requests_access_level" > 0 OR "project_features"."merge_requests_access_level" IS NULL))) projects WHERE "projects"."id" IN (SELECT "projects"."id" FROM "projects" WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND "projects"."pending_delete" = FALSE AND "projects"."archived" = FALSE AND "projects"."hidden" = FALSE AND "projects"."namespace_id" = 2518)))) labels /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6323 SELECT "namespaces".* FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND "namespaces"."id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}')) AND "namespaces"."id" != 2518) /* allow_cross_joins_across_databases */ ORDER BY "namespaces"."name" ASC, "namespaces"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6324 SELECT "ci_group_variables".* FROM "ci_group_variables" WHERE "ci_group_variables"."group_id" = 2518 ORDER BY "ci_group_variables"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:ci,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6325 SELECT "plans".* FROM "plans" WHERE "plans"."name" = 'default' LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/plan.rb:17:in `block in default'*/6326 SELECT "plan_limits"."id", "plan_limits"."plan_id", "plan_limits"."ci_pipeline_size", "plan_limits"."ci_active_jobs", "plan_limits"."project_hooks", "plan_limits"."group_hooks", "plan_limits"."ci_project_subscriptions", "plan_limits"."ci_pipeline_schedules", "plan_limits"."offset_pagination_limit", "plan_limits"."ci_instance_level_variables", "plan_limits"."storage_size_limit", "plan_limits"."ci_max_artifact_size_lsif", "plan_limits"."ci_max_artifact_size_archive", "plan_limits"."ci_max_artifact_size_metadata", "plan_limits"."ci_max_artifact_size_trace", "plan_limits"."ci_max_artifact_size_junit", "plan_limits"."ci_max_artifact_size_sast", "plan_limits"."ci_max_artifact_size_dependency_scanning", "plan_limits"."ci_max_artifact_size_container_scanning", "plan_limits"."ci_max_artifact_size_dast", "plan_limits"."ci_max_artifact_size_codequality", "plan_limits"."ci_max_artifact_size_license_management", "plan_limits"."ci_max_artifact_size_license_scanning", "plan_limits"."ci_max_artifact_size_performance", "plan_limits"."ci_max_artifact_size_metrics", "plan_limits"."ci_max_artifact_size_metrics_referee", "plan_limits"."ci_max_artifact_size_network_referee", "plan_limits"."ci_max_artifact_size_dotenv", "plan_limits"."ci_max_artifact_size_cobertura", "plan_limits"."ci_max_artifact_size_terraform", "plan_limits"."ci_max_artifact_size_accessibility", "plan_limits"."ci_max_artifact_size_cluster_applications", "plan_limits"."ci_max_artifact_size_secret_detection", "plan_limits"."ci_max_artifact_size_requirements", "plan_limits"."ci_max_artifact_size_coverage_fuzzing", "plan_limits"."ci_max_artifact_size_browser_performance", "plan_limits"."ci_max_artifact_size_load_performance", "plan_limits"."ci_needs_size_limit", "plan_limits"."conan_max_file_size", "plan_limits"."maven_max_file_size", "plan_limits"."npm_max_file_size", "plan_limits"."nuget_max_file_size", "plan_limits"."pypi_max_file_size", "plan_limits"."generic_packages_max_file_size", "plan_limits"."golang_max_file_size", "plan_limits"."debian_max_file_size", "plan_limits"."project_feature_flags", "plan_limits"."ci_max_artifact_size_api_fuzzing", "plan_limits"."ci_pipeline_deployments", "plan_limits"."pull_mirror_interval_seconds", "plan_limits"."daily_invites", "plan_limits"."rubygems_max_file_size", "plan_limits"."terraform_module_max_file_size", "plan_limits"."helm_max_file_size", "plan_limits"."ci_registered_group_runners", "plan_limits"."ci_registered_project_runners", "plan_limits"."ci_daily_pipeline_schedule_triggers", "plan_limits"."ci_max_artifact_size_cluster_image_scanning", "plan_limits"."ci_jobs_trace_size_limit", "plan_limits"."pages_file_entries", "plan_limits"."dast_profile_schedules", "plan_limits"."external_audit_event_destinations", "plan_limits"."dotenv_variables", "plan_limits"."dotenv_size", "plan_limits"."pipeline_triggers", "plan_limits"."project_ci_secure_files", "plan_limits"."repository_size", "plan_limits"."security_policy_scan_execution_schedules", "plan_limits"."web_hook_calls_mid", "plan_limits"."web_hook_calls_low", "plan_limits"."project_ci_variables", "plan_limits"."group_ci_variables", "plan_limits"."ci_max_artifact_size_cyclonedx", "plan_limits"."rpm_max_file_size", "plan_limits"."ci_max_artifact_size_requirements_v2", "plan_limits"."pipeline_hierarchy_size", "plan_limits"."enforcement_limit", "plan_limits"."notification_limit", "plan_limits"."dashboard_limit_enabled_at", "plan_limits"."web_hook_calls", "plan_limits"."project_access_token_limit", "plan_limits"."google_cloud_logging_configurations", "plan_limits"."ml_model_max_file_size", "plan_limits"."limits_history", "plan_limits"."updated_at", "plan_limits"."ci_max_artifact_size_annotations", "plan_limits"."ci_job_annotations_size", "plan_limits"."ci_job_annotations_num", "plan_limits"."file_size_limit_mb" FROM "plan_limits" WHERE "plan_limits"."plan_id" = 396 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/plan.rb:30:in `actual_limits'*/6327 SELECT "ci_runners".* FROM ((SELECT "ci_runners".* FROM "ci_runners" INNER JOIN "ci_runner_namespaces" ON "ci_runner_namespaces"."runner_id" = "ci_runners"."id" WHERE "ci_runner_namespaces"."namespace_id" IN (SELECT "ci_namespace_mirrors"."namespace_id" FROM "ci_namespace_mirrors" WHERE (traversal_ids @> ARRAY[2518]::int[])))6328 UNION ALL6329 (SELECT DISTINCT "ci_runners".* FROM "ci_runners" INNER JOIN "ci_runner_projects" ON "ci_runner_projects"."runner_id" = "ci_runners"."id" WHERE "ci_runner_projects"."project_id" IN (SELECT "ci_project_mirrors"."project_id" FROM "ci_project_mirrors" WHERE "ci_project_mirrors"."namespace_id" IN (SELECT "ci_namespace_mirrors"."namespace_id" FROM "ci_namespace_mirrors" WHERE (traversal_ids @> ARRAY[2518]::int[]))))) ci_runners ORDER BY "ci_runners"."created_at" DESC, "ci_runners"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:ci,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6330 SELECT COUNT(*) FROM ((SELECT "ci_runners".* FROM "ci_runners" INNER JOIN "ci_runner_namespaces" ON "ci_runner_namespaces"."runner_id" = "ci_runners"."id" WHERE "ci_runner_namespaces"."namespace_id" IN (SELECT "ci_namespace_mirrors"."namespace_id" FROM "ci_namespace_mirrors" WHERE (traversal_ids @> ARRAY[2518]::int[])))6331 UNION ALL6332 (SELECT DISTINCT "ci_runners".* FROM "ci_runners" INNER JOIN "ci_runner_projects" ON "ci_runner_projects"."runner_id" = "ci_runners"."id" WHERE "ci_runner_projects"."project_id" IN (SELECT "ci_project_mirrors"."project_id" FROM "ci_project_mirrors" WHERE "ci_project_mirrors"."namespace_id" IN (SELECT "ci_namespace_mirrors"."namespace_id" FROM "ci_namespace_mirrors" WHERE (traversal_ids @> ARRAY[2518]::int[]))))) ci_runners /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:ci,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6333 SELECT "work_item_types".* FROM "work_item_types" WHERE "work_item_types"."namespace_id" IS NULL ORDER BY LOWER("work_item_types"."name") ASC, "work_item_types"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6334 SELECT * FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "projects"."id" FROM "projects" WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}')))), "recursive_keyset_cte" AS ((SELECT NULL::releases AS records, array_cte_id_array, releases_released_at_array, releases_id_array, 0::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("releases"."released_at") AS releases_released_at_array, ARRAY_AGG("releases"."id") AS releases_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "releases"."released_at" AS released_at, "releases"."id" AS id FROM "releases" WHERE "releases"."project_id" = "array_cte"."id" ORDER BY "releases"."released_at" DESC, "releases"."id" DESC LIMIT 1) releases ON TRUE WHERE "releases"."released_at" IS NOT NULL AND "releases"."id" IS NOT NULL) array_scope_lateral_query LIMIT 1)6335 UNION ALL6336 (SELECT (SELECT releases FROM "releases" WHERE "releases"."id" = recursive_keyset_cte.releases_id_array[position] LIMIT 1), array_cte_id_array, recursive_keyset_cte.releases_released_at_array[:position_query.position-1]||next_cursor_values.released_at||recursive_keyset_cte.releases_released_at_array[position_query.position+1:], recursive_keyset_cte.releases_id_array[:position_query.position-1]||next_cursor_values.id||recursive_keyset_cte.releases_id_array[position_query.position+1:], recursive_keyset_cte.count + 1 FROM recursive_keyset_cte,6337 LATERAL (SELECT released_at, id, position FROM UNNEST(releases_released_at_array, releases_id_array) WITH ORDINALITY AS u(released_at, id, position) WHERE released_at IS NOT NULL AND id IS NOT NULL ORDER BY 1 DESC, 2 DESC LIMIT 1) AS position_query,6338 LATERAL (SELECT "record"."released_at", "record"."id" FROM (VALUES (NULL, NULL)) AS nulls LEFT JOIN (SELECT "releases"."released_at" AS released_at, "releases"."id" AS id FROM "releases" WHERE "releases"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND (("releases"."released_at", "releases"."id") < (recursive_keyset_cte.releases_released_at_array[position], recursive_keyset_cte.releases_id_array[position])) ORDER BY "releases"."released_at" DESC, "releases"."id" DESC LIMIT 1) record ON TRUE LIMIT 1) AS next_cursor_values6339 )) SELECT (records).* FROM "recursive_keyset_cte" AS "releases" WHERE (count <> 0)) releases LIMIT 100 OFFSET 0 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/connection_redaction.rb:23:in `block in nodes'*/6340 SELECT COUNT(*) FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "projects"."id" FROM "projects" WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}')))), "recursive_keyset_cte" AS ((SELECT NULL::releases AS records, array_cte_id_array, releases_released_at_array, releases_id_array, 0::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("releases"."released_at") AS releases_released_at_array, ARRAY_AGG("releases"."id") AS releases_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "releases"."released_at" AS released_at, "releases"."id" AS id FROM "releases" WHERE "releases"."project_id" = "array_cte"."id" ORDER BY "releases"."released_at" DESC, "releases"."id" DESC LIMIT 1) releases ON TRUE WHERE "releases"."released_at" IS NOT NULL AND "releases"."id" IS NOT NULL) array_scope_lateral_query LIMIT 1)6341 UNION ALL6342 (SELECT (SELECT releases FROM "releases" WHERE "releases"."id" = recursive_keyset_cte.releases_id_array[position] LIMIT 1), array_cte_id_array, recursive_keyset_cte.releases_released_at_array[:position_query.position-1]||next_cursor_values.released_at||recursive_keyset_cte.releases_released_at_array[position_query.position+1:], recursive_keyset_cte.releases_id_array[:position_query.position-1]||next_cursor_values.id||recursive_keyset_cte.releases_id_array[position_query.position+1:], recursive_keyset_cte.count + 1 FROM recursive_keyset_cte,6343 LATERAL (SELECT released_at, id, position FROM UNNEST(releases_released_at_array, releases_id_array) WITH ORDINALITY AS u(released_at, id, position) WHERE released_at IS NOT NULL AND id IS NOT NULL ORDER BY 1 DESC, 2 DESC LIMIT 1) AS position_query,6344 LATERAL (SELECT "record"."released_at", "record"."id" FROM (VALUES (NULL, NULL)) AS nulls LEFT JOIN (SELECT "releases"."released_at" AS released_at, "releases"."id" AS id FROM "releases" WHERE "releases"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND (("releases"."released_at", "releases"."id") < (recursive_keyset_cte.releases_released_at_array[position], recursive_keyset_cte.releases_id_array[position])) ORDER BY "releases"."released_at" DESC, "releases"."id" DESC LIMIT 1) record ON TRUE LIMIT 1) AS next_cursor_values6345 )) SELECT (records).* FROM "recursive_keyset_cte" AS "releases" WHERE (count <> 0)) releases /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6346 SELECT "issues"."id", "issues"."title", "issues"."author_id", "issues"."project_id", "issues"."created_at", "issues"."updated_at", "issues"."description", "issues"."milestone_id", "issues"."iid", "issues"."updated_by_id", "issues"."weight", "issues"."confidential", "issues"."due_date", "issues"."moved_to_id", "issues"."lock_version", "issues"."title_html", "issues"."description_html", "issues"."time_estimate", "issues"."relative_position", "issues"."service_desk_reply_to", "issues"."cached_markdown_version", "issues"."last_edited_at", "issues"."last_edited_by_id", "issues"."discussion_locked", "issues"."closed_at", "issues"."closed_by_id", "issues"."state_id", "issues"."duplicated_to_id", "issues"."promoted_to_epic_id", "issues"."health_status", "issues"."external_key", "issues"."sprint_id", "issues"."blocking_issues_count", "issues"."upvotes_count", "issues"."work_item_type_id", "issues"."namespace_id", "issues"."start_date" FROM "issues" WHERE "issues"."namespace_id" = 2518 ORDER BY "issues"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6347 SELECT "users".* FROM "users" WHERE "users"."id" IN (WITH "group_hierarchy" AS MATERIALIZED (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}') OR 1=0)), "descendant_projects" AS MATERIALIZED (SELECT "projects"."id" FROM "projects" WHERE "projects"."namespace_id" IN (SELECT namespaces.traversal_ids[array_length(namespaces.traversal_ids, 1)] AS id FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}')))) SELECT "members"."user_id" FROM ((SELECT "members"."user_id" FROM "members" WHERE "members"."type" = 'GroupMember' AND "members"."source_type" = 'Namespace' AND "members"."source_id" IN (SELECT "id" FROM "group_hierarchy") AND "members"."state" = 0 AND "members"."requested_at" IS NULL AND "members"."invite_token" IS NULL AND (members.access_level > 5))6348 UNION ALL6349 (SELECT "members"."user_id" FROM "members" WHERE "members"."type" = 'GroupMember' AND "members"."source_type" = 'Namespace' AND "members"."source_id" IN (SELECT "group_group_links"."shared_with_group_id" FROM "group_group_links" WHERE "group_group_links"."shared_group_id" IN (SELECT "id" FROM "group_hierarchy")) AND "members"."state" = 0 AND "members"."requested_at" IS NULL AND "members"."invite_token" IS NULL AND (members.access_level > 5))6350 UNION ALL6351 (SELECT "members"."user_id" FROM "members" WHERE "members"."type" IN ('ProjectMember', 'ProjectNamespaceMember') AND "members"."source_type" = 'Project' AND "members"."source_id" IN (SELECT "id" FROM "descendant_projects") AND "members"."state" = 0 AND "members"."requested_at" IS NULL AND "members"."invite_token" IS NULL AND (members.access_level > 5))6352 UNION ALL6353 (SELECT "members"."user_id" FROM "members" WHERE "members"."type" = 'GroupMember' AND "members"."source_type" = 'Namespace' AND "members"."source_id" IN (SELECT "project_group_links"."group_id" FROM "project_group_links" WHERE "project_group_links"."project_id" IN (SELECT "id" FROM "descendant_projects")) AND "members"."state" = 0 AND "members"."requested_at" IS NULL AND "members"."invite_token" IS NULL AND (members.access_level > 5))) members) AND "users"."state" = 'active' AND "users"."user_type" IN (0, 6, 4, 13) /* allow_cross_joins_across_databases */ ORDER BY "users"."name" ASC LIMIT 20 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/finders/autocomplete/users_finder.rb:76:in `limited_users'*/6354 SELECT "user_statuses".* FROM "user_statuses" WHERE "user_statuses"."user_id" = 1661 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/finders/autocomplete/users_finder.rb:108:in `preload_associations'*/6355 SELECT "user_details"."user_id", "user_details"."job_title", "user_details"."bio", "user_details"."webauthn_xid", "user_details"."provisioned_by_group_id", "user_details"."pronouns", "user_details"."pronunciation", "user_details"."registration_objective", "user_details"."phone", "user_details"."linkedin", "user_details"."twitter", "user_details"."skype", "user_details"."website_url", "user_details"."location", "user_details"."organization", "user_details"."password_last_changed_at", "user_details"."onboarding_step_url", "user_details"."discord", "user_details"."enterprise_group_id", "user_details"."enterprise_group_associated_at", "user_details"."email_reset_offered_at" FROM "user_details" WHERE "user_details"."user_id" = 1661 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/user.rb:2143:in `user_detail'*/6356 SELECT COUNT(*) FROM "projects" WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND "projects"."pending_delete" = FALSE AND "projects"."id" IN (SELECT "projects"."id" FROM "projects" INNER JOIN "users_star_projects" ON "projects"."id" = "users_star_projects"."project_id" WHERE "users_star_projects"."user_id" = 1661) AND "projects"."hidden" = FALSE /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6357 SELECT "namespaces".* FROM "namespaces" WHERE "namespaces"."owner_id" = 1661 AND "namespaces"."type" = 'User' LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/present/field_extension.rb:18:in `resolve'*/6358 SELECT "routes".* FROM "routes" WHERE "routes"."source_id" = 2502 AND "routes"."source_type" = 'Namespace' LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/concerns/routable.rb:155:in `full_attribute'*/6359 SELECT "namespace_limits".* FROM "namespace_limits" WHERE "namespace_limits"."namespace_id" = 2502 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/models/ee/namespace.rb:179:in `namespace_limit'*/6360 SELECT SUM((("project_statistics"."repository_size" + "project_statistics"."lfs_objects_size") - "projects"."repository_size_limit")) FROM "projects" INNER JOIN "project_statistics" ON "project_statistics"."project_id" = "projects"."id" WHERE "projects"."namespace_id" = 2502 AND "projects"."repository_size_limit" != 0 AND ("project_statistics"."repository_size" + "project_statistics"."lfs_objects_size") > "projects"."repository_size_limit" LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/models/ee/namespace.rb:265:in `block in total_repository_size_excess'*/6361 SELECT SUM(("project_statistics"."repository_size" + "project_statistics"."lfs_objects_size")) FROM "projects" INNER JOIN "project_statistics" ON "project_statistics"."project_id" = "projects"."id" WHERE "projects"."namespace_id" = 2502 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/models/ee/namespace.rb:279:in `block in total_repository_size'*/6362 SELECT COUNT(*) FROM "projects" INNER JOIN "project_statistics" ON "project_statistics"."project_id" = "projects"."id" WHERE "projects"."namespace_id" = 2502 AND "projects"."repository_size_limit" != 0 AND ("project_statistics"."repository_size" + "project_statistics"."lfs_objects_size") > "projects"."repository_size_limit" /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/models/ee/namespace.rb:271:in `block in repository_size_excess_project_count'*/6363 SELECT EXTRACT(epoch FROM SUM(AGE(merge_request_metrics.merged_at, merge_request_metrics.created_at))) FROM "merge_requests" INNER JOIN "projects" ON "projects"."id" = "merge_requests"."target_project_id" INNER JOIN "merge_request_metrics" ON "merge_request_metrics"."merge_request_id" = "merge_requests"."id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."merge_requests_access_level" > 0 OR "project_features"."merge_requests_access_level" IS NULL) AND "merge_requests"."author_id" = 1661 AND "merge_requests"."target_project_id" = "merge_request_metrics"."target_project_id" AND "merge_request_metrics"."merged_at" > "merge_request_metrics"."created_at" /* allow_cross_joins_across_databases */ LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/merge_request.rb:479:in `total_time_to_merge'*/6364 SELECT COUNT(*) FROM "merge_requests" INNER JOIN "projects" ON "projects"."id" = "merge_requests"."target_project_id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."merge_requests_access_level" > 0 OR "project_features"."merge_requests_access_level" IS NULL) AND "merge_requests"."author_id" = 1661 /* allow_cross_joins_across_databases */ /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6365 SELECT EXTRACT(epoch FROM SUM(AGE(merge_request_metrics.merged_at, merge_request_metrics.created_at))) FROM "merge_requests" INNER JOIN "projects" ON "projects"."id" = "merge_requests"."target_project_id" INNER JOIN "merge_request_metrics" ON "merge_request_metrics"."merge_request_id" = "merge_requests"."id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."merge_requests_access_level" > 0 OR "project_features"."merge_requests_access_level" IS NULL) AND EXISTS (SELECT "merge_request_assignees".* FROM "merge_request_assignees" WHERE "merge_request_assignees"."user_id" = 1661 AND (merge_request_id = merge_requests.id)) AND "merge_requests"."target_project_id" = "merge_request_metrics"."target_project_id" AND "merge_request_metrics"."merged_at" > "merge_request_metrics"."created_at" /* allow_cross_joins_across_databases */ LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/merge_request.rb:479:in `total_time_to_merge'*/6366 SELECT COUNT(*) FROM "merge_requests" INNER JOIN "projects" ON "projects"."id" = "merge_requests"."target_project_id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."merge_requests_access_level" > 0 OR "project_features"."merge_requests_access_level" IS NULL) AND EXISTS (SELECT "merge_request_assignees".* FROM "merge_request_assignees" WHERE "merge_request_assignees"."user_id" = 1661 AND (merge_request_id = merge_requests.id)) /* allow_cross_joins_across_databases */ /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6367 SELECT "users".* FROM "users" WHERE "users"."id" = 1661 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/finders/merge_requests_finder/params.rb:16:in `block in reviewer'*/6368 SELECT EXTRACT(epoch FROM SUM(AGE(merge_request_metrics.merged_at, merge_request_metrics.created_at))) FROM "merge_requests" INNER JOIN "projects" ON "projects"."id" = "merge_requests"."target_project_id" INNER JOIN "merge_request_metrics" ON "merge_request_metrics"."merge_request_id" = "merge_requests"."id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."merge_requests_access_level" > 0 OR "project_features"."merge_requests_access_level" IS NULL) AND EXISTS (SELECT true FROM "merge_request_reviewers" WHERE merge_request_id = merge_requests.id AND "merge_request_reviewers"."user_id" = 1661) AND "merge_requests"."target_project_id" = "merge_request_metrics"."target_project_id" AND "merge_request_metrics"."merged_at" > "merge_request_metrics"."created_at" /* allow_cross_joins_across_databases */ LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/merge_request.rb:479:in `total_time_to_merge'*/6369 SELECT COUNT(*) FROM "merge_requests" INNER JOIN "projects" ON "projects"."id" = "merge_requests"."target_project_id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."merge_requests_access_level" > 0 OR "project_features"."merge_requests_access_level" IS NULL) AND EXISTS (SELECT true FROM "merge_request_reviewers" WHERE merge_request_id = merge_requests.id AND "merge_request_reviewers"."user_id" = 1661) /* allow_cross_joins_across_databases */ /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6370 SELECT SUM("timelogs"."time_spent") FROM "timelogs" WHERE "timelogs"."user_id" = 1661 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/time_tracking/timelog_connection_type.rb:20:in `total_spent_time'*/6371 SELECT COUNT(*) FROM "timelogs" WHERE "timelogs"."user_id" = 1661 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6372 SELECT COUNT(*) FROM "saved_replies" WHERE "saved_replies"."user_id" = 1661 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6373 SELECT "user_preferences"."id", "user_preferences"."user_id", "user_preferences"."issue_notes_filter", "user_preferences"."merge_request_notes_filter", "user_preferences"."created_at", "user_preferences"."updated_at", "user_preferences"."epics_sort", "user_preferences"."roadmap_epics_state", "user_preferences"."epic_notes_filter", "user_preferences"."issues_sort", "user_preferences"."merge_requests_sort", "user_preferences"."roadmaps_sort", "user_preferences"."first_day_of_week", "user_preferences"."timezone", "user_preferences"."time_display_relative", "user_preferences"."projects_sort", "user_preferences"."show_whitespace_in_diffs", "user_preferences"."sourcegraph_enabled", "user_preferences"."setup_for_company", "user_preferences"."render_whitespace_in_code", "user_preferences"."tab_width", "user_preferences"."view_diffs_file_by_file", "user_preferences"."gitpod_enabled", "user_preferences"."markdown_surround_selection", "user_preferences"."diffs_deletion_color", "user_preferences"."diffs_addition_color", "user_preferences"."markdown_automatic_lists", "user_preferences"."use_new_navigation", "user_preferences"."achievements_enabled", "user_preferences"."pinned_nav_items", "user_preferences"."pass_user_identities_to_ci_jwt", "user_preferences"."enabled_following", "user_preferences"."visibility_pipeline_id_type", "user_preferences"."project_shortcut_buttons", "user_preferences"."enabled_zoekt" FROM "user_preferences" WHERE "user_preferences"."user_id" = 1661 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/user.rb:2139:in `user_preference'*/6374 SELECT COUNT(*) FROM "user_achievements" WHERE "user_achievements"."user_id" = 1661 AND "user_achievements"."revoked_by_user_id" IS NULL /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6375 SELECT "sprints".* FROM "sprints" WHERE "sprints"."group_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND "namespaces"."id" = 2518) ORDER BY "sprints"."due_date" ASC, "sprints"."title" ASC, "sprints"."id" ASC LIMIT 100 OFFSET 0 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/connection_redaction.rb:23:in `block in nodes'*/6376 SELECT "iterations_cadences".* FROM "iterations_cadences" WHERE "iterations_cadences"."group_id" = 2518 ORDER BY "iterations_cadences"."title" ASC LIMIT 100 OFFSET 0 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/connection_redaction.rb:23:in `block in nodes'*/6377 SELECT "vulnerability_reads".* FROM "vulnerability_reads" WHERE "vulnerability_reads"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}'))) ORDER BY "vulnerability_reads"."severity" DESC, "vulnerability_reads"."vulnerability_id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/unnested_in_filters/dsl.rb:62:in `load'*/6378 SELECT DISTINCT ON ("vulnerability_scanners"."external_id", "report_types"."report_type") "vulnerability_scanners".*, "report_types"."report_type" AS "report_type" FROM "vulnerability_scanners" JOIN LATERAL (SELECT "vulnerability_occurrences"."report_type" FROM "vulnerability_occurrences" WHERE "vulnerability_occurrences"."scanner_id" = "vulnerability_scanners"."id" LIMIT 1) report_types ON true WHERE "vulnerability_scanners"."project_id" IN (SELECT "projects"."id" FROM "projects" WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}'))) AND "projects"."archived" = FALSE AND "projects"."pending_delete" = FALSE) ORDER BY "vulnerability_scanners"."external_id" ASC, "report_types"."report_type" ASC /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/graphql/resolvers/vulnerabilities/scanners_resolver.rb:14:in `map'*/6379 SELECT COUNT(*) FROM "releases" INNER JOIN "projects" ON "projects"."id" = "releases"."project_id" WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}'))) /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/models/ee/group.rb:650:in `releases_count'*/6380 SELECT (6381 COUNT(*) FILTER (WHERE EXISTS (SELECT 1 FROM releases WHERE releases.project_id = projects.id)) * 100.0 / GREATEST(COUNT(*), 1)6382 )::integer AS releases_percentage6383 FROM "projects" WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}'))) /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/models/ee/group.rb:660:in `releases_percentage'*/6384 SELECT "users"."id" FROM "users" WHERE "users"."id" IN (SELECT "members"."user_id" FROM "members" LEFT OUTER JOIN "users" ON "users"."id" = "members"."user_id" WHERE "members"."type" = 'GroupMember' AND "members"."source_type" = 'Namespace' AND "users"."state" = 'active' AND "members"."state" = 0 AND "members"."requested_at" IS NULL AND "members"."invite_token" IS NULL AND (members.access_level > 5) AND "members"."source_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}'))) AND "members"."user_id" NOT IN (SELECT "namespace_bans"."user_id" FROM "namespace_bans" WHERE "namespace_bans"."namespace_id" = 2518) /* allow_cross_joins_across_databases */) AND "users"."user_type" IN (0, 4, 5) /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/finders/namespaces/billed_users_finder.rb:34:in `block in calculate_user_ids'*/6385 SELECT "users"."id" FROM "users" WHERE "users"."id" IN (SELECT "members"."user_id" FROM "members" WHERE "members"."type" IN ('ProjectMember', 'ProjectNamespaceMember') AND "members"."source_type" = 'Project' AND "members"."state" = 0 AND "members"."requested_at" IS NULL AND "members"."invite_token" IS NULL AND (members.access_level > 5) AND "members"."source_id" IN (SELECT "projects"."id" FROM "projects" INNER JOIN "namespaces" ON "namespaces"."type" = 'Group' AND "namespaces"."id" = "projects"."namespace_id" AND "namespaces"."type" = 'Group' WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}')))) AND "members"."user_id" NOT IN (SELECT "namespace_bans"."user_id" FROM "namespace_bans" WHERE "namespace_bans"."namespace_id" = 2518)) AND "users"."user_type" IN (0, 4, 5) AND ("users"."state" IN ('active')) /* allow_cross_joins_across_databases */ /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/finders/namespaces/billed_users_finder.rb:34:in `block in calculate_user_ids'*/6386 SELECT "users"."id" FROM "users" WHERE "users"."id" IN (SELECT "members"."user_id" FROM "members" LEFT OUTER JOIN "users" ON "users"."id" = "members"."user_id" WHERE "users"."state" = 'active' AND "members"."state" = 0 AND "members"."requested_at" IS NULL AND "members"."invite_token" IS NULL AND (members.access_level > 5) AND "members"."source_id" IN (WITH "base_ancestors_cte" AS MATERIALIZED (SELECT "namespaces"."traversal_ids" FROM "namespaces" INNER JOIN "group_group_links" ON "group_group_links"."shared_with_group_id" = "namespaces"."id" WHERE "namespaces"."type" = 'Group' AND "group_group_links"."shared_group_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}')))) SELECT "namespaces"."id" FROM "namespaces" INNER JOIN (SELECT DISTINCT unnest("base_ancestors_cte"."traversal_ids") FROM base_ancestors_cte) AS ancestors(ancestor_id) ON namespaces.id = ancestors.ancestor_id WHERE "namespaces"."type" = 'Group') AND "members"."type" = 'GroupMember' AND "members"."source_type" = 'Namespace' AND "members"."user_id" NOT IN (SELECT "namespace_bans"."user_id" FROM "namespace_bans" WHERE "namespace_bans"."namespace_id" = 2518) /* allow_cross_joins_across_databases */) AND "users"."user_type" IN (0, 4, 5) /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/finders/namespaces/billed_users_finder.rb:34:in `block in calculate_user_ids'*/6387 SELECT "users"."id" FROM "users" WHERE "users"."id" IN (SELECT "members"."user_id" FROM "members" LEFT OUTER JOIN "users" ON "users"."id" = "members"."user_id" WHERE "users"."state" = 'active' AND "members"."state" = 0 AND "members"."requested_at" IS NULL AND "members"."invite_token" IS NULL AND (members.access_level > 5) AND "members"."source_id" IN (WITH "base_ancestors_cte" AS MATERIALIZED (SELECT "namespaces"."traversal_ids" FROM "namespaces" INNER JOIN "project_group_links" ON "project_group_links"."group_id" = "namespaces"."id" WHERE "namespaces"."type" = 'Group' AND "project_group_links"."project_id" IN (SELECT "projects"."id" FROM "projects" WHERE "projects"."namespace_id" IN (SELECT namespaces.traversal_ids[array_length(namespaces.traversal_ids, 1)] AS id FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}'))))) SELECT "namespaces"."id" FROM "namespaces" INNER JOIN (SELECT DISTINCT unnest("base_ancestors_cte"."traversal_ids") FROM base_ancestors_cte) AS ancestors(ancestor_id) ON namespaces.id = ancestors.ancestor_id WHERE "namespaces"."type" = 'Group') AND "members"."type" = 'GroupMember' AND "members"."source_type" = 'Namespace' AND "members"."user_id" NOT IN (SELECT "namespace_bans"."user_id" FROM "namespace_bans" WHERE "namespace_bans"."namespace_id" = 2518) /* allow_cross_joins_across_databases */) AND "users"."user_type" IN (0, 4, 5) /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/finders/namespaces/billed_users_finder.rb:34:in `block in calculate_user_ids'*/6388 SELECT * FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "projects"."id" FROM "projects" WHERE "projects"."namespace_id" IN (SELECT namespaces.traversal_ids[array_length(namespaces.traversal_ids, 1)] AS id FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}')))), "recursive_keyset_cte" AS ((SELECT NULL::merge_requests_compliance_violations AS records, array_cte_id_array, merge_requests_compliance_violations_severity_level_array, merge_requests_compliance_violations_id_array, 0::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("merge_requests_compliance_violations"."severity_level") AS merge_requests_compliance_violations_severity_level_array, ARRAY_AGG("merge_requests_compliance_violations"."id") AS merge_requests_compliance_violations_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "merge_requests_compliance_violations"."severity_level" AS severity_level, "merge_requests_compliance_violations"."id" AS id FROM "merge_requests_compliance_violations" WHERE "merge_requests_compliance_violations"."target_project_id" = "array_cte"."id" ORDER BY "merge_requests_compliance_violations"."severity_level" DESC, "merge_requests_compliance_violations"."id" DESC LIMIT 1) merge_requests_compliance_violations ON TRUE WHERE "merge_requests_compliance_violations"."severity_level" IS NOT NULL AND "merge_requests_compliance_violations"."id" IS NOT NULL) array_scope_lateral_query LIMIT 1)6389 UNION ALL6390 (SELECT (SELECT merge_requests_compliance_violations FROM "merge_requests_compliance_violations" WHERE "merge_requests_compliance_violations"."id" = recursive_keyset_cte.merge_requests_compliance_violations_id_array[position] LIMIT 1), array_cte_id_array, recursive_keyset_cte.merge_requests_compliance_violations_severity_level_array[:position_query.position-1]||next_cursor_values.severity_level||recursive_keyset_cte.merge_requests_compliance_violations_severity_level_array[position_query.position+1:], recursive_keyset_cte.merge_requests_compliance_violations_id_array[:position_query.position-1]||next_cursor_values.id||recursive_keyset_cte.merge_requests_compliance_violations_id_array[position_query.position+1:], recursive_keyset_cte.count + 1 FROM recursive_keyset_cte,6391 LATERAL (SELECT severity_level, id, position FROM UNNEST(merge_requests_compliance_violations_severity_level_array, merge_requests_compliance_violations_id_array) WITH ORDINALITY AS u(severity_level, id, position) WHERE severity_level IS NOT NULL AND id IS NOT NULL ORDER BY 1 DESC, 2 DESC LIMIT 1) AS position_query,6392 LATERAL (SELECT "record"."severity_level", "record"."id" FROM (VALUES (NULL, NULL)) AS nulls LEFT JOIN (SELECT "merge_requests_compliance_violations"."severity_level" AS severity_level, "merge_requests_compliance_violations"."id" AS id FROM "merge_requests_compliance_violations" WHERE "merge_requests_compliance_violations"."target_project_id" = recursive_keyset_cte.array_cte_id_array[position] AND (("merge_requests_compliance_violations"."severity_level", "merge_requests_compliance_violations"."id") < (recursive_keyset_cte.merge_requests_compliance_violations_severity_level_array[position], recursive_keyset_cte.merge_requests_compliance_violations_id_array[position])) ORDER BY "merge_requests_compliance_violations"."severity_level" DESC, "merge_requests_compliance_violations"."id" DESC LIMIT 1) record ON TRUE LIMIT 1) AS next_cursor_values6393 )) SELECT (records).* FROM "recursive_keyset_cte" AS "merge_requests_compliance_violations" WHERE (count <> 0)) merge_requests_compliance_violations LIMIT 100 OFFSET 0 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/connection_redaction.rb:23:in `block in nodes'*/6394 SELECT "namespace_ci_cd_settings".* FROM "namespace_ci_cd_settings" WHERE "namespace_ci_cd_settings"."namespace_id" = 2518 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/models/ee/ci/namespace_settings.rb:14:in `allow_stale_runner_pruning?'*/6395 SELECT "cluster_agents".* FROM "cluster_agents" WHERE "cluster_agents"."project_id" IN (SELECT "projects"."id" FROM "projects" WHERE "projects"."namespace_id" IN (SELECT namespaces.traversal_ids[array_length(namespaces.traversal_ids, 1)] AS id FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}')))) ORDER BY "cluster_agents"."name" ASC, "cluster_agents"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6396 SELECT COUNT(*) FROM "cluster_agents" WHERE "cluster_agents"."project_id" IN (SELECT "projects"."id" FROM "projects" WHERE "projects"."namespace_id" IN (SELECT namespaces.traversal_ids[array_length(namespaces.traversal_ids, 1)] AS id FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}')))) /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6397 SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}')) /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/group.rb:580:in `block in self_and_descendants_ids'*/6398 SELECT "project_compliance_standards_adherence".* FROM "project_compliance_standards_adherence" WHERE "project_compliance_standards_adherence"."namespace_id" = 2518 ORDER BY "project_compliance_standards_adherence"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6399 SELECT "projects"."id", "projects"."name", "projects"."path", "projects"."description", "projects"."created_at", "projects"."updated_at", "projects"."creator_id", "projects"."namespace_id", "projects"."last_activity_at", "projects"."import_url", "projects"."visibility_level", "projects"."archived", "projects"."avatar", "projects"."merge_requests_template", "projects"."star_count", "projects"."merge_requests_rebase_enabled", "projects"."import_type", "projects"."import_source", "projects"."approvals_before_merge", "projects"."reset_approvals_on_push", "projects"."merge_requests_ff_only_enabled", "projects"."issues_template", "projects"."mirror", "projects"."mirror_last_update_at", "projects"."mirror_last_successful_update_at", "projects"."mirror_user_id", "projects"."shared_runners_enabled", "projects"."runners_token", "projects"."build_allow_git_fetch", "projects"."build_timeout", "projects"."mirror_trigger_builds", "projects"."pending_delete", "projects"."public_builds", "projects"."last_repository_check_failed", "projects"."last_repository_check_at", "projects"."only_allow_merge_if_pipeline_succeeds", "projects"."has_external_issue_tracker", "projects"."repository_storage", "projects"."repository_read_only", "projects"."request_access_enabled", "projects"."has_external_wiki", "projects"."ci_config_path", "projects"."lfs_enabled", "projects"."description_html", "projects"."only_allow_merge_if_all_discussions_are_resolved", "projects"."repository_size_limit", "projects"."printing_merge_request_link_enabled", "projects"."auto_cancel_pending_pipelines", "projects"."service_desk_enabled", "projects"."cached_markdown_version", "projects"."delete_error", "projects"."last_repository_updated_at", "projects"."disable_overriding_approvers_per_merge_request", "projects"."storage_version", "projects"."resolve_outdated_diff_discussions", "projects"."remote_mirror_available_overridden", "projects"."only_mirror_protected_branches", "projects"."pull_mirror_available_overridden", "projects"."jobs_cache_index", "projects"."external_authorization_classification_label", "projects"."mirror_overwrites_diverged_branches", "projects"."pages_https_only", "projects"."external_webhook_token", "projects"."packages_enabled", "projects"."merge_requests_author_approval", "projects"."pool_repository_id", "projects"."runners_token_encrypted", "projects"."bfg_object_map", "projects"."detected_repository_languages", "projects"."merge_requests_disable_committers_approval", "projects"."require_password_to_approve", "projects"."max_pages_size", "projects"."max_artifacts_size", "projects"."pull_mirror_branch_prefix", "projects"."remove_source_branch_after_merge", "projects"."marked_for_deletion_at", "projects"."marked_for_deletion_by_user_id", "projects"."autoclose_referenced_issues", "projects"."suggestion_commit_message", "projects"."project_namespace_id", "projects"."hidden" FROM "projects" WHERE "projects"."namespace_id" = 2518 /* allow_cross_joins_across_databases */ ORDER BY "projects"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6400 SELECT COUNT(*) FROM "projects" WHERE "projects"."namespace_id" = 2518 /* allow_cross_joins_across_databases */ /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6401 SELECT "namespace_package_settings".* FROM "namespace_package_settings" WHERE "namespace_package_settings"."namespace_id" = 2518 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/namespace.rb:287:in `package_settings'*/6402 SELECT "timelog_categories".* FROM "timelog_categories" WHERE "timelog_categories"."namespace_id" = 2518 ORDER BY "timelog_categories"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6403 SELECT "achievements".* FROM "achievements" WHERE "achievements"."namespace_id" = 2518 ORDER BY "achievements"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6404 SELECT COUNT(*) FROM "achievements" WHERE "achievements"."namespace_id" = 2518 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6405 SELECT "namespace_limits".* FROM "namespace_limits" WHERE "namespace_limits"."namespace_id" = 2518 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/models/ee/namespace.rb:179:in `namespace_limit'*/6406 SELECT SUM((("project_statistics"."repository_size" + "project_statistics"."lfs_objects_size") - "projects"."repository_size_limit")) FROM "projects" INNER JOIN "project_statistics" ON "project_statistics"."project_id" = "projects"."id" WHERE "projects"."namespace_id" IN (SELECT namespaces.traversal_ids[array_length(namespaces.traversal_ids, 1)] AS id FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}'))) AND "projects"."repository_size_limit" != 0 AND ("project_statistics"."repository_size" + "project_statistics"."lfs_objects_size") > "projects"."repository_size_limit" LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/models/ee/namespace.rb:265:in `block in total_repository_size_excess'*/6407 SELECT SUM(("project_statistics"."repository_size" + "project_statistics"."lfs_objects_size")) FROM "projects" INNER JOIN "project_statistics" ON "project_statistics"."project_id" = "projects"."id" WHERE "projects"."namespace_id" IN (SELECT namespaces.traversal_ids[array_length(namespaces.traversal_ids, 1)] AS id FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}'))) LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/models/ee/namespace.rb:279:in `block in total_repository_size'*/6408 SELECT COUNT(*) FROM "projects" INNER JOIN "project_statistics" ON "project_statistics"."project_id" = "projects"."id" WHERE "projects"."namespace_id" IN (SELECT namespaces.traversal_ids[array_length(namespaces.traversal_ids, 1)] AS id FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}'))) AND "projects"."repository_size_limit" != 0 AND ("project_statistics"."repository_size" + "project_statistics"."lfs_objects_size") > "projects"."repository_size_limit" /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/models/ee/namespace.rb:271:in `block in repository_size_excess_project_count'*/6409 SELECT "security_orchestration_policy_configurations".* FROM "security_orchestration_policy_configurations" WHERE "security_orchestration_policy_configurations"."namespace_id" = 2518 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/finders/security/scan_policy_base_finder.rb:27:in `policy_configuration'*/6410 SELECT "timelogs"."id", "timelogs"."time_spent", "timelogs"."user_id", "timelogs"."created_at", "timelogs"."updated_at", "timelogs"."issue_id", "timelogs"."merge_request_id", "timelogs"."spent_at", "timelogs"."project_id", "timelogs"."summary", "timelogs"."note_id" FROM "timelogs" INNER JOIN "projects" ON "projects"."id" = "timelogs"."project_id" WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}'))) AND (spent_at >= '2021-03-01 00:00:00') AND (spent_at <= '2021-03-30 23:59:59.999999') ORDER BY "timelogs"."spent_at" ASC NULLS LAST, "timelogs"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6411 SELECT SUM("timelogs"."time_spent") FROM "timelogs" INNER JOIN "projects" ON "projects"."id" = "timelogs"."project_id" WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}'))) AND (spent_at >= '2021-03-01 00:00:00') AND (spent_at <= '2021-03-30 23:59:59.999999') /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/time_tracking/timelog_connection_type.rb:20:in `total_spent_time'*/6412 SELECT COUNT(*) FROM "timelogs" INNER JOIN "projects" ON "projects"."id" = "timelogs"."project_id" WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2518}'))) AND (spent_at >= '2021-03-01 00:00:00') AND (spent_at <= '2021-03-30 23:59:59.999999') /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6413 SELECT "saml_providers".* FROM "saml_providers" WHERE "saml_providers"."group_id" = 2519 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/models/ee/group.rb:364:in `block in root_saml_provider'*/6414 SELECT "namespaces".* FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND "namespaces"."id" = 2519 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/project.rb:2216:in `visibility_level_allowed_by_group?'*/6415 SELECT "namespaces".* FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND "namespaces"."id" = 2519 LIMIT 16416 SELECT "namespaces".* FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND "namespaces"."id" = 2519 LIMIT 16417 SELECT "custom_emoji".* FROM "custom_emoji" WHERE "custom_emoji"."namespace_id" = 2519 ORDER BY "custom_emoji"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6418 SELECT COUNT(*) FROM "custom_emoji" WHERE "custom_emoji"."namespace_id" = 2519 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6419 SELECT "group_crm_settings".* FROM "group_crm_settings" WHERE "group_crm_settings"."group_id" = 2519 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/group.rb:863:in `crm_enabled?'*/6420 SELECT "issues"."id", "issues"."title", "issues"."author_id", "issues"."project_id", "issues"."created_at", "issues"."updated_at", "issues"."description", "issues"."milestone_id", "issues"."iid", "issues"."updated_by_id", "issues"."weight", "issues"."confidential", "issues"."due_date", "issues"."moved_to_id", "issues"."lock_version", "issues"."title_html", "issues"."description_html", "issues"."time_estimate", "issues"."relative_position", "issues"."service_desk_reply_to", "issues"."cached_markdown_version", "issues"."last_edited_at", "issues"."last_edited_by_id", "issues"."discussion_locked", "issues"."closed_at", "issues"."closed_by_id", "issues"."state_id", "issues"."duplicated_to_id", "issues"."promoted_to_epic_id", "issues"."health_status", "issues"."external_key", "issues"."sprint_id", "issues"."blocking_issues_count", "issues"."upvotes_count", "issues"."work_item_type_id", "issues"."namespace_id", "issues"."start_date" FROM "issues" INNER JOIN "projects" ON "projects"."id" = "issues"."project_id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."namespace_id" = 2519 AND (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."issues_access_level" > 0 OR "project_features"."issues_access_level" IS NULL) AND "projects"."archived" = FALSE ORDER BY "issues"."created_at" DESC, "issues"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6421 SELECT SUM("issues"."weight") FROM "issues" INNER JOIN "projects" ON "projects"."id" = "issues"."project_id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."namespace_id" = 2519 AND (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."issues_access_level" > 0 OR "project_features"."issues_access_level" IS NULL) AND "projects"."archived" = FALSE /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/graphql/ee/types/issue_connection_type.rb:19:in `weight'*/6422 SELECT COUNT(*) FROM "issues" INNER JOIN "projects" ON "projects"."id" = "issues"."project_id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."namespace_id" = 2519 AND (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."issues_access_level" > 0 OR "project_features"."issues_access_level" IS NULL) AND "projects"."archived" = FALSE /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6423 SELECT "merge_requests".* FROM "merge_requests" INNER JOIN "projects" ON "projects"."id" = "merge_requests"."target_project_id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."namespace_id" = 2519 AND (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."merge_requests_access_level" > 0 OR "project_features"."merge_requests_access_level" IS NULL) AND "projects"."archived" = FALSE /* allow_cross_joins_across_databases */ ORDER BY "merge_requests"."created_at" DESC, "merge_requests"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6424 SELECT EXTRACT(epoch FROM SUM(AGE(merge_request_metrics.merged_at, merge_request_metrics.created_at))) FROM "merge_requests" INNER JOIN "projects" ON "projects"."id" = "merge_requests"."target_project_id" INNER JOIN "merge_request_metrics" ON "merge_request_metrics"."merge_request_id" = "merge_requests"."id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."namespace_id" = 2519 AND (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."merge_requests_access_level" > 0 OR "project_features"."merge_requests_access_level" IS NULL) AND "projects"."archived" = FALSE AND "merge_requests"."target_project_id" = "merge_request_metrics"."target_project_id" AND "merge_request_metrics"."merged_at" > "merge_request_metrics"."created_at" /* allow_cross_joins_across_databases */ LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/merge_request.rb:479:in `total_time_to_merge'*/6425 SELECT COUNT(*) FROM "merge_requests" INNER JOIN "projects" ON "projects"."id" = "merge_requests"."target_project_id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."namespace_id" = 2519 AND (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."merge_requests_access_level" > 0 OR "project_features"."merge_requests_access_level" IS NULL) AND "projects"."archived" = FALSE /* allow_cross_joins_across_databases */ /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6426 SELECT "ci_group_variables"."environment_scope" FROM "ci_group_variables" WHERE "ci_group_variables"."group_id" = 2519 GROUP BY "ci_group_variables"."environment_scope" ORDER BY "ci_group_variables"."environment_scope" ASC LIMIT 100 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:ci,line:/app/models/ci/group_variable.rb:37:in `block in <class:GroupVariable>'*/6427 SELECT "milestones".* FROM ((SELECT "milestones".* FROM "milestones" WHERE 1=0)6428 UNION ALL6429 (SELECT "milestones".* FROM "milestones" WHERE "milestones"."group_id" = 2519)) milestones ORDER BY "milestones"."due_date" ASC NULLS LAST, "milestones"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6430 SELECT "boards".* FROM "boards" WHERE "boards"."group_id" = 2519 AND "boards"."id" IN (SELECT "boards"."id" FROM "boards" WHERE "boards"."group_id" = 2519 ORDER BY LOWER("boards"."name") ASC, "boards"."id" ASC LIMIT 1) ORDER BY "boards"."id" DESC LIMIT 2001 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6431 SELECT "board_group_recent_visits".* FROM "board_group_recent_visits" WHERE "board_group_recent_visits"."user_id" = 1663 AND "board_group_recent_visits"."group_id" = 2519 ORDER BY "board_group_recent_visits"."updated_at" DESC LIMIT 4 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/concerns/board_recent_visit.rb:21:in `latest'*/6432 SELECT "members".* FROM (SELECT DISTINCT ON (user_id, invite_email) * FROM "members" WHERE "members"."type" = 'GroupMember' AND "members"."source_type" = 'Namespace' AND "members"."requested_at" IS NULL AND "members"."source_id" IN (SELECT "namespaces"."id" FROM ((SELECT "namespaces".* FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND "namespaces"."id" = 2519)) namespaces WHERE "namespaces"."type" = 'Group') AND (members.access_level > 5) ORDER BY user_id, invite_email, access_level DESC, expires_at DESC, created_at ASC) members WHERE "members"."type" = 'GroupMember' ORDER BY "members"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6433 SELECT "namespaces".* FROM "namespaces" WHERE "namespaces"."id" = 2519 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/members/group_member.rb:40:in `group'*/6434 SELECT "container_repositories".* FROM "container_repositories" INNER JOIN (SELECT "projects"."id" FROM "projects" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}'))) AND ("project_features"."container_registry_access_level" > 0 OR "project_features"."container_registry_access_level" IS NULL)) projects on projects.id=container_repositories.project_id ORDER BY "container_repositories"."created_at" DESC, "container_repositories"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6435 SELECT COUNT(*) FROM "container_repositories" INNER JOIN "projects" ON "container_repositories"."project_id" = "projects"."id" WHERE "projects"."namespace_id" = 2519 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/group_type.rb:294:in `container_repositories_count'*/6436 SELECT "packages_packages".* FROM "packages_packages" WHERE "packages_packages"."project_id" IN (SELECT "projects"."id" FROM "projects" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}'))) AND (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."repository_access_level" > 0 OR "project_features"."repository_access_level" IS NULL)) AND "packages_packages"."version" IS NOT NULL AND "packages_packages"."package_type" != 12 AND "packages_packages"."status" IN (0, 3) ORDER BY "packages_packages"."created_at" DESC, "packages_packages"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6437 SELECT COUNT(*) FROM "packages_packages" WHERE "packages_packages"."project_id" IN (SELECT "projects"."id" FROM "projects" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}'))) AND (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."repository_access_level" > 0 OR "project_features"."repository_access_level" IS NULL)) AND "packages_packages"."version" IS NOT NULL AND "packages_packages"."package_type" != 12 AND "packages_packages"."status" IN (0, 3) /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6438 SELECT "dependency_proxy_group_settings".* FROM "dependency_proxy_group_settings" WHERE "dependency_proxy_group_settings"."group_id" = 2519 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/group.rb:855:in `dependency_proxy_setting'*/6439 SELECT "dependency_proxy_manifests".* FROM "dependency_proxy_manifests" WHERE "dependency_proxy_manifests"."group_id" = 2519 ORDER BY "dependency_proxy_manifests"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6440 SELECT "dependency_proxy_blobs".* FROM "dependency_proxy_blobs" WHERE "dependency_proxy_blobs"."group_id" = 2519 ORDER BY "dependency_proxy_blobs"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6441 SELECT COUNT(*) FROM "dependency_proxy_manifests" WHERE "dependency_proxy_manifests"."group_id" = 2519 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/group_type.rb:302:in `dependency_proxy_image_count'*/6442 SELECT COUNT(*) FROM "dependency_proxy_blobs" WHERE "dependency_proxy_blobs"."group_id" = 2519 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/group_type.rb:306:in `dependency_proxy_blob_count'*/6443 SELECT SUM("dependency_proxy_manifests"."size") FROM "dependency_proxy_manifests" WHERE "dependency_proxy_manifests"."group_id" = 2519 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/group_type.rb:320:in `dependency_proxy_total_size_bytes'*/6444 SELECT SUM("dependency_proxy_blobs"."size") FROM "dependency_proxy_blobs" WHERE "dependency_proxy_blobs"."group_id" = 2519 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/group_type.rb:320:in `dependency_proxy_total_size_bytes'*/6445 SELECT SUM("dependency_proxy_manifests"."size") FROM "dependency_proxy_manifests" WHERE "dependency_proxy_manifests"."group_id" = 25196446 SELECT SUM("dependency_proxy_blobs"."size") FROM "dependency_proxy_blobs" WHERE "dependency_proxy_blobs"."group_id" = 25196447 SELECT SUM("dependency_proxy_manifests"."size") FROM "dependency_proxy_manifests" WHERE "dependency_proxy_manifests"."group_id" = 25196448 SELECT SUM("dependency_proxy_blobs"."size") FROM "dependency_proxy_blobs" WHERE "dependency_proxy_blobs"."group_id" = 25196449 SELECT "dependency_proxy_image_ttl_group_policies".* FROM "dependency_proxy_image_ttl_group_policies" WHERE "dependency_proxy_image_ttl_group_policies"."group_id" = 2519 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/group.rb:851:in `dependency_proxy_image_ttl_policy'*/6450 SELECT MAX("members"."access_level") AS "maximum_access_level", "hierarchy"."id" AS "hierarchy_id" FROM ((SELECT "members"."id", "members"."access_level", "members"."source_id", "members"."source_type", "members"."user_id", "members"."notification_level", "members"."type", "members"."created_at", "members"."updated_at", "members"."created_by_id", "members"."invite_email", "members"."invite_token", "members"."invite_accepted_at", "members"."requested_at", "members"."expires_at", "members"."ldap", "members"."override", "members"."state", "members"."invite_email_success", "members"."member_namespace_id", "members"."member_role_id", "members"."expiry_notified_at" FROM "members" LEFT OUTER JOIN "users" ON "users"."id" = "members"."user_id" WHERE "members"."type" = 'GroupMember' AND "members"."source_type" = 'Namespace' AND "users"."state" = 'active' AND "members"."state" = 0 AND "members"."requested_at" IS NULL AND "members"."invite_token" IS NULL AND (members.access_level > 5) AND "members"."user_id" = 1663 /* allow_cross_joins_across_databases */)6451 UNION6452 (SELECT "members"."id", LEAST("group_group_links"."group_access", "members"."access_level") AS access_level, "group_group_links"."shared_group_id" AS source_id, "members"."source_type", "members"."user_id", "members"."notification_level", "members"."type", "members"."created_at", "members"."updated_at", "members"."created_by_id", "members"."invite_email", "members"."invite_token", "members"."invite_accepted_at", "members"."requested_at", "members"."expires_at", "members"."ldap", "members"."override", "members"."state", "members"."invite_email_success", "members"."member_namespace_id", "members"."member_role_id", "members"."expiry_notified_at" FROM "members" LEFT OUTER JOIN "users" ON "users"."id" = "members"."user_id" INNER JOIN group_group_links ON members.source_id = group_group_links.shared_with_group_id WHERE "members"."type" = 'GroupMember' AND "members"."source_type" = 'Namespace' AND "users"."state" = 'active' AND "members"."state" = 0 AND "members"."requested_at" IS NULL AND "members"."invite_token" IS NULL AND (members.access_level > 5) AND "members"."user_id" = 1663 /* allow_cross_joins_across_databases */)) members INNER JOIN (SELECT id, unnest(traversal_ids) as traversal_id FROM "namespaces" WHERE "namespaces"."id" = 2519) as hierarchy ON members.source_id = hierarchy.traversal_id WHERE "members"."type" = 'GroupMember' AND "members"."source_type" = 'Namespace' GROUP BY "hierarchy"."id" /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/preloaders/user_max_access_level_in_groups_preloader.rb:40:in `preload_with_traversal_ids'*/6453 WITH "base_ancestors_cte" AS MATERIALIZED (SELECT "namespaces"."traversal_ids" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND "namespaces"."id" = 2519) SELECT "namespaces"."id", "namespaces"."parent_id", "gitlab_subscriptions"."hosted_plan_id" FROM "namespaces" INNER JOIN (SELECT DISTINCT unnest("base_ancestors_cte"."traversal_ids") FROM base_ancestors_cte) AS ancestors(ancestor_id) ON namespaces.id = ancestors.ancestor_id LEFT OUTER JOIN gitlab_subscriptions ON gitlab_subscriptions.namespace_id=namespaces.id WHERE "namespaces"."type" = 'Group' /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/lib/gitlab/group_plans_preloader.rb:24:in `preload'*/6454 SELECT "labels".* FROM ((SELECT "labels".* FROM "labels" WHERE "labels"."group_id" = 2519)6455 UNION6456 (SELECT "labels".* FROM "labels" WHERE "labels"."group_id" IN (SELECT "projects"."namespace_id" FROM "projects" INNER JOIN "namespaces" ON "namespaces"."id" = "projects"."namespace_id" WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND "projects"."pending_delete" = FALSE AND "projects"."archived" = FALSE AND "projects"."hidden" = FALSE AND "projects"."namespace_id" = 2519 AND "namespaces"."type" = 'Group'))6457 UNION6458 (SELECT "labels".* FROM "labels" WHERE "labels"."project_id" IN (SELECT "projects"."id" FROM ((SELECT "projects"."id" FROM "projects" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."id" IN (SELECT "projects"."id" FROM "projects" WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND "projects"."pending_delete" = FALSE AND "projects"."archived" = FALSE AND "projects"."hidden" = FALSE AND "projects"."namespace_id" = 2519) AND ("project_features"."issues_access_level" > 0 OR "project_features"."issues_access_level" IS NULL))6459 UNION6460 (SELECT "projects"."id" FROM "projects" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."id" IN (SELECT "projects"."id" FROM "projects" WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND "projects"."pending_delete" = FALSE AND "projects"."archived" = FALSE AND "projects"."hidden" = FALSE AND "projects"."namespace_id" = 2519) AND ("project_features"."merge_requests_access_level" > 0 OR "project_features"."merge_requests_access_level" IS NULL))) projects WHERE "projects"."id" IN (SELECT "projects"."id" FROM "projects" WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND "projects"."pending_delete" = FALSE AND "projects"."archived" = FALSE AND "projects"."hidden" = FALSE AND "projects"."namespace_id" = 2519)))) labels ORDER BY "labels"."title" ASC, "labels"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6461 SELECT COUNT(*) FROM ((SELECT "labels".* FROM "labels" WHERE "labels"."group_id" = 2519)6462 UNION6463 (SELECT "labels".* FROM "labels" WHERE "labels"."group_id" IN (SELECT "projects"."namespace_id" FROM "projects" INNER JOIN "namespaces" ON "namespaces"."id" = "projects"."namespace_id" WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND "projects"."pending_delete" = FALSE AND "projects"."archived" = FALSE AND "projects"."hidden" = FALSE AND "projects"."namespace_id" = 2519 AND "namespaces"."type" = 'Group'))6464 UNION6465 (SELECT "labels".* FROM "labels" WHERE "labels"."project_id" IN (SELECT "projects"."id" FROM ((SELECT "projects"."id" FROM "projects" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."id" IN (SELECT "projects"."id" FROM "projects" WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND "projects"."pending_delete" = FALSE AND "projects"."archived" = FALSE AND "projects"."hidden" = FALSE AND "projects"."namespace_id" = 2519) AND ("project_features"."issues_access_level" > 0 OR "project_features"."issues_access_level" IS NULL))6466 UNION6467 (SELECT "projects"."id" FROM "projects" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE "projects"."id" IN (SELECT "projects"."id" FROM "projects" WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND "projects"."pending_delete" = FALSE AND "projects"."archived" = FALSE AND "projects"."hidden" = FALSE AND "projects"."namespace_id" = 2519) AND ("project_features"."merge_requests_access_level" > 0 OR "project_features"."merge_requests_access_level" IS NULL))) projects WHERE "projects"."id" IN (SELECT "projects"."id" FROM "projects" WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND "projects"."pending_delete" = FALSE AND "projects"."archived" = FALSE AND "projects"."hidden" = FALSE AND "projects"."namespace_id" = 2519)))) labels /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6468 SELECT "namespaces".* FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND "namespaces"."id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}')) AND "namespaces"."id" != 2519) /* allow_cross_joins_across_databases */ ORDER BY "namespaces"."name" ASC, "namespaces"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6469 SELECT "ci_group_variables".* FROM "ci_group_variables" WHERE "ci_group_variables"."group_id" = 2519 ORDER BY "ci_group_variables"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:ci,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6470 SELECT "ci_runners".* FROM ((SELECT "ci_runners".* FROM "ci_runners" INNER JOIN "ci_runner_namespaces" ON "ci_runner_namespaces"."runner_id" = "ci_runners"."id" WHERE "ci_runner_namespaces"."namespace_id" IN (SELECT "ci_namespace_mirrors"."namespace_id" FROM "ci_namespace_mirrors" WHERE (traversal_ids @> ARRAY[2519]::int[])))6471 UNION ALL6472 (SELECT DISTINCT "ci_runners".* FROM "ci_runners" INNER JOIN "ci_runner_projects" ON "ci_runner_projects"."runner_id" = "ci_runners"."id" WHERE "ci_runner_projects"."project_id" IN (SELECT "ci_project_mirrors"."project_id" FROM "ci_project_mirrors" WHERE "ci_project_mirrors"."namespace_id" IN (SELECT "ci_namespace_mirrors"."namespace_id" FROM "ci_namespace_mirrors" WHERE (traversal_ids @> ARRAY[2519]::int[]))))) ci_runners ORDER BY "ci_runners"."created_at" DESC, "ci_runners"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:ci,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6473 SELECT COUNT(*) FROM ((SELECT "ci_runners".* FROM "ci_runners" INNER JOIN "ci_runner_namespaces" ON "ci_runner_namespaces"."runner_id" = "ci_runners"."id" WHERE "ci_runner_namespaces"."namespace_id" IN (SELECT "ci_namespace_mirrors"."namespace_id" FROM "ci_namespace_mirrors" WHERE (traversal_ids @> ARRAY[2519]::int[])))6474 UNION ALL6475 (SELECT DISTINCT "ci_runners".* FROM "ci_runners" INNER JOIN "ci_runner_projects" ON "ci_runner_projects"."runner_id" = "ci_runners"."id" WHERE "ci_runner_projects"."project_id" IN (SELECT "ci_project_mirrors"."project_id" FROM "ci_project_mirrors" WHERE "ci_project_mirrors"."namespace_id" IN (SELECT "ci_namespace_mirrors"."namespace_id" FROM "ci_namespace_mirrors" WHERE (traversal_ids @> ARRAY[2519]::int[]))))) ci_runners /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:ci,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6476 SELECT "work_item_types".* FROM "work_item_types" WHERE "work_item_types"."namespace_id" IS NULL ORDER BY LOWER("work_item_types"."name") ASC, "work_item_types"."id" DESC LIMIT 1016477 SELECT * FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "projects"."id" FROM "projects" WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}')))), "recursive_keyset_cte" AS ((SELECT NULL::releases AS records, array_cte_id_array, releases_released_at_array, releases_id_array, 0::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("releases"."released_at") AS releases_released_at_array, ARRAY_AGG("releases"."id") AS releases_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "releases"."released_at" AS released_at, "releases"."id" AS id FROM "releases" WHERE "releases"."project_id" = "array_cte"."id" ORDER BY "releases"."released_at" DESC, "releases"."id" DESC LIMIT 1) releases ON TRUE WHERE "releases"."released_at" IS NOT NULL AND "releases"."id" IS NOT NULL) array_scope_lateral_query LIMIT 1)6478 UNION ALL6479 (SELECT (SELECT releases FROM "releases" WHERE "releases"."id" = recursive_keyset_cte.releases_id_array[position] LIMIT 1), array_cte_id_array, recursive_keyset_cte.releases_released_at_array[:position_query.position-1]||next_cursor_values.released_at||recursive_keyset_cte.releases_released_at_array[position_query.position+1:], recursive_keyset_cte.releases_id_array[:position_query.position-1]||next_cursor_values.id||recursive_keyset_cte.releases_id_array[position_query.position+1:], recursive_keyset_cte.count + 1 FROM recursive_keyset_cte,6480 LATERAL (SELECT released_at, id, position FROM UNNEST(releases_released_at_array, releases_id_array) WITH ORDINALITY AS u(released_at, id, position) WHERE released_at IS NOT NULL AND id IS NOT NULL ORDER BY 1 DESC, 2 DESC LIMIT 1) AS position_query,6481 LATERAL (SELECT "record"."released_at", "record"."id" FROM (VALUES (NULL, NULL)) AS nulls LEFT JOIN (SELECT "releases"."released_at" AS released_at, "releases"."id" AS id FROM "releases" WHERE "releases"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND (("releases"."released_at", "releases"."id") < (recursive_keyset_cte.releases_released_at_array[position], recursive_keyset_cte.releases_id_array[position])) ORDER BY "releases"."released_at" DESC, "releases"."id" DESC LIMIT 1) record ON TRUE LIMIT 1) AS next_cursor_values6482 )) SELECT (records).* FROM "recursive_keyset_cte" AS "releases" WHERE (count <> 0)) releases LIMIT 100 OFFSET 0 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/connection_redaction.rb:23:in `block in nodes'*/6483 SELECT COUNT(*) FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "projects"."id" FROM "projects" WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}')))), "recursive_keyset_cte" AS ((SELECT NULL::releases AS records, array_cte_id_array, releases_released_at_array, releases_id_array, 0::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("releases"."released_at") AS releases_released_at_array, ARRAY_AGG("releases"."id") AS releases_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "releases"."released_at" AS released_at, "releases"."id" AS id FROM "releases" WHERE "releases"."project_id" = "array_cte"."id" ORDER BY "releases"."released_at" DESC, "releases"."id" DESC LIMIT 1) releases ON TRUE WHERE "releases"."released_at" IS NOT NULL AND "releases"."id" IS NOT NULL) array_scope_lateral_query LIMIT 1)6484 UNION ALL6485 (SELECT (SELECT releases FROM "releases" WHERE "releases"."id" = recursive_keyset_cte.releases_id_array[position] LIMIT 1), array_cte_id_array, recursive_keyset_cte.releases_released_at_array[:position_query.position-1]||next_cursor_values.released_at||recursive_keyset_cte.releases_released_at_array[position_query.position+1:], recursive_keyset_cte.releases_id_array[:position_query.position-1]||next_cursor_values.id||recursive_keyset_cte.releases_id_array[position_query.position+1:], recursive_keyset_cte.count + 1 FROM recursive_keyset_cte,6486 LATERAL (SELECT released_at, id, position FROM UNNEST(releases_released_at_array, releases_id_array) WITH ORDINALITY AS u(released_at, id, position) WHERE released_at IS NOT NULL AND id IS NOT NULL ORDER BY 1 DESC, 2 DESC LIMIT 1) AS position_query,6487 LATERAL (SELECT "record"."released_at", "record"."id" FROM (VALUES (NULL, NULL)) AS nulls LEFT JOIN (SELECT "releases"."released_at" AS released_at, "releases"."id" AS id FROM "releases" WHERE "releases"."project_id" = recursive_keyset_cte.array_cte_id_array[position] AND (("releases"."released_at", "releases"."id") < (recursive_keyset_cte.releases_released_at_array[position], recursive_keyset_cte.releases_id_array[position])) ORDER BY "releases"."released_at" DESC, "releases"."id" DESC LIMIT 1) record ON TRUE LIMIT 1) AS next_cursor_values6488 )) SELECT (records).* FROM "recursive_keyset_cte" AS "releases" WHERE (count <> 0)) releases /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6489 SELECT "issues"."id", "issues"."title", "issues"."author_id", "issues"."project_id", "issues"."created_at", "issues"."updated_at", "issues"."description", "issues"."milestone_id", "issues"."iid", "issues"."updated_by_id", "issues"."weight", "issues"."confidential", "issues"."due_date", "issues"."moved_to_id", "issues"."lock_version", "issues"."title_html", "issues"."description_html", "issues"."time_estimate", "issues"."relative_position", "issues"."service_desk_reply_to", "issues"."cached_markdown_version", "issues"."last_edited_at", "issues"."last_edited_by_id", "issues"."discussion_locked", "issues"."closed_at", "issues"."closed_by_id", "issues"."state_id", "issues"."duplicated_to_id", "issues"."promoted_to_epic_id", "issues"."health_status", "issues"."external_key", "issues"."sprint_id", "issues"."blocking_issues_count", "issues"."upvotes_count", "issues"."work_item_type_id", "issues"."namespace_id", "issues"."start_date" FROM "issues" WHERE "issues"."namespace_id" = 2519 ORDER BY "issues"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6490 SELECT "users".* FROM "users" WHERE "users"."id" IN (WITH "group_hierarchy" AS MATERIALIZED (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}') OR 1=0)), "descendant_projects" AS MATERIALIZED (SELECT "projects"."id" FROM "projects" WHERE "projects"."namespace_id" IN (SELECT namespaces.traversal_ids[array_length(namespaces.traversal_ids, 1)] AS id FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}')))) SELECT "members"."user_id" FROM ((SELECT "members"."user_id" FROM "members" WHERE "members"."type" = 'GroupMember' AND "members"."source_type" = 'Namespace' AND "members"."source_id" IN (SELECT "id" FROM "group_hierarchy") AND "members"."state" = 0 AND "members"."requested_at" IS NULL AND "members"."invite_token" IS NULL AND (members.access_level > 5))6491 UNION ALL6492 (SELECT "members"."user_id" FROM "members" WHERE "members"."type" = 'GroupMember' AND "members"."source_type" = 'Namespace' AND "members"."source_id" IN (SELECT "group_group_links"."shared_with_group_id" FROM "group_group_links" WHERE "group_group_links"."shared_group_id" IN (SELECT "id" FROM "group_hierarchy")) AND "members"."state" = 0 AND "members"."requested_at" IS NULL AND "members"."invite_token" IS NULL AND (members.access_level > 5))6493 UNION ALL6494 (SELECT "members"."user_id" FROM "members" WHERE "members"."type" IN ('ProjectMember', 'ProjectNamespaceMember') AND "members"."source_type" = 'Project' AND "members"."source_id" IN (SELECT "id" FROM "descendant_projects") AND "members"."state" = 0 AND "members"."requested_at" IS NULL AND "members"."invite_token" IS NULL AND (members.access_level > 5))6495 UNION ALL6496 (SELECT "members"."user_id" FROM "members" WHERE "members"."type" = 'GroupMember' AND "members"."source_type" = 'Namespace' AND "members"."source_id" IN (SELECT "project_group_links"."group_id" FROM "project_group_links" WHERE "project_group_links"."project_id" IN (SELECT "id" FROM "descendant_projects")) AND "members"."state" = 0 AND "members"."requested_at" IS NULL AND "members"."invite_token" IS NULL AND (members.access_level > 5))) members) AND "users"."state" = 'active' AND "users"."user_type" IN (0, 6, 4, 13) /* allow_cross_joins_across_databases */ ORDER BY "users"."name" ASC LIMIT 20 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/finders/autocomplete/users_finder.rb:76:in `limited_users'*/6497 SELECT "user_statuses".* FROM "user_statuses" WHERE "user_statuses"."user_id" = 1662 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/finders/autocomplete/users_finder.rb:108:in `preload_associations'*/6498 SELECT "user_details"."user_id", "user_details"."job_title", "user_details"."bio", "user_details"."webauthn_xid", "user_details"."provisioned_by_group_id", "user_details"."pronouns", "user_details"."pronunciation", "user_details"."registration_objective", "user_details"."phone", "user_details"."linkedin", "user_details"."twitter", "user_details"."skype", "user_details"."website_url", "user_details"."location", "user_details"."organization", "user_details"."password_last_changed_at", "user_details"."onboarding_step_url", "user_details"."discord", "user_details"."enterprise_group_id", "user_details"."enterprise_group_associated_at", "user_details"."email_reset_offered_at" FROM "user_details" WHERE "user_details"."user_id" = 1662 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/user.rb:2143:in `user_detail'*/6499 SELECT COUNT(*) FROM "projects" WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND "projects"."pending_delete" = FALSE AND "projects"."id" IN (SELECT "projects"."id" FROM "projects" INNER JOIN "users_star_projects" ON "projects"."id" = "users_star_projects"."project_id" WHERE "users_star_projects"."user_id" = 1662) AND "projects"."hidden" = FALSE /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6500 SELECT "namespaces".* FROM "namespaces" WHERE "namespaces"."owner_id" = 1662 AND "namespaces"."type" = 'User' LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/present/field_extension.rb:18:in `resolve'*/6501 SELECT "routes".* FROM "routes" WHERE "routes"."source_id" = 2503 AND "routes"."source_type" = 'Namespace' LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/concerns/routable.rb:155:in `full_attribute'*/6502 SELECT "namespace_limits".* FROM "namespace_limits" WHERE "namespace_limits"."namespace_id" = 2503 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/models/ee/namespace.rb:179:in `namespace_limit'*/6503 SELECT SUM((("project_statistics"."repository_size" + "project_statistics"."lfs_objects_size") - "projects"."repository_size_limit")) FROM "projects" INNER JOIN "project_statistics" ON "project_statistics"."project_id" = "projects"."id" WHERE "projects"."namespace_id" = 2503 AND "projects"."repository_size_limit" != 0 AND ("project_statistics"."repository_size" + "project_statistics"."lfs_objects_size") > "projects"."repository_size_limit" LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/models/ee/namespace.rb:265:in `block in total_repository_size_excess'*/6504 SELECT SUM(("project_statistics"."repository_size" + "project_statistics"."lfs_objects_size")) FROM "projects" INNER JOIN "project_statistics" ON "project_statistics"."project_id" = "projects"."id" WHERE "projects"."namespace_id" = 2503 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/models/ee/namespace.rb:279:in `block in total_repository_size'*/6505 SELECT COUNT(*) FROM "projects" INNER JOIN "project_statistics" ON "project_statistics"."project_id" = "projects"."id" WHERE "projects"."namespace_id" = 2503 AND "projects"."repository_size_limit" != 0 AND ("project_statistics"."repository_size" + "project_statistics"."lfs_objects_size") > "projects"."repository_size_limit" /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/models/ee/namespace.rb:271:in `block in repository_size_excess_project_count'*/6506 SELECT EXTRACT(epoch FROM SUM(AGE(merge_request_metrics.merged_at, merge_request_metrics.created_at))) FROM "merge_requests" INNER JOIN "projects" ON "projects"."id" = "merge_requests"."target_project_id" INNER JOIN "merge_request_metrics" ON "merge_request_metrics"."merge_request_id" = "merge_requests"."id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."merge_requests_access_level" > 0 OR "project_features"."merge_requests_access_level" IS NULL) AND "merge_requests"."author_id" = 1662 AND "merge_requests"."target_project_id" = "merge_request_metrics"."target_project_id" AND "merge_request_metrics"."merged_at" > "merge_request_metrics"."created_at" /* allow_cross_joins_across_databases */ LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/merge_request.rb:479:in `total_time_to_merge'*/6507 SELECT COUNT(*) FROM "merge_requests" INNER JOIN "projects" ON "projects"."id" = "merge_requests"."target_project_id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."merge_requests_access_level" > 0 OR "project_features"."merge_requests_access_level" IS NULL) AND "merge_requests"."author_id" = 1662 /* allow_cross_joins_across_databases */ /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6508 SELECT EXTRACT(epoch FROM SUM(AGE(merge_request_metrics.merged_at, merge_request_metrics.created_at))) FROM "merge_requests" INNER JOIN "projects" ON "projects"."id" = "merge_requests"."target_project_id" INNER JOIN "merge_request_metrics" ON "merge_request_metrics"."merge_request_id" = "merge_requests"."id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."merge_requests_access_level" > 0 OR "project_features"."merge_requests_access_level" IS NULL) AND EXISTS (SELECT "merge_request_assignees".* FROM "merge_request_assignees" WHERE "merge_request_assignees"."user_id" = 1662 AND (merge_request_id = merge_requests.id)) AND "merge_requests"."target_project_id" = "merge_request_metrics"."target_project_id" AND "merge_request_metrics"."merged_at" > "merge_request_metrics"."created_at" /* allow_cross_joins_across_databases */ LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/merge_request.rb:479:in `total_time_to_merge'*/6509 SELECT COUNT(*) FROM "merge_requests" INNER JOIN "projects" ON "projects"."id" = "merge_requests"."target_project_id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."merge_requests_access_level" > 0 OR "project_features"."merge_requests_access_level" IS NULL) AND EXISTS (SELECT "merge_request_assignees".* FROM "merge_request_assignees" WHERE "merge_request_assignees"."user_id" = 1662 AND (merge_request_id = merge_requests.id)) /* allow_cross_joins_across_databases */ /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6510 SELECT "users".* FROM "users" WHERE "users"."id" = 1662 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/finders/merge_requests_finder/params.rb:16:in `block in reviewer'*/6511 SELECT EXTRACT(epoch FROM SUM(AGE(merge_request_metrics.merged_at, merge_request_metrics.created_at))) FROM "merge_requests" INNER JOIN "projects" ON "projects"."id" = "merge_requests"."target_project_id" INNER JOIN "merge_request_metrics" ON "merge_request_metrics"."merge_request_id" = "merge_requests"."id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."merge_requests_access_level" > 0 OR "project_features"."merge_requests_access_level" IS NULL) AND EXISTS (SELECT true FROM "merge_request_reviewers" WHERE merge_request_id = merge_requests.id AND "merge_request_reviewers"."user_id" = 1662) AND "merge_requests"."target_project_id" = "merge_request_metrics"."target_project_id" AND "merge_request_metrics"."merged_at" > "merge_request_metrics"."created_at" /* allow_cross_joins_across_databases */ LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/merge_request.rb:479:in `total_time_to_merge'*/6512 SELECT COUNT(*) FROM "merge_requests" INNER JOIN "projects" ON "projects"."id" = "merge_requests"."target_project_id" LEFT JOIN project_features ON projects.id = project_features.project_id WHERE (EXISTS (SELECT 1 FROM "project_authorizations" WHERE "project_authorizations"."user_id" = 1663 AND (project_authorizations.project_id = projects.id)) OR projects.visibility_level IN (0,10,20)) AND ("project_features"."merge_requests_access_level" > 0 OR "project_features"."merge_requests_access_level" IS NULL) AND EXISTS (SELECT true FROM "merge_request_reviewers" WHERE merge_request_id = merge_requests.id AND "merge_request_reviewers"."user_id" = 1662) /* allow_cross_joins_across_databases */ /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6513 SELECT SUM("timelogs"."time_spent") FROM "timelogs" WHERE "timelogs"."user_id" = 1662 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/time_tracking/timelog_connection_type.rb:20:in `total_spent_time'*/6514 SELECT COUNT(*) FROM "timelogs" WHERE "timelogs"."user_id" = 1662 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6515 SELECT COUNT(*) FROM "saved_replies" WHERE "saved_replies"."user_id" = 1662 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6516 SELECT "user_preferences"."id", "user_preferences"."user_id", "user_preferences"."issue_notes_filter", "user_preferences"."merge_request_notes_filter", "user_preferences"."created_at", "user_preferences"."updated_at", "user_preferences"."epics_sort", "user_preferences"."roadmap_epics_state", "user_preferences"."epic_notes_filter", "user_preferences"."issues_sort", "user_preferences"."merge_requests_sort", "user_preferences"."roadmaps_sort", "user_preferences"."first_day_of_week", "user_preferences"."timezone", "user_preferences"."time_display_relative", "user_preferences"."projects_sort", "user_preferences"."show_whitespace_in_diffs", "user_preferences"."sourcegraph_enabled", "user_preferences"."setup_for_company", "user_preferences"."render_whitespace_in_code", "user_preferences"."tab_width", "user_preferences"."view_diffs_file_by_file", "user_preferences"."gitpod_enabled", "user_preferences"."markdown_surround_selection", "user_preferences"."diffs_deletion_color", "user_preferences"."diffs_addition_color", "user_preferences"."markdown_automatic_lists", "user_preferences"."use_new_navigation", "user_preferences"."achievements_enabled", "user_preferences"."pinned_nav_items", "user_preferences"."pass_user_identities_to_ci_jwt", "user_preferences"."enabled_following", "user_preferences"."visibility_pipeline_id_type", "user_preferences"."project_shortcut_buttons", "user_preferences"."enabled_zoekt" FROM "user_preferences" WHERE "user_preferences"."user_id" = 1662 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/user.rb:2139:in `user_preference'*/6517 SELECT COUNT(*) FROM "user_achievements" WHERE "user_achievements"."user_id" = 1662 AND "user_achievements"."revoked_by_user_id" IS NULL /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6518 SELECT "sprints".* FROM "sprints" WHERE "sprints"."group_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND "namespaces"."id" = 2519) ORDER BY "sprints"."due_date" ASC, "sprints"."title" ASC, "sprints"."id" ASC LIMIT 100 OFFSET 0 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/connection_redaction.rb:23:in `block in nodes'*/6519 SELECT "iterations_cadences".* FROM "iterations_cadences" WHERE "iterations_cadences"."group_id" = 2519 ORDER BY "iterations_cadences"."title" ASC LIMIT 100 OFFSET 0 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/connection_redaction.rb:23:in `block in nodes'*/6520 SELECT "vulnerability_reads".* FROM "vulnerability_reads" WHERE "vulnerability_reads"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}'))) ORDER BY "vulnerability_reads"."severity" DESC, "vulnerability_reads"."vulnerability_id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/unnested_in_filters/dsl.rb:62:in `load'*/6521 SELECT DISTINCT ON ("vulnerability_scanners"."external_id", "report_types"."report_type") "vulnerability_scanners".*, "report_types"."report_type" AS "report_type" FROM "vulnerability_scanners" JOIN LATERAL (SELECT "vulnerability_occurrences"."report_type" FROM "vulnerability_occurrences" WHERE "vulnerability_occurrences"."scanner_id" = "vulnerability_scanners"."id" LIMIT 1) report_types ON true WHERE "vulnerability_scanners"."project_id" IN (SELECT "projects"."id" FROM "projects" WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}'))) AND "projects"."archived" = FALSE AND "projects"."pending_delete" = FALSE) ORDER BY "vulnerability_scanners"."external_id" ASC, "report_types"."report_type" ASC /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/graphql/resolvers/vulnerabilities/scanners_resolver.rb:14:in `map'*/6522 SELECT COUNT(*) FROM "releases" INNER JOIN "projects" ON "projects"."id" = "releases"."project_id" WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}'))) /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/models/ee/group.rb:650:in `releases_count'*/6523 SELECT (6524 COUNT(*) FILTER (WHERE EXISTS (SELECT 1 FROM releases WHERE releases.project_id = projects.id)) * 100.0 / GREATEST(COUNT(*), 1)6525 )::integer AS releases_percentage6526 FROM "projects" WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}'))) /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/models/ee/group.rb:660:in `releases_percentage'*/6527 SELECT "users"."id" FROM "users" WHERE "users"."id" IN (SELECT "members"."user_id" FROM "members" LEFT OUTER JOIN "users" ON "users"."id" = "members"."user_id" WHERE "members"."type" = 'GroupMember' AND "members"."source_type" = 'Namespace' AND "users"."state" = 'active' AND "members"."state" = 0 AND "members"."requested_at" IS NULL AND "members"."invite_token" IS NULL AND (members.access_level > 5) AND "members"."source_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}'))) AND "members"."user_id" NOT IN (SELECT "namespace_bans"."user_id" FROM "namespace_bans" WHERE "namespace_bans"."namespace_id" = 2519) /* allow_cross_joins_across_databases */) AND "users"."user_type" IN (0, 4, 5) /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/finders/namespaces/billed_users_finder.rb:34:in `block in calculate_user_ids'*/6528 SELECT "users"."id" FROM "users" WHERE "users"."id" IN (SELECT "members"."user_id" FROM "members" WHERE "members"."type" IN ('ProjectMember', 'ProjectNamespaceMember') AND "members"."source_type" = 'Project' AND "members"."state" = 0 AND "members"."requested_at" IS NULL AND "members"."invite_token" IS NULL AND (members.access_level > 5) AND "members"."source_id" IN (SELECT "projects"."id" FROM "projects" INNER JOIN "namespaces" ON "namespaces"."type" = 'Group' AND "namespaces"."id" = "projects"."namespace_id" AND "namespaces"."type" = 'Group' WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}')))) AND "members"."user_id" NOT IN (SELECT "namespace_bans"."user_id" FROM "namespace_bans" WHERE "namespace_bans"."namespace_id" = 2519)) AND "users"."user_type" IN (0, 4, 5) AND ("users"."state" IN ('active')) /* allow_cross_joins_across_databases */ /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/finders/namespaces/billed_users_finder.rb:34:in `block in calculate_user_ids'*/6529 SELECT "users"."id" FROM "users" WHERE "users"."id" IN (SELECT "members"."user_id" FROM "members" LEFT OUTER JOIN "users" ON "users"."id" = "members"."user_id" WHERE "users"."state" = 'active' AND "members"."state" = 0 AND "members"."requested_at" IS NULL AND "members"."invite_token" IS NULL AND (members.access_level > 5) AND "members"."source_id" IN (WITH "base_ancestors_cte" AS MATERIALIZED (SELECT "namespaces"."traversal_ids" FROM "namespaces" INNER JOIN "group_group_links" ON "group_group_links"."shared_with_group_id" = "namespaces"."id" WHERE "namespaces"."type" = 'Group' AND "group_group_links"."shared_group_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}')))) SELECT "namespaces"."id" FROM "namespaces" INNER JOIN (SELECT DISTINCT unnest("base_ancestors_cte"."traversal_ids") FROM base_ancestors_cte) AS ancestors(ancestor_id) ON namespaces.id = ancestors.ancestor_id WHERE "namespaces"."type" = 'Group') AND "members"."type" = 'GroupMember' AND "members"."source_type" = 'Namespace' AND "members"."user_id" NOT IN (SELECT "namespace_bans"."user_id" FROM "namespace_bans" WHERE "namespace_bans"."namespace_id" = 2519) /* allow_cross_joins_across_databases */) AND "users"."user_type" IN (0, 4, 5) /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/finders/namespaces/billed_users_finder.rb:34:in `block in calculate_user_ids'*/6530 SELECT "users"."id" FROM "users" WHERE "users"."id" IN (SELECT "members"."user_id" FROM "members" LEFT OUTER JOIN "users" ON "users"."id" = "members"."user_id" WHERE "users"."state" = 'active' AND "members"."state" = 0 AND "members"."requested_at" IS NULL AND "members"."invite_token" IS NULL AND (members.access_level > 5) AND "members"."source_id" IN (WITH "base_ancestors_cte" AS MATERIALIZED (SELECT "namespaces"."traversal_ids" FROM "namespaces" INNER JOIN "project_group_links" ON "project_group_links"."group_id" = "namespaces"."id" WHERE "namespaces"."type" = 'Group' AND "project_group_links"."project_id" IN (SELECT "projects"."id" FROM "projects" WHERE "projects"."namespace_id" IN (SELECT namespaces.traversal_ids[array_length(namespaces.traversal_ids, 1)] AS id FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}'))))) SELECT "namespaces"."id" FROM "namespaces" INNER JOIN (SELECT DISTINCT unnest("base_ancestors_cte"."traversal_ids") FROM base_ancestors_cte) AS ancestors(ancestor_id) ON namespaces.id = ancestors.ancestor_id WHERE "namespaces"."type" = 'Group') AND "members"."type" = 'GroupMember' AND "members"."source_type" = 'Namespace' AND "members"."user_id" NOT IN (SELECT "namespace_bans"."user_id" FROM "namespace_bans" WHERE "namespace_bans"."namespace_id" = 2519) /* allow_cross_joins_across_databases */) AND "users"."user_type" IN (0, 4, 5) /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/finders/namespaces/billed_users_finder.rb:34:in `block in calculate_user_ids'*/6531 SELECT * FROM (WITH RECURSIVE "array_cte" AS MATERIALIZED (SELECT "projects"."id" FROM "projects" WHERE "projects"."namespace_id" IN (SELECT namespaces.traversal_ids[array_length(namespaces.traversal_ids, 1)] AS id FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}')))), "recursive_keyset_cte" AS ((SELECT NULL::merge_requests_compliance_violations AS records, array_cte_id_array, merge_requests_compliance_violations_severity_level_array, merge_requests_compliance_violations_id_array, 0::bigint AS count FROM (SELECT ARRAY_AGG("array_cte"."id") AS array_cte_id_array, ARRAY_AGG("merge_requests_compliance_violations"."severity_level") AS merge_requests_compliance_violations_severity_level_array, ARRAY_AGG("merge_requests_compliance_violations"."id") AS merge_requests_compliance_violations_id_array FROM (SELECT "array_cte"."id" FROM array_cte) array_cte LEFT JOIN LATERAL (SELECT "merge_requests_compliance_violations"."severity_level" AS severity_level, "merge_requests_compliance_violations"."id" AS id FROM "merge_requests_compliance_violations" WHERE "merge_requests_compliance_violations"."target_project_id" = "array_cte"."id" ORDER BY "merge_requests_compliance_violations"."severity_level" DESC, "merge_requests_compliance_violations"."id" DESC LIMIT 1) merge_requests_compliance_violations ON TRUE WHERE "merge_requests_compliance_violations"."severity_level" IS NOT NULL AND "merge_requests_compliance_violations"."id" IS NOT NULL) array_scope_lateral_query LIMIT 1)6532 UNION ALL6533 (SELECT (SELECT merge_requests_compliance_violations FROM "merge_requests_compliance_violations" WHERE "merge_requests_compliance_violations"."id" = recursive_keyset_cte.merge_requests_compliance_violations_id_array[position] LIMIT 1), array_cte_id_array, recursive_keyset_cte.merge_requests_compliance_violations_severity_level_array[:position_query.position-1]||next_cursor_values.severity_level||recursive_keyset_cte.merge_requests_compliance_violations_severity_level_array[position_query.position+1:], recursive_keyset_cte.merge_requests_compliance_violations_id_array[:position_query.position-1]||next_cursor_values.id||recursive_keyset_cte.merge_requests_compliance_violations_id_array[position_query.position+1:], recursive_keyset_cte.count + 1 FROM recursive_keyset_cte,6534 LATERAL (SELECT severity_level, id, position FROM UNNEST(merge_requests_compliance_violations_severity_level_array, merge_requests_compliance_violations_id_array) WITH ORDINALITY AS u(severity_level, id, position) WHERE severity_level IS NOT NULL AND id IS NOT NULL ORDER BY 1 DESC, 2 DESC LIMIT 1) AS position_query,6535 LATERAL (SELECT "record"."severity_level", "record"."id" FROM (VALUES (NULL, NULL)) AS nulls LEFT JOIN (SELECT "merge_requests_compliance_violations"."severity_level" AS severity_level, "merge_requests_compliance_violations"."id" AS id FROM "merge_requests_compliance_violations" WHERE "merge_requests_compliance_violations"."target_project_id" = recursive_keyset_cte.array_cte_id_array[position] AND (("merge_requests_compliance_violations"."severity_level", "merge_requests_compliance_violations"."id") < (recursive_keyset_cte.merge_requests_compliance_violations_severity_level_array[position], recursive_keyset_cte.merge_requests_compliance_violations_id_array[position])) ORDER BY "merge_requests_compliance_violations"."severity_level" DESC, "merge_requests_compliance_violations"."id" DESC LIMIT 1) record ON TRUE LIMIT 1) AS next_cursor_values6536 )) SELECT (records).* FROM "recursive_keyset_cte" AS "merge_requests_compliance_violations" WHERE (count <> 0)) merge_requests_compliance_violations LIMIT 100 OFFSET 0 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/connection_redaction.rb:23:in `block in nodes'*/6537 SELECT "namespace_ci_cd_settings".* FROM "namespace_ci_cd_settings" WHERE "namespace_ci_cd_settings"."namespace_id" = 2519 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/models/ee/ci/namespace_settings.rb:14:in `allow_stale_runner_pruning?'*/6538 SELECT "cluster_agents".* FROM "cluster_agents" WHERE "cluster_agents"."project_id" IN (SELECT "projects"."id" FROM "projects" WHERE "projects"."namespace_id" IN (SELECT namespaces.traversal_ids[array_length(namespaces.traversal_ids, 1)] AS id FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}')))) ORDER BY "cluster_agents"."name" ASC, "cluster_agents"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6539 SELECT COUNT(*) FROM "cluster_agents" WHERE "cluster_agents"."project_id" IN (SELECT "projects"."id" FROM "projects" WHERE "projects"."namespace_id" IN (SELECT namespaces.traversal_ids[array_length(namespaces.traversal_ids, 1)] AS id FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}')))) /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6540 SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}')) /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/group.rb:580:in `block in self_and_descendants_ids'*/6541 SELECT "project_compliance_standards_adherence".* FROM "project_compliance_standards_adherence" WHERE "project_compliance_standards_adherence"."namespace_id" = 2519 ORDER BY "project_compliance_standards_adherence"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6542 SELECT "projects"."id", "projects"."name", "projects"."path", "projects"."description", "projects"."created_at", "projects"."updated_at", "projects"."creator_id", "projects"."namespace_id", "projects"."last_activity_at", "projects"."import_url", "projects"."visibility_level", "projects"."archived", "projects"."avatar", "projects"."merge_requests_template", "projects"."star_count", "projects"."merge_requests_rebase_enabled", "projects"."import_type", "projects"."import_source", "projects"."approvals_before_merge", "projects"."reset_approvals_on_push", "projects"."merge_requests_ff_only_enabled", "projects"."issues_template", "projects"."mirror", "projects"."mirror_last_update_at", "projects"."mirror_last_successful_update_at", "projects"."mirror_user_id", "projects"."shared_runners_enabled", "projects"."runners_token", "projects"."build_allow_git_fetch", "projects"."build_timeout", "projects"."mirror_trigger_builds", "projects"."pending_delete", "projects"."public_builds", "projects"."last_repository_check_failed", "projects"."last_repository_check_at", "projects"."only_allow_merge_if_pipeline_succeeds", "projects"."has_external_issue_tracker", "projects"."repository_storage", "projects"."repository_read_only", "projects"."request_access_enabled", "projects"."has_external_wiki", "projects"."ci_config_path", "projects"."lfs_enabled", "projects"."description_html", "projects"."only_allow_merge_if_all_discussions_are_resolved", "projects"."repository_size_limit", "projects"."printing_merge_request_link_enabled", "projects"."auto_cancel_pending_pipelines", "projects"."service_desk_enabled", "projects"."cached_markdown_version", "projects"."delete_error", "projects"."last_repository_updated_at", "projects"."disable_overriding_approvers_per_merge_request", "projects"."storage_version", "projects"."resolve_outdated_diff_discussions", "projects"."remote_mirror_available_overridden", "projects"."only_mirror_protected_branches", "projects"."pull_mirror_available_overridden", "projects"."jobs_cache_index", "projects"."external_authorization_classification_label", "projects"."mirror_overwrites_diverged_branches", "projects"."pages_https_only", "projects"."external_webhook_token", "projects"."packages_enabled", "projects"."merge_requests_author_approval", "projects"."pool_repository_id", "projects"."runners_token_encrypted", "projects"."bfg_object_map", "projects"."detected_repository_languages", "projects"."merge_requests_disable_committers_approval", "projects"."require_password_to_approve", "projects"."max_pages_size", "projects"."max_artifacts_size", "projects"."pull_mirror_branch_prefix", "projects"."remove_source_branch_after_merge", "projects"."marked_for_deletion_at", "projects"."marked_for_deletion_by_user_id", "projects"."autoclose_referenced_issues", "projects"."suggestion_commit_message", "projects"."project_namespace_id", "projects"."hidden" FROM "projects" WHERE "projects"."namespace_id" = 2519 /* allow_cross_joins_across_databases */ ORDER BY "projects"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6543 SELECT COUNT(*) FROM "projects" WHERE "projects"."namespace_id" = 2519 /* allow_cross_joins_across_databases */ /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6544 SELECT "namespace_package_settings".* FROM "namespace_package_settings" WHERE "namespace_package_settings"."namespace_id" = 2519 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/namespace.rb:287:in `package_settings'*/6545 SELECT "timelog_categories".* FROM "timelog_categories" WHERE "timelog_categories"."namespace_id" = 2519 ORDER BY "timelog_categories"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6546 SELECT "achievements".* FROM "achievements" WHERE "achievements"."namespace_id" = 2519 ORDER BY "achievements"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6547 SELECT COUNT(*) FROM "achievements" WHERE "achievements"."namespace_id" = 2519 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6548 SELECT "namespace_limits".* FROM "namespace_limits" WHERE "namespace_limits"."namespace_id" = 2519 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/models/ee/namespace.rb:179:in `namespace_limit'*/6549 SELECT SUM((("project_statistics"."repository_size" + "project_statistics"."lfs_objects_size") - "projects"."repository_size_limit")) FROM "projects" INNER JOIN "project_statistics" ON "project_statistics"."project_id" = "projects"."id" WHERE "projects"."namespace_id" IN (SELECT namespaces.traversal_ids[array_length(namespaces.traversal_ids, 1)] AS id FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}'))) AND "projects"."repository_size_limit" != 0 AND ("project_statistics"."repository_size" + "project_statistics"."lfs_objects_size") > "projects"."repository_size_limit" LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/models/ee/namespace.rb:265:in `block in total_repository_size_excess'*/6550 SELECT SUM(("project_statistics"."repository_size" + "project_statistics"."lfs_objects_size")) FROM "projects" INNER JOIN "project_statistics" ON "project_statistics"."project_id" = "projects"."id" WHERE "projects"."namespace_id" IN (SELECT namespaces.traversal_ids[array_length(namespaces.traversal_ids, 1)] AS id FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}'))) LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/models/ee/namespace.rb:279:in `block in total_repository_size'*/6551 SELECT COUNT(*) FROM "projects" INNER JOIN "project_statistics" ON "project_statistics"."project_id" = "projects"."id" WHERE "projects"."namespace_id" IN (SELECT namespaces.traversal_ids[array_length(namespaces.traversal_ids, 1)] AS id FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}'))) AND "projects"."repository_size_limit" != 0 AND ("project_statistics"."repository_size" + "project_statistics"."lfs_objects_size") > "projects"."repository_size_limit" /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/models/ee/namespace.rb:271:in `block in repository_size_excess_project_count'*/6552 SELECT "security_orchestration_policy_configurations".* FROM "security_orchestration_policy_configurations" WHERE "security_orchestration_policy_configurations"."namespace_id" = 2519 LIMIT 1 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/finders/security/scan_policy_base_finder.rb:27:in `policy_configuration'*/6553 SELECT "timelogs"."id", "timelogs"."time_spent", "timelogs"."user_id", "timelogs"."created_at", "timelogs"."updated_at", "timelogs"."issue_id", "timelogs"."merge_request_id", "timelogs"."spent_at", "timelogs"."project_id", "timelogs"."summary", "timelogs"."note_id" FROM "timelogs" INNER JOIN "projects" ON "projects"."id" = "timelogs"."project_id" WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}'))) AND (spent_at >= '2021-03-01 00:00:00') AND (spent_at <= '2021-03-30 23:59:59.999999') ORDER BY "timelogs"."spent_at" ASC NULLS LAST, "timelogs"."id" DESC LIMIT 101 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/pagination/keyset/connection.rb:122:in `block in limited_nodes'*/6554 SELECT SUM("timelogs"."time_spent") FROM "timelogs" INNER JOIN "projects" ON "projects"."id" = "timelogs"."project_id" WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}'))) AND (spent_at >= '2021-03-01 00:00:00') AND (spent_at <= '2021-03-30 23:59:59.999999') /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/time_tracking/timelog_connection_type.rb:20:in `total_spent_time'*/6555 SELECT COUNT(*) FROM "timelogs" INNER JOIN "projects" ON "projects"."id" = "timelogs"."project_id" WHERE "projects"."namespace_id" IN (SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND (traversal_ids @> ('{2519}'))) AND (spent_at >= '2021-03-01 00:00:00') AND (spent_at <= '2021-03-30 23:59:59.999999') /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/types/countable_connection_type.rb:20:in `count'*/6556 SELECT "namespaces".* FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND "namespaces"."id" = 0 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/loaders/batch_model_loader.rb:25:in `block in find'*/6557 SELECT "namespace_root_storage_statistics".* FROM "namespace_root_storage_statistics" WHERE "namespace_root_storage_statistics"."namespace_id" IN (2518, 2519) /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/lib/gitlab/graphql/loaders/batch_root_storage_statistics_loader.rb:15:in `block in find'*/6558 SELECT "compliance_management_frameworks"."id" AS t0_r0, "compliance_management_frameworks"."name" AS t0_r1, "compliance_management_frameworks"."description" AS t0_r2, "compliance_management_frameworks"."color" AS t0_r3, "compliance_management_frameworks"."namespace_id" AS t0_r4, "compliance_management_frameworks"."pipeline_configuration_full_path" AS t0_r5, "compliance_management_frameworks"."created_at" AS t0_r6, "compliance_management_frameworks"."updated_at" AS t0_r7, "namespaces"."id" AS t1_r0, "namespaces"."name" AS t1_r1, "namespaces"."path" AS t1_r2, "namespaces"."owner_id" AS t1_r3, "namespaces"."created_at" AS t1_r4, "namespaces"."updated_at" AS t1_r5, "namespaces"."type" AS t1_r6, "namespaces"."description" AS t1_r7, "namespaces"."avatar" AS t1_r8, "namespaces"."membership_lock" AS t1_r9, "namespaces"."share_with_group_lock" AS t1_r10, "namespaces"."visibility_level" AS t1_r11, "namespaces"."request_access_enabled" AS t1_r12, "namespaces"."ldap_sync_status" AS t1_r13, "namespaces"."ldap_sync_error" AS t1_r14, "namespaces"."ldap_sync_last_update_at" AS t1_r15, "namespaces"."ldap_sync_last_successful_update_at" AS t1_r16, "namespaces"."ldap_sync_last_sync_at" AS t1_r17, "namespaces"."description_html" AS t1_r18, "namespaces"."lfs_enabled" AS t1_r19, "namespaces"."parent_id" AS t1_r20, "namespaces"."shared_runners_minutes_limit" AS t1_r21, "namespaces"."repository_size_limit" AS t1_r22, "namespaces"."require_two_factor_authentication" AS t1_r23, "namespaces"."two_factor_grace_period" AS t1_r24, "namespaces"."cached_markdown_version" AS t1_r25, "namespaces"."project_creation_level" AS t1_r26, "namespaces"."runners_token" AS t1_r27, "namespaces"."file_template_project_id" AS t1_r28, "namespaces"."saml_discovery_token" AS t1_r29, "namespaces"."runners_token_encrypted" AS t1_r30, "namespaces"."custom_project_templates_group_id" AS t1_r31, "namespaces"."auto_devops_enabled" AS t1_r32, "namespaces"."extra_shared_runners_minutes_limit" AS t1_r33, "namespaces"."last_ci_minutes_notification_at" AS t1_r34, "namespaces"."last_ci_minutes_usage_notification_level" AS t1_r35, "namespaces"."subgroup_creation_level" AS t1_r36, "namespaces"."emails_disabled" AS t1_r37, "namespaces"."max_pages_size" AS t1_r38, "namespaces"."max_artifacts_size" AS t1_r39, "namespaces"."mentions_disabled" AS t1_r40, "namespaces"."default_branch_protection" AS t1_r41, "namespaces"."unlock_membership_to_ldap" AS t1_r42, "namespaces"."max_personal_access_token_lifetime" AS t1_r43, "namespaces"."push_rule_id" AS t1_r44, "namespaces"."shared_runners_enabled" AS t1_r45, "namespaces"."allow_descendants_override_disabled_shared_runners" AS t1_r46, "namespaces"."traversal_ids" AS t1_r47, "namespaces"."organization_id" AS t1_r48 FROM "compliance_management_frameworks" LEFT OUTER JOIN "namespaces" ON "namespaces"."id" = "compliance_management_frameworks"."namespace_id" WHERE "namespaces"."id" IN (2518, 2519) /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/ee/app/graphql/resolvers/compliance_management/framework_resolver.rb:30:in `group_by'*/6559 SELECT COUNT(*) AS "count_all", "user_id" AS "user_id" FROM ((SELECT namespaces.*, members.user_id as user_id FROM "namespaces" INNER JOIN "members" ON "members"."source_type" = 'Namespace' AND "members"."requested_at" IS NULL AND "members"."access_level" != 5 AND "members"."source_id" = "namespaces"."id" AND "members"."type" = 'GroupMember' WHERE "namespaces"."type" = 'Group' AND "members"."user_id" IN (1661, 1662) AND (access_level >= 10))6560 UNION6561 (SELECT namespaces.*, project_authorizations.user_id as user_id FROM "namespaces" INNER JOIN "projects" ON "projects"."namespace_id" = "namespaces"."id" INNER JOIN "project_authorizations" ON "project_authorizations"."project_id" = "projects"."id" WHERE "namespaces"."type" = 'Group' AND "project_authorizations"."user_id" IN (1661, 1662))) namespaces GROUP BY "user_id" /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/finders/user_groups_counter.rb:13:in `block in execute'*/6562 SELECT "users".* FROM "users" WHERE "users"."id" IN (1661, 1662) /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/graphql/resolvers/group_members/notification_email_resolver.rb:14:in `block in resolve'*/6563 SELECT "namespaces"."id" FROM "namespaces" WHERE "namespaces"."type" = 'Group' AND "namespaces"."id" = 2518 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/group.rb:574:in `block in self_and_ancestors_ids'*/6564 SELECT "notification_settings".* FROM "notification_settings" WHERE "notification_settings"."source_type" = 'Namespace' AND "notification_settings"."source_id" = 2518 AND "notification_settings"."user_id" = 1661 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/group.rb:374:in `notification_email_for'*/6565 SELECT "notification_settings".* FROM "notification_settings" WHERE "notification_settings"."source_type" = 'Namespace' AND "notification_settings"."source_id" = 2518 AND "notification_settings"."user_id" = 1662 /*application:test,correlation_id:f90d9870-5eab-42d3-8315-015e689055fb,endpoint_id:GraphqlController#execute,db_config_name:main,line:/app/models/group.rb:374:in `notification_email_for'*/6566 # ./spec/requests/api/graphql/group_query_spec.rb:106:in `block (4 levels) in <top (required)>'6567 # ./spec/spec_helper.rb:453:in `block (3 levels) in <top (required)>'6568 # ./spec/support/sidekiq_middleware.rb:18:in `with_sidekiq_server_middleware'6569 # ./spec/spec_helper.rb:444:in `block (2 levels) in <top (required)>'6570 # ./spec/spec_helper.rb:440:in `block (3 levels) in <top (required)>'6571 # ./lib/gitlab/application_context.rb:66:in `with_raw_context'6572 # ./spec/spec_helper.rb:440:in `block (2 levels) in <top (required)>'6573 # ./spec/spec_helper.rb:268:in `block (2 levels) in <top (required)>'6574 # ./spec/support/system_exit_detected.rb:7:in `block (2 levels) in <top (required)>'6575 # ./spec/support/fast_quarantine.rb:22:in `block (2 levels) in <top (required)>'6576 # ./spec/support/database/prevent_cross_joins.rb:106:in `block (3 levels) in <top (required)>'6577 # ./spec/support/database/prevent_cross_joins.rb:60:in `with_cross_joins_prevented'6578 # ./spec/support/database/prevent_cross_joins.rb:106:in `block (2 levels) in <top (required)>'6579 3) getting group information Query group(fullPath) with timelog categories for N+1 queries avoids N+1 database queries6581 Failure/Error: expect { run_with_clean_state(query, context: ctx) }.not_to exceed_query_limit(control)6582 Expected a maximum of 3 queries, got 5:6583 Query Diff:6584 -----------6585 SELECT "saml_providers".* FROM "saml_providers"...6586 -- (expected: 0, got: 1)6587 WHERE "saml_providers"."group_id" = 2526 LIMIT 16588 SELECT "timelog_categories".* FROM "timelog_categories"...6589 -- (expected: 0, got: 1)6590 WHERE "timelog_categories"."namespace_id" = 2526 ORDER BY "timelog_categories"."id" DESC LIMIT 1016591 # ./spec/requests/api/graphql/group_query_spec.rb:201:in `block (5 levels) in <top (required)>'6592 # ./spec/spec_helper.rb:453:in `block (3 levels) in <top (required)>'6593 # ./spec/support/sidekiq_middleware.rb:18:in `with_sidekiq_server_middleware'6594 # ./spec/spec_helper.rb:444:in `block (2 levels) in <top (required)>'6595 # ./spec/spec_helper.rb:440:in `block (3 levels) in <top (required)>'6596 # ./lib/gitlab/application_context.rb:66:in `with_raw_context'6597 # ./spec/spec_helper.rb:440:in `block (2 levels) in <top (required)>'6598 # ./spec/spec_helper.rb:268:in `block (2 levels) in <top (required)>'6599 # ./spec/support/system_exit_detected.rb:7:in `block (2 levels) in <top (required)>'6600 # ./spec/support/fast_quarantine.rb:22:in `block (2 levels) in <top (required)>'6601 # ./spec/support/database/prevent_cross_joins.rb:106:in `block (3 levels) in <top (required)>'6602 # ./spec/support/database/prevent_cross_joins.rb:60:in `with_cross_joins_prevented'6603 # ./spec/support/database/prevent_cross_joins.rb:106:in `block (2 levels) in <top (required)>'6604Finished in 31 minutes 57 seconds (files took 1 minute 25.71 seconds to load)66052656 examples, 0 failures, 3 pending6606Randomized with seed 635276607[TEST PROF INFO] Time spent in factories: 13:15.229 (40.61% of total time)6608RSpec exited with 0.6609No examples to retry, congrats!6611Running after script...6612$ echo -e "\e[0Ksection_start:`date +%s`:report_results_section[collapsed=true]\r\e[0KReport results"6617Not uploading cache ruby-gems-debian-bullseye-ruby-3.0-16 due to policy6619Uploading artifacts...6620WARNING: auto_explain/: no matching files. Ensure that the artifact path is relative to the working directory (/builds/gitlab-org/gitlab) 6621coverage/: found 5 matching artifact files and directories 6622crystalball/: found 2 matching artifact files and directories 6623deprecations/: found 8 matching artifact files and directories 6624knapsack/: found 4 matching artifact files and directories 6625rspec/: found 16 matching artifact files and directories 6626WARNING: tmp/capybara/: no matching files. Ensure that the artifact path is relative to the working directory (/builds/gitlab-org/gitlab) 6627log/*.log: found 16 matching artifact files and directories 6628WARNING: Upload request redirected location=https://gitlab.com/api/v4/jobs/4900739537/artifacts?artifact_format=zip&artifact_type=archive&expire_in=31d new-url=https://gitlab.com6629WARNING: Retrying... context=artifacts-uploader error=request redirected6630Uploading artifacts as "archive" to coordinator... 201 Created id=4900739537 responseStatus=201 Created token=64_f51js6631Uploading artifacts...6632rspec/rspec-*.xml: found 1 matching artifact files and directories 6633WARNING: Upload request redirected location=https://gitlab.com/api/v4/jobs/4900739537/artifacts?artifact_format=gzip&artifact_type=junit&expire_in=31d new-url=https://gitlab.com6634WARNING: Retrying... context=artifacts-uploader error=request redirected6635Uploading artifacts as "junit" to coordinator... 201 Created id=4900739537 responseStatus=201 Created token=64_f51js6637Job succeeded