Skip to content
Snippets Groups Projects

Add status deprecated to the packages statuses

Merged Dzmitry (Dima) Meshcharakou requested to merge 474231-add-status-deprecated into master

What does this MR do and why?

Introduce the new status deprecated to the packages statuses. It'll be first used by npm packages that become deprecated.

The MR changes the Packages::Npm::DeprecatePackageService to also update the status to deprecated for packages when they are deprecated.

Additionally, GraphQL and REST API endpoints were changed to also return deprecated packages.

Since the deprecation operation was already supported by the Package registry for a while, this MR also adds the background migration to update the status to deprecated for existing deprecated npm packages.

References

Please include cross links to any resources that are relevant to this MR. This will give reviewers and future readers helpful context to give an efficient review of the changes introduced.

MR acceptance checklist

Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Screenshots or screen recordings

No.

How to set up and validate locally

  1. Publish npm package to GitLab package registry docs.

  2. Deprecate the package docs.

  3. Verify that the package's status was changed to deprecated.

    ::Packages::Package.find_by(name: <package-name>).status
  4. Visit the package's details page http://gdk.test:3000/<project full path>/-/packages/<package-id> and check that it contains the deprecation notice:

    This package version has been deprecated.

  5. Undeprecate the deprecated package docs.

  6. Verify that the package's status was changed from deprecated to default.

    ::Packages::Package.find_by(name: <package-name>).status

Related to #474231 (closed)

Edited by Dzmitry (Dima) Meshcharakou

Merge request reports

Merge train pipeline #1593064417 passed

Merge train pipeline passed for 46541180

Merged by Michael KozonoMichael Kozono 3 months ago (Dec 17, 2024 7:43pm UTC)

Loading

Pipeline #1593065022 passed

Pipeline passed for 91a32dad on master

10 environments impacted.
  • Ghost User
  • Ghost User
  • Ghost User
  • 6 Warnings
    :warning: b80d9c43: The commit subject must contain at least 3 words. For more information, take a look at our Commit message guidelines.
    :warning: 9f763e8c: The commit subject must contain at least 3 words. For more information, take a look at our Commit message guidelines.
    :warning: 009b7e43: The commit subject must contain at least 3 words. For more information, take a look at our Commit message guidelines.
    :warning: f6be212e: The commit subject must contain at least 3 words. For more information, take a look at our Commit message guidelines.
    :warning: 934f745f: The commit subject must contain at least 3 words. For more information, take a look at our Commit message guidelines.
    :warning: 4e60edce: Commits that change 30 or more lines across at least 3 files should describe these changes in the commit body. For more information, take a look at our Commit message guidelines.
    1 Message
    :book: This merge request adds or changes documentation files. A review from the Technical Writing team before you merge is recommended. Reviews can happen after you merge.

    Documentation review

    The following files require a review from a technical writer:

    The review does not need to block merging this merge request. See the:

    Reviewer roulette

    Category Reviewer Maintainer
    backend @dillonwheeler profile link current availability (UTC-5, 6 hours behind author) @eduardobonet profile link current availability (UTC+1, same timezone as author)
    database @terrichu profile link current availability (UTC-5, 6 hours behind author) @DylanGriffith profile link current availability (UTC+11, 10 hours ahead of author)

    Please refer to documentation page for guidance on how you can benefit from the Reviewer Roulette, or use the GitLab Review Workload Dashboard to find other available reviewers.

    If needed, you can retry the :repeat: danger-review job that generated this comment.

    Generated by :no_entry_sign: Danger

    Edited by Ghost User
  • Dzmitry (Dima) Meshcharakou changed the description

    changed the description

  • added 1 commit

    • 152c15c7 - Add status deprecated to the packages statuses

    Compare with previous version

  • added 1 commit

    • b5a5ee63 - Add status deprecated to the packages statuses

    Compare with previous version

  • Database migrations (on the main database)

    Migrations included in this change have been executed on gitlab.com data for testing purposes. For details, please see the migration testing pipeline (limited access).

    Migration Type Total runtime Result DB size change
    20241129124907 - AddIndexOnPackageJsonDeprecateExistToPackagesNpmMetadata Post deploy 120.3 s :white_check_mark: +128.00 KiB
    20241201164238 - QueueUpdateStatusForDeprecatedNpmPackages Post deploy 5.5 s :white_check_mark: +0.00 B
    Runtime Histogram for all migrations
    Query Runtime Count
    0 seconds - 0.01 seconds 0
    0.01 seconds - 0.1 seconds 0
    0.1 seconds - 1 second 8
    1 second - 5 seconds 0
    5 seconds - 15 seconds 0
    15 seconds - 5 minutes 1
    5 minutes + 0

    Migration: 20241129124907 - AddIndexOnPackageJsonDeprecateExistToPackagesNpmMetadata

    * Type: Post deploy
    * Duration: 120.3 s
    * Database size change: +128.00 KiB
    Calls Total Time Max Time Mean Time Rows Query
    1 114901.0 ms 114901.0 ms 114901.0 ms 0
    CREATE INDEX CONCURRENTLY "index_packages_npm_metadata_on_package_json_deprecate_exist" ON "packages_npm_metadata" ("package_id")
    WHERE (package_json ? 'deprecated')
    2 0.0 ms 0.0 ms 0.0 ms 2
    SELECT pg_backend_pid()
    Histogram for AddIndexOnPackageJsonDeprecateExistToPackagesNpmMetadata
    Query Runtime Count
    0 seconds - 0.01 seconds 0
    0.01 seconds - 0.1 seconds 0
    0.1 seconds - 1 second 2
    1 second - 5 seconds 0
    5 seconds - 15 seconds 0
    15 seconds - 5 minutes 1
    5 minutes + 0

    Migration: 20241201164238 - QueueUpdateStatusForDeprecatedNpmPackages

    * Type: Post deploy
    * Duration: 5.5 s
    * Database size change: +0.00 B
    Calls Total Time Max Time Mean Time Rows Query
    1 2.7 ms 2.7 ms 2.7 ms 1
    SELECT MAX("package_id")
    FROM "packages_npm_metadata"
    1 1.2 ms 1.2 ms 1.2 ms 1
    INSERT INTO "batched_background_migrations" ("created_at", "updated_at", "max_value", "batch_size", "sub_batch_size", "interval", "status", "job_class_name", "table_name", "column_name", "total_tuple_count", "started_at", "gitlab_schema", "queued_migration_version") VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, $14) RETURNING "id"
    1 0.6 ms 0.6 ms 0.6 ms 0
    SELECT $1 AS one
    FROM "batched_background_migrations" WHERE "batched_background_migrations"."job_class_name" = $2 AND "batched_background_migrations"."table_name" = $3 AND "batched_background_migrations"."column_name" = $4 AND (job_arguments = $5) AND "batched_background_migrations"."gitlab_schema" = $6
    LIMIT $7
    1 0.1 ms 0.1 ms 0.1 ms 0
    SELECT $1 AS one
    FROM "batched_background_migrations" WHERE "batched_background_migrations"."job_arguments" = $2 AND "batched_background_migrations"."job_class_name" = $3 AND "batched_background_migrations"."table_name" = $4 AND "batched_background_migrations"."column_name" = $5
    LIMIT $6
    2 0.0 ms 0.0 ms 0.0 ms 2
    SELECT pg_backend_pid()
    Histogram for QueueUpdateStatusForDeprecatedNpmPackages
    Query Runtime Count
    0 seconds - 0.01 seconds 0
    0.01 seconds - 0.1 seconds 0
    0.1 seconds - 1 second 6
    1 second - 5 seconds 0
    5 seconds - 15 seconds 0
    15 seconds - 5 minutes 0
    5 minutes + 0

    Background Migration: UpdateStatusForDeprecatedNpmPackages

    Sampled 1 batches. Estimated Time to complete: 4 days, 12 hours, and 24 minutes
    • Interval: 120s
    • Max batch size: 0
    • Estimated seconds to complete: 390240s
    • Average batch time: 9.23s
    • Batch size: 1000
    • N. of batches sampled: 1
    • N. of failed batches: 0

    Time estimation is conservative and based on sampling production data in a test environment. It represents the max time that migration could take. The actual time may differ from this estimation.

    Consider changing max_batch_size and interval if this estimate is unacceptable.

    Calls Total Time Max Time Mean Time Rows Query
    9 3605.9 ms 800.6 ms 400.7 ms 900
    UPDATE packages_packages
    SET status = $1
    WHERE packages_packages.id IN (
    SELECT packages_npm_metadata.package_id
    FROM packages_npm_metadata
    WHERE packages_npm_metadata.package_id BETWEEN $2 AND $3 AND package_json ? $4 AND packages_npm_metadata.package_id >= $5 AND packages_npm_metadata.package_id < $6
    )
    1 100.9 ms 100.9 ms 100.9 ms 100
    UPDATE packages_packages
    SET status = $1
    WHERE packages_packages.id IN (
    SELECT packages_npm_metadata.package_id
    FROM packages_npm_metadata
    WHERE packages_npm_metadata.package_id BETWEEN $2 AND $3 AND package_json ? $4 AND packages_npm_metadata.package_id >= $5
    )
    1 0.7 ms 0.7 ms 0.7 ms 1
    UPDATE batched_background_migration_jobs
    SET updated_at = $1, finished_at = $2, status = $3, metrics = $4
    WHERE batched_background_migration_jobs.id = $5
    10 0.7 ms 0.2 ms 0.1 ms 9
    SELECT packages_npm_metadata.package_id
    FROM packages_npm_metadata
    WHERE packages_npm_metadata.package_id BETWEEN $1 AND $2 AND package_json ? $3 AND packages_npm_metadata.package_id >= $4
    ORDER BY packages_npm_metadata.package_id ASC
    LIMIT $5
    OFFSET $6
    2 0.3 ms 0.2 ms 0.2 ms 2
    INSERT INTO batched_background_migration_job_transition_logs (batched_background_migration_job_id, created_at, updated_at, previous_status, next_status) VALUES ($1, $2, $3, $4, $5) RETURNING id
    1 0.1 ms 0.1 ms 0.1 ms 1
    UPDATE batched_background_migration_jobs
    SET updated_at = $1, started_at = $2, status = $3, attempts = $4
    WHERE batched_background_migration_jobs.id = $5
    2 0.1 ms 0.1 ms 0.0 ms 2
    SELECT batched_background_migration_jobs.*
    FROM batched_background_migration_jobs
    WHERE batched_background_migration_jobs.id = $1
    LIMIT $2
    1 0.0 ms 0.0 ms 0.0 ms 1
    SELECT packages_npm_metadata.package_id
    FROM packages_npm_metadata
    WHERE packages_npm_metadata.package_id BETWEEN $1 AND $2 AND package_json ? $3
    ORDER BY packages_npm_metadata.package_id ASC
    LIMIT $4
    1 0.0 ms 0.0 ms 0.0 ms 1
    SELECT sum(batched_background_migration_jobs.batch_size)
    FROM batched_background_migration_jobs
    WHERE batched_background_migration_jobs.batched_background_migration_id = $1 AND batched_background_migration_jobs.status IN ($2)
    Histogram of batch runtimes for UpdateStatusForDeprecatedNpmPackages
    Batch Runtime Count
    0 seconds - 10 seconds 1
    10 seconds - 1 minute 0
    1 minute - 2 minutes 0
    2 minutes - 3 minutes 0
    3 minutes - 5 minutes 0
    5 minutes + 0
    Histogram across all sampled batches of UpdateStatusForDeprecatedNpmPackages
    Query Runtime Count
    0 seconds - 0.1 seconds 0
    0.1 seconds - 0.5 seconds 25
    0.5 seconds - 1 second 3
    1 second - 2 seconds 0
    2 seconds - 5 seconds 0
    5 seconds + 0

    Background Migration: BackfillSeatAssignmentsTable

    Sampled 24 batches. Estimated Time to complete: 6 days, 22 hours, and 44 minutes
    • Interval: 120s
    • Max batch size: 0
    • Estimated seconds to complete: 600240s
    • Average batch time: 23.73s
    • Batch size: 10000
    • N. of batches sampled: 24
    • N. of failed batches: 0

    Time estimation is conservative and based on sampling production data in a test environment. It represents the max time that migration could take. The actual time may differ from this estimation.

    Consider changing max_batch_size and interval if this estimate is unacceptable.

    Calls Total Time Max Time Mean Time Rows Query
    230 153263.7 ms 1671.3 ms 666.4 ms 154507
    INSERT INTO subscription_seat_assignments (namespace_id, user_id, created_at, updated_at) VALUES ($1, $2, $3, $4), ($5, $6, $7, $8), ($9, $10, $11, $12), ($13, $14, $15, $16), ($17, $18, $19, $20), ($21, $22, $23, $24), ($25, $26, $27, $28), ($29, $30, $31, $32), ($33, $34, $35, $36), ($37, $38, $39, $40), ($41, $42, $43, $44), ($45, $46, $47, $48), ($49, $50, $51, $52), ($53, $54, $55, $56), ($57, $58, $59, $60), ($61, $62, $63, $64), ($65, $66, $67, $68), ($69, $70, $71, $72), ($73, $74, $75, $76), ($77, $78, $79, $80), ($81, $82, $83, $84), ($85, $86, $87, $88), ($89, $90, $91, $92), ($93, $94, $95, $96), ($97, $98, $99, $100), ($101, $102, $103, $104), ($105, $106, $107, $108), ($109, $110, $111, $112), ($113, $114, $115, $116), ($117, $118, $119, $120), ($121, $122, $123, $124), ($125, $126, $127, $128), ($129, $130, $131, $132), ($133, $134, $135, $136), ($137, $138, $139, $140), ($141, $142, $143, $144), ($145, $146, $147, $148), ($149, $150, $151, $152), ($153, $154, $155, $156), ($157, $158, $159, $160), ($161, $162, $163, $164), ($165, $166, $167, $168), ($169, $170, $171, $172), ($173, $174, $175, $176), ($177, $178, $179, $180), ($181, $182, $183, $184), ($185, $186, $187, $188), ($189, $190, $191, $192), ($193, $194, $195, $196), ($197, $198, $199, $200), ($201, $202, $203, $204), ($205, $206, $207, $208), ($209, $210, $211, $212), ($213, $214, $215, $216), ($217, $218, $219, $220), ($221, $222, $223, $224), ($225, $226, $227, $228), ($229, $230, $231, $232), ($233, $234, $235, $236), ($237, $238, $239, $240), ($241, $242, $243, $244), ($245, $246, $247, $248), ($249, $250, $251, $252), ($253, $254, $255, $256), ($257, $258, $259, $260), ($261, $262, $263, $264), ($265, $266, $267, $268), ($269, $270, $271, $272), ($273, $274, $275, $276), ($277, $278, $279, $280), ($281, $282, $283, $284), ($285, $286, $287, $288), ($289, $290, $291, $292), ($293, $294, $295, $296), ($297, $298, $299, $300), ($301, $302, $303, $304), ($305, $306, $307, $308), ($309, $310, $311, $312), ($313, $314, $315, $316), ($317, $318, $319, $320), ($321, $322, $323, $324), ($325, $326, $327, $328), ($329, $330, $331, $332), ($333, $334, $335, $336), ($337, $338, $339, $340), ($341, $342, $343, $344), ($345, $346, $347, $348), ($349, $350, $351, $352), ($353, $354, $355, $356), ($357, $358, $359, $360), ($361, $362, $363, $364), ($365, $366, $367, $368), ($369, $370, $371, $372), ($373, $374, $375, $376), ($377, $378, $379, $380), ($381, $382, $383, $384), ($385, $386, $387, $388), ($389, $390, $391, $392), ($393, $394, $395, $396), ($397, $398, $399, $400), ($401, $402, $403, $404), ($405, $406, $407, $408), ($409, $410, $411, $412), ($413, $414, $415, $416), ($417, $418, $419, $420), ($421, $422, $423, $424), ($425, $426, $427, $428), ($429, $430, $431, $432), ($433, $434, $435, $436), ($437, $438, $439, $440), ($441, $442, $443, $444), ($445, $446, $447, $448), ($449, $450, $451, $452), ($453, $454, $455, $456), ($457, $458, $459, $460), ($461, $462, $463, $464), ($465, $466, $467, $468), ($469, $470, $471, $472), ($473, $474, $475, $476), ($477, $478, $479, $480), ($481, $482, $483, $484), ($485, $486, $487, $488), ($489, $490, $491, $492), ($493, $494, $495, $496), ($497, $498, $499, $500), ($501, $502, $503, $504), ($505, $506, $507, $508), ($509, $510, $511, $512), ($513, $514, $515, $516), ($517, $518, $519, $520), ($521, $522, $523, $524), ($525, $526, $527, $528), ($529, $530, $531, $532), ($533, $534, $535, $536), ($537, $538, $539, $540), ($541, $542, $543, $544), ($545, $546, $547, $548), ($549, $550, $551, $552), ($553, $554, $555, $556), ($557, $558, $559, $560), ($561, $562, $563, $564), ($565, $566, $567, $568), ($569, $570, $571, $572), ($573, $574, $575, $576), ($577, $578, $579, $580), ($581, $582, $583, $584), ($585, $586, $587, $588), ($589, $590, $591, $592), ($593, $594, $595, $596), ($597, $598, $599, $600), ($601, $602, $603, $604), ($605, $606, $607, $608), ($609, $610, $611, $612), ($613, $614, $615, $616), ($617, $618, $619, $620), ($621, $622, $623, $624), ($625, $626, $627, $628), ($629, $630, $631, $632), ($633, $634, $635, $636), ($637, $638, $639, $640), ($641, $642, $643, $644), ($645, $646, $647, $648), ($649, $650, $651, $652), ($653, $654, $655, $656), ($657, $658, $659, $660), ($661, $662, $663, $664), ($665, $666, $667, $668), ($669, $670, $671, $672), ($673, $674, $675, $676), ($677, $678, $679, $680), ($681, $682, $683, $684), ($685, $686, $687, $688), ($689, $690, $691, $692), ($693, $694, $695, $696), ($697, $698, $699, $700), ($701, $702, $703, $704), ($705, $706, $707, $708), ($709, $710, $711, $712), ($713, $714, $715, $716), ($717, $718, $719, $720), ($721, $722, $723, $724), ($725, $726, $727, $728), ($729, $730, $731, $732), ($733, $734, $735, $736), ($737, $738, $739, $740), ($741, $742, $743, $744), ($745, $746, $747, $748), ($749, $750, $751, $752), ($753, $754, $755, $756), ($757, $758, $759, $760), ($761, $762, $763, $764), ($765, $766, $767, $768), ($769, $770, $771, $772), ($773, $774, $775, $776), ($777, $778, $779, $780), ($781, $782, $783, $784), ($785, $786, $787, $788), ($789, $790, $791, $792), ($793, $794, $795, $796), ($797, $798, $799, $800), ($801, $802, $803, $804), ($805, $806, $807, $808), ($809, $810, $811, $812), ($813, $814, $815, $816), ($817, $818, $819, $820), ($821, $822, $823, $824), ($825, $826, $827, $828), ($829, $830, $831, $832), ($833, $834, $835, $836), ($837, $838, $839, $840), ($841, $842, $843, $844), ($845, $846, $847, $848), ($849, $850, $851, $852), ($853, $854, $855, $856), ($857, $858, $859, $860), ($861, $862, $863, $864), ($865, $866, $867, $868), ($869, $870, $871, $872), ($873, $874, $875, $876), ($877, $878, $879, $880), ($881, $882, $883, $884), ($885, $886, $887, $888), ($889, $890, $891, $892), ($893, $894, $895, $896), ($897, $898, $899, $900), ($901, $902, $903, $904), ($905, $906, $907, $908), ($909, $910, $911, $912), ($913, $914, $915, $916), ($917, $918, $919, $920), ($921, $922, $923, $924), ($925, $926, $927, $928), ($929, $930, $931, $932), ($933, $934, $935, $936), ($937, $938, $939, $940), ($941, $942, $943, $944), ($945, $946, $947, $948), ($949, $950, $951, $952), ($953, $954, $955, $956), ($957, $958, $959, $960), ($961, $962, $963, $964), ($965, $966, $967, $968), ($969, $970, $971, $972), ($973, $974, $975, $976), ($977, $978, $979, $980), ($981, $982, $983, $984), ($985, $986, $987, $988), ($989, $990, $991, $992), ($993, $994, $995, $996), ($997, $998, $999, $1000), ($1001, $1002, $1003, $1004), ($1005, $1006, $1007, $1008), ($1009, $1010, $1011, $1012), ($1013, $1014, $1015, $1016), ($1017, $1018, $1019, $1020), ($1021, $1022, $1023, $1024), ($1025, $1026, $1027, $1028), ($1029, $1030, $1031, $1032), ($1033, $1034, $1035, $1036), ($1037, $1038, $1039, $1040), ($1041, $1042, $1043, $1044), ($1045, $1046, $1047, $1048), ($1049, $1050, $1051, $1052), ($1053, $1054, $1055, $1056), ($1057, $1058, $1059, $1060), ($1061, $1062, $1063, $1064), ($1065, $1066, $1067, $1068), ($1069, $1070, $1071, $1072), ($1073, $1074, $1075, $1076), ($1077, $1078, $1079, $1080), ($1081, $1082, $1083, $1084), ($1085, $1086, $1087, $1088), ($1089, $1090, $1091, $1092), ($1093, $1094, $1095, $1096), ($1097, $1098, $1099, $1100), ($1101, $1102, $1103, $1104), ($1105, $1106, $1107, $1108), ($1109, $1110, $1111, $1112), ($1113, $1114, $1115, $1116), ($1117, $1118, $1119, $1120), ($1121, $1122, $1123, $1124), ($1125, $1126, $1127, $1128), ($1129, $1130, $1131, $1132), ($1133, $1134, $1135, $1136), ($1137, $1138, $1139, $1140), ($1141, $1142, $1143, $1144), ($1145, $1146, $1147, $1148), ($1149, $1150, $1151, $1152), ($1153, $1154, $1155, $1156), ($1157, $1158, $1159, $1160), ($1161, $1162, $1163, $1164), ($1165, $1166, $1167, $1168), ($1169, $1170, $1171, $1172), ($1173, $1174, $1175, $1176), ($1177, $1178, $1179, $1180), ($1181, $1182, $1183, $1184), ($1185, $1186, $1187, $1188), ($1189, $1190, $1191, $1192), ($1193, $1194, $1195, $1196), ($1197, $1198, $1199, $1200), ($1201, $1202, $1203, $1204), ($1205, $1206, $1207, $1208), ($1209, $1210, $1211, $1212), ($1213, $1214, $1215, $1216), ($1217, $1218, $1219, $1220), ($1221, $1222, $1223, $1224), ($1225, $1226, $1227, $1228), ($1229, $1230, $1231, $1232), ($1233, $1234, $1235, $1236), ($1237, $1238, $1239, $1240), ($1241, $1242, $1243, $1244), ($1245, $1246, $1247, $1248), ($1249, $1250, $1251, $1252), ($1253, $1254, $1255, $1256), ($1257, $1258, $1259, $1260), ($1261, $1262, $1263, $1264), ($1265, $1266, $1267, $1268), ($1269, $1270, $1271, $1272), ($1273, $1274, $1275, $1276), ($1277, $1278, $1279, $1280), ($1281, $1282, $1283, $1284), ($1285, $1286, $1287, $1288), ($1289, $1290, $1291, $1292), ($1293, $1294, $1295, $1296), ($1297, $1298, $1299, $1300), ($1301, $1302, $1303, $1304), ($1305, $1306, $1307, $1308), ($1309, $1310, $1311, $1312), ($1313, $1314, $1315, $1316), ($1317, $1318, $1319, $1320), ($1321, $1322, $1323, $1324), ($1325, $1326, $1327, $1328), ($1329, $1330, $1331, $1332), ($1333, $1334, $1335, $1336), ($1337, $1338, $1339, $1340), ($1341, $1342, $1343, $1344), ($1345, $1346, $1347, $1348), ($1349, $1350, $1351, $1352), ($1353, $1354, $1355, $1356), ($1357, $1358, $1359, $1360), ($1361, $1362, $1363, $1364), ($1365, $1366, $1367, $1368), ($1369, $1370, $1371, $1372), ($1373, $1374, $1375, $1376), ($1377, $1378, $1379, $1380), ($1381, $1382, $1383, $1384), ($1385, $1386, $1387, $1388), ($1389, $1390, $1391, $1392), ($1393, $1394, $1395, $1396), ($1397, $1398, $1399, $1400), ($1401, $1402, $1403, $1404), ($1405, $1406, $1407, $1408), ($1409, $1410, $1411, $1412), ($1413, $1414, $1415, $1416), ($1417, $1418, $1419, $1420), ($1421, $1422, $1423, $1424), ($1425, $1426, $1427, $1428), ($1429, $1430, $1431, $1432), ($1433, $1434, $1435, $1436), ($1437, $1438, $1439, $1440), ($1441, $1442, $1443, $1444), ($1445, $1446, $1447, $1448), ($1449, $1450, $1451, $1452), ($1453, $1454, $1455, $1456), ($1457, $1458, $1459, $1460), ($1461, $1462, $1463, $1464), ($1465, $1466, $1467, $1468), ($1469, $1470, $1471, $1472), ($1473, $1474, $1475, $1476), ($1477, $1478, $1479, $1480), ($1481, $1482, $1483, $1484), ($1485, $1486, $1487, $1488), ($1489, $1490, $1491, $1492), ($1493, $1494, $1495, $1496), ($1497, $1498, $1499, $1500), ($1501, $1502, $1503, $1504), ($1505, $1506, $1507, $1508), ($1509, $1510, $1511, $1512), ($1513, $1514, $1515, $1516), ($1517, $1518, $1519, $1520), ($1521, $1522, $1523, $1524), ($1525, $1526, $1527, $1528), ($1529, $1530, $1531, $1532), ($1533, $1534, $1535, $1536), ($1537, $1538, $1539, $1540), ($1541, $1542, $1543, $1544), ($1545, $1546, $1547, $1548), ($1549, $1550, $1551, $1552), ($1553, $1554, $1555, $1556), ($1557, $1558, $1559, $1560), ($1561, $1562, $1563, $1564), ($1565, $1566, $1567, $1568), ($1569, $1570, $1571, $1572), ($1573, $1574, $1575, $1576), ($1577, $1578, $1579, $1580), ($1581, $1582, $1583, $1584), ($1585, $1586, $1587, $1588), ($1589, $1590, $1591, $1592), ($1593, $1594, $1595, $1596), ($1597, $1598, $1599, $1600), ($1601, $1602, $1603, $1604), ($1605, $1606, $1607, $1608), ($1609, $1610, $1611, $1612), ($1613, $1614, $1615, $1616), ($1617, $1618, $1619, $1620), ($1621, $1622, $1623, $1624), ($1625, $1626, $1627, $1628), ($1629, $1630, $1631, $1632), ($1633, $1634, $1635, $1636), ($1637, $1638, $1639, $1640), ($1641, $1642, $1643, $1644), ($1645, $1646, $1647, $1648), ($1649, $1650, $1651, $1652), ($1653, $1654, $1655, $1656), ($1657, $1658, $1659, $1660), ($1661, $1662, $1663, $1664), ($1665, $1666, $1667, $1668), ($1669, $1670, $1671, $1672), ($1673, $1674, $1675, $1676), ($1677, $1678, $1679, $1680), ($1681, $1682, $1683, $1684), ($1685, $1686, $1687, $1688), ($1689, $1690, $1691, $1692), ($1693, $1694, $1695, $1696), ($1697, $1698, $1699, $1700), ($1701, $1702, $1703, $1704), ($1705, $1706, $1707, $1708), ($1709, $1710, $1711, $1712), ($1713, $1714, $1715, $1716), ($1717, $1718, $1719, $1720), ($1721, $1722, $1723, $1724), ($1725, $1726, $1727, $1728), ($1729, $1730, $1731, $1732), ($1733, $1734, $1735, $1736), ($1737, $1738, $1739, $1740), ($1741, $1742, $1743, $1744), ($1745, $1746, $1747, $1748), ($1749, $1750, $1751, $1752), ($1753, $1754, $1755, $1756), ($1757, $1758, $1759, $1760), ($1761, $1762, $1763, $1764), ($1765, $1766, $1767, $1768), ($1769, $1770, $1771, $1772), ($1773, $1774, $1775, $1776), ($1777, $1778, $1779, $1780), ($1781, $1782, $1783, $1784), ($1785, $1786, $1787, $1788), ($1789, $1790, $1791, $1792), ($1793, $1794, $1795, $1796), ($1797, $1798, $1799, $1800), ($1801, $1802, $1803, $1804), ($1805, $1806, $1807, $1808), ($1809, $1810, $1811, $1812), ($1813, $1814, $1815, $1816), ($1817, $1818, $1819, $1820), ($1821, $1822, $1823, $1824), ($1825, $1826, $1827, $1828), ($1829, $1830, $1831, $1832), ($1833, $1834, $1835, $1836), ($1837, $1838, $1839, $1840), ($1841, $1842, $1843, $1844), ($1845, $1846, $1847, $1848), ($1849, $1850, $1851, $1852), ($1853, $1854, $1855, $1856), ($1857, $1858, $1859, $1860), ($1861, $1862, $1863, $1864), ($1865, $1866, $1867, $1868), ($1869, $1870, $1871, $1872), ($1873, $1874, $1875, $1876), ($1877, $1878, $1879, $1880), ($1881, $1882, $1883, $1884), ($1885, $1886, $1887, $1888), ($1889, $1890, $1891, $1892), ($1893, $1894, $1895, $1896), ($1897, $1898, $1899, $1900), ($1901, $1902, $1903, $1904), ($1905, $1906, $1907, $1908), ($1909, $1910, $1911, $1912), ($1913, $1914, $1915, $1916), ($1917, $1918, $1919, $1920), ($1921, $1922, $1923, $1924), ($1925, $1926, $1927, $1928), ($1929, $1930, $1931, $1932), ($1933, $1934, $1935, $1936), ($1937, $1938, $1939, $1940), ($1941, $1942, $1943, $1944), ($1945, $1946, $1947, $1948), ($1949, $1950, $1951, $1952), ($1953, $1954, $1955, $1956), ($1957, $1958, $1959, $1960), ($1961, $1962, $1963, $1964), ($1965, $1966, $1967, $1968), ($1969, $1970, $1971, $1972), ($1973, $1974, $1975, $1976), ($1977, $1978, $1979, $1980), ($1981, $1982, $1983, $1984), ($1985, $1986, $1987, $1988), ($1989, $1990, $1991, $1992), ($1993, $1994, $1995, $1996), ($1997, $1998, $1999, $2000), ($2001, $2002, $2003, $2004), ($2005, $2006, $2007, $2008), ($2009, $2010, $2011, $2012), ($2013, $2014, $2015, $2016), ($2017, $2018, $2019, $2020), ($2021, $2022, $2023, $2024), ($2025, $2026, $2027, $2028), ($2029, $2030, $2031, $2032), ($2033, $2034, $2035, $2036), ($2037, $2038, $2039, $2040), ($2041, $2042, $2043, $2044), ($2045, $2046, $2047, $2048), ($2049, $2050, $2051, $2052), ($2053, $2054, $2055, $2056), ($2057, $2058, $2059, $2060), ($2061, $2062, $2063, $2064), ($2065, $2066, $2067, $2068), ($2069, $2070, $2071, $2072), ($2073, $2074, $2075, $2076), ($2077, $2078, $2079, $2080), ($2081, $2082, $2083, $2084), ($2085, $2086, $2087, $2088), ($2089, $2090, $2091, $2092), ($2093, $2094, $2095, $2096), ($2097, $2098, $2099, $2100), ($2101, $2102, $2103, $2104), ($2105, $2106, $2107, $2108), ($2109, $2110, $2111, $2112), ($2113, $2114, $2115, $2116), ($2117, $2118, $2119, $2120), ($2121, $2122, $2123, $2124), ($2125, $2126, $2127, $2128), ($2129, $2130, $2131, $2132), ($2133, $2134, $2135, $2136), ($2137, $2138, $2139, $2140), ($2141, $2142, $2143, $2144), ($2145, $2146, $2147, $2148), ($2149, $2150, $2151, $2152), ($2153, $2154, $2155, $2156), ($2157, $2158, $2159, $2160), ($2161, $2162, $2163, $2164), ($2165, $2166, $2167, $2168), ($2169, $2170, $2171, $2172), ($2173, $2174, $2175, $2176), ($2177, $2178, $2179, $2180), ($2181, $2182, $2183, $2184), ($2185, $2186, $2187, $2188), ($2189, $2190, $2191, $2192), ($2193, $2194, $2195, $2196), ($2197, $2198, $2199, $2200), ($2201, $2202, $2203, $2204), ($2205, $2206, $2207, $2208), ($2209, $2210, $2211, $2212), ($2213, $2214, $2215, $2216), ($2217, $2218, $2219, $2220), ($2221, $2222, $2223, $2224), ($2225, $2226, $2227, $2228), ($2229, $2230, $2231, $2232), ($2233, $2234, $2235, $2236), ($2237, $2238, $2239, $2240), ($2241, $2242, $2243, $2244), ($2245, $2246, $2247, $2248), ($2249, $2250, $2251, $2252), ($2253, $2254, $2255, $2256), ($2257, $2258, $2259, $2260), ($2261, $2262, $2263, $2264), ($2265, $2266, $2267, $2268), ($2269, $2270, $2271, $2272), ($2273, $2274, $2275, $2276), ($2277, $2278, $2279, $2280), ($2281, $2282, $2283, $2284), ($2285, $2286, $2287, $2288), ($2289, $2290, $2291, $2292), ($2293, $2294, $2295, $2296), ($2297, $2298, $2299, $2300), ($2301, $2302, $2303, $2304), ($2305, $2306, $2307, $2308), ($2309, $2310, $2311, $2312), ($2313, $2314, $2315, $2316), ($2317, $2318, $2319, $2320), ($2321, $2322, $2323, $2324), ($2325, $2326, $2327, $2328), ($2329, $2330, $2331, $2332), ($2333, $2334, $2335, $2336), ($2337, $2338, $2339, $2340), ($2341, $2342, $2343, $2344), ($2345, $2346, $2347, $2348), ($2349, $2350, $2351, $2352), ($2353, $2354, $2355, $2356), ($2357, $2358, $2359, $2360), ($2361, $2362, $2363, $2364), ($2365, $2366, $2367, $2368), ($2369, $2370, $2371, $2372), ($2373, $2374, $2375, $2376), ($2377, $2378, $2379, $2380), ($2381, $2382, $2383, $2384), ($2385, $2386, $2387, $2388), ($2389, $2390, $2391, $2392), ($2393, $2394, $2395, $2396), ($2397, $2398, $2399, $2400), ($2401, $2402, $2403, $2404), ($2405, $2406, $2407, $2408), ($2409, $2410, $2411, $2412), ($2413, $2414, $2415, $2416), ($2417, $2418, $2419, $2420), ($2421, $2422, $2423, $2424), ($2425, $2426, $2427, $2428), ($2429, $2430, $2431, $2432), ($2433, $2434, $2435, $2436), ($2437, $2438, $2439, $2440), ($2441, $2442, $2443, $2444), ($2445, $2446, $2447, $2448), ($2449, $2450, $2451, $2452), ($2453, $2454, $2455, $2456), ($2457, $2458, $2459, $2460), ($2461, $2462, $2463, $2464), ($2465, $2466, $2467, $2468), ($2469, $2470, $2471, $2472), ($2473, $2474, $2475, $2476), ($2477, $2478, $2479, $2480), ($2481, $2482, $2483, $2484), ($2485, $2486, $2487, $2488), ($2489, $2490, $2491, $2492), ($2493, $2494, $2495, $2496), ($2497, $2498, $2499, $2500), ($2501, $2502, $2503, $2504), ($2505, $2506, $2507, $2508), ($2509, $2510, $2511, $2512), ($2513, $2514, $2515, $2516), ($2517, $2518, $2519, $2520), ($2521, $2522, $2523, $2524), ($2525, $2526, $2527, $2528), ($2529, $2530, $2531, $2532), ($2533, $2534, $2535, $2536), ($2537, $2538, $2539, $2540), ($2541, $2542, $2543, $2544), ($2545, $2546, $2547, $2548), ($2549, $2550, $2551, $2552), ($2553, $2554, $2555, $2556), ($2557, $2558, $2559, $2560), ($2561, $2562, $2563, $2564), ($2565, $2566, $2567, $2568), ($2569, $2570, $2571, $2572), ($2573, $2574, $2575, $2576), ($2577, $2578, $2579, $2580), ($2581, $2582, $2583, $2584), ($2585, $2586, $2587, $2588), ($2589, $2590, $2591, $2592), ($2593, $2594, $2595, $2596), ($2597, $2598, $2599, $2600), ($2601, $2602, $2603, $2604), ($2605, $2606, $2607, $2608), ($2609, $2610, $2611, $2612), ($2613, $2614, $2615, $2616), ($2617, $2618, $2619, $2620), ($2621, $2622, $2623, $2624), ($2625, $2626, $2627, $2628), ($2629, $2630, $2631, $2632), ($2633, $2634, $2635, $2636), ($2637, $2638, $2639, $2640), ($2641, $2642, $2643, $2644), ($2645, $2646, $2647, $2648), ($2649, $2650, $2651, $2652), ($2653, $2654, $2655, $2656), ($2657, $2658, $2659, $2660), ($2661, $2662, $2663, $2664), ($2665, $2666, $2667, $2668), ($2669, $2670, $2671, $2672), ($2673, $2674, $2675, $2676), ($2677, $2678, $2679, $2680), ($2681, $2682, $2683, $2684), ($2685, $2686, $2687, $2688), ($2689, $2690, $2691, $2692), ($2693, $2694, $2695, $2696), ($2697, $2698, $2699, $2700), ($2701, $2702, $2703, $2704), ($2705, $2706, $2707, $2708), ($2709, $2710, $2711, $2712), ($2713, $2714, $2715, $2716), ($2717, $2718, $2719, $2720), ($2721, $2722, $2723, $2724), ($2725, $2726, $2727, $2728), ($2729, $2730, $2731, $2732), ($2733, $2734, $2735, $2736), ($2737, $2738, $2739, $2740), ($2741, $2742, $2743, $2744), ($2745, $2746, $2747, $2748), ($2749, $2750, $2751, $2752), ($2753, $2754, $2755, $2756), ($2757, $2758, $2759, $2760), ($2761, $2762, $2763, $2764), ($2765, $2766, $2767, $2768), ($2769, $2770, $2771, $2772), ($2773, $2774, $2775, $2776), ($2777, $2778, $2779, $2780), ($2781, $2782, $2783, $2784), ($2785, $2786, $2787, $2788), ($2789, $2790, $2791, $2792), ($2793, $2794, $2795, $2796), ($2797, $2798, $2799, $2800), ($2801, $2802, $2803, $2804), ($2805, $2806, $2807, $2808), ($2809, $2810, $2811, $2812), ($2813, $2814, $2815, $2816), ($2817, $2818, $2819, $2820), ($2821, $2822, $2823, $2824), ($2825, $2826, $2827, $2828), ($2829, $2830, $2831, $2832), ($2833, $2834, $2835, $2836), ($2837, $2838, $2839, $2840), ($2841, $2842, $2843, $2844), ($2845, $2846, $2847, $2848), ($2849, $2850, $2851, $2852), ($2853, $2854, $2855, $2856), ($2857, $2858, $2859, $2860), ($2861, $2862, $2863, $2864), ($2865, $2866, $2867, $2868), ($2869, $2870, $2871, $2872), ($2873, $2874, $2875, $2876), ($2877, $2878, $2879, $2880), ($2881, $2882, $2883, $2884), ($2885, $2886, $2887, $2888), ($2889, $2890, $2891, $2892), ($2893, $2894, $2895, $2896), ($2897, $2898, $2899, $2900), ($2901, $2902, $2903, $2904), ($2905, $2906, $2907, $2908), ($2909, $2910, $2911, $2912), ($2913, $2914, $2915, $2916), ($2917, $2918, $2919, $2920), ($2921, $2922, $2923, $2924), ($2925, $2926, $2927, $2928), ($2929, $2930, $2931, $2932), ($2933, $2934, $2935, $2936), ($2937, $2938, $2939, $2940), ($2941, $2942, $2943, $2944), ($2945, $2946, $2947, $2948), ($2949, $2950, $2951, $2952), ($2953, $2954, $2955, $2956), ($2957, $2958, $2959, $2960), ($2961, $2962, $2963, $2964), ($2965, $2966, $2967, $2968), ($2969, $2970, $2971, $2972), ($2973, $2974, $2975, $2976), ($2977, $2978, $2979, $2980), ($2981, $2982, $2983, $2984), ($2985, $2986, $2987, $2988), ($2989, $2990, $2991, $2992), ($2993, $2994, $2995, $2996), ($2997, $2998, $2999, $3000), ($3001, $3002, $3003, $3004), ($3005, $3006, $3007, $3008), ($3009, $3010, $3011, $3012), ($3013, $3014, $3015, $3016), ($3017, $3018, $3019, $3020), ($3021, $3022, $3023, $3024), ($3025, $3026, $3027, $3028), ($3029, $3030, $3031, $3032), ($3033, $3034, $3035, $3036) ON CONFLICT (namespace_id, user_id) DO NOTHING RETURNING id
    207 92279.5 ms 1263.3 ms 445.8 ms 165053
    SELECT DISTINCT user_id, (
    SELECT traversal_ids[$1]
    FROM namespaces
    WHERE id = members.member_namespace_id
    ) AS root_namespace_id
    FROM members
    WHERE id IN (
    SELECT members.id
    FROM members
    WHERE members.id BETWEEN $2 AND $3 AND members.id >= $4 AND members.id < $5 AND members.user_id IS NOT NULL
    )
    24 9706.6 ms 932.8 ms 404.4 ms 18343
    SELECT DISTINCT user_id, (
    SELECT traversal_ids[$1]
    FROM namespaces
    WHERE id = members.member_namespace_id
    ) AS root_namespace_id
    FROM members
    WHERE id IN (
    SELECT members.id
    FROM members
    WHERE members.id BETWEEN $2 AND $3 AND members.id >= $4 AND members.user_id IS NOT NULL
    )
    231 3295.9 ms 282.6 ms 14.3 ms 28889
    SELECT namespace_id AS root_namespace_id, user_id
    FROM subscription_seat_assignments
    WHERE (namespace_id, user_id) IN (VALUES ($1, $2), ($3, $4), ($5, $6), ($7, $8), ($9, $10), ($11, $12), ($13, $14), ($15, $16), ($17, $18), ($19, $20), ($21, $22), ($23, $24), ($25, $26), ($27, $28), ($29, $30), ($31, $32), ($33, $34), ($35, $36), ($37, $38), ($39, $40), ($41, $42), ($43, $44), ($45, $46), ($47, $48), ($49, $50), ($51, $52), ($53, $54), ($55, $56), ($57, $58), ($59, $60), ($61, $62), ($63, $64), ($65, $66), ($67, $68), ($69, $70), ($71, $72), ($73, $74), ($75, $76), ($77, $78), ($79, $80), ($81, $82), ($83, $84), ($85, $86), ($87, $88), ($89, $90), ($91, $92), ($93, $94), ($95, $96), ($97, $98), ($99, $100), ($101, $102), ($103, $104), ($105, $106), ($107, $108), ($109, $110), ($111, $112), ($113, $114), ($115, $116), ($117, $118), ($119, $120), ($121, $122), ($123, $124), ($125, $126), ($127, $128), ($129, $130), ($131, $132), ($133, $134), ($135, $136), ($137, $138), ($139, $140), ($141, $142), ($143, $144), ($145, $146), ($147, $148), ($149, $150), ($151, $152), ($153, $154), ($155, $156), ($157, $158), ($159, $160), ($161, $162), ($163, $164), ($165, $166), ($167, $168), ($169, $170), ($171, $172), ($173, $174), ($175, $176), ($177, $178), ($179, $180), ($181, $182), ($183, $184), ($185, $186), ($187, $188), ($189, $190), ($191, $192), ($193, $194), ($195, $196), ($197, $198), ($199, $200), ($201, $202), ($203, $204), ($205, $206), ($207, $208), ($209, $210), ($211, $212), ($213, $214), ($215, $216), ($217, $218), ($219, $220), ($221, $222), ($223, $224), ($225, $226), ($227, $228), ($229, $230), ($231, $232), ($233, $234), ($235, $236), ($237, $238), ($239, $240), ($241, $242), ($243, $244), ($245, $246), ($247, $248), ($249, $250), ($251, $252), ($253, $254), ($255, $256), ($257, $258), ($259, $260), ($261, $262), ($263, $264), ($265, $266), ($267, $268), ($269, $270), ($271, $272), ($273, $274), ($275, $276), ($277, $278), ($279, $280), ($281, $282), ($283, $284), ($285, $286), ($287, $288), ($289, $290), ($291, $292), ($293, $294), ($295, $296), ($297, $298), ($299, $300), ($301, $302), ($303, $304), ($305, $306), ($307, $308), ($309, $310), ($311, $312), ($313, $314), ($315, $316), ($317, $318), ($319, $320), ($321, $322), ($323, $324), ($325, $326), ($327, $328), ($329, $330), ($331, $332), ($333, $334), ($335, $336), ($337, $338), ($339, $340), ($341, $342), ($343, $344), ($345, $346), ($347, $348), ($349, $350), ($351, $352), ($353, $354), ($355, $356), ($357, $358), ($359, $360), ($361, $362), ($363, $364), ($365, $366), ($367, $368), ($369, $370), ($371, $372), ($373, $374), ($375, $376), ($377, $378), ($379, $380), ($381, $382), ($383, $384), ($385, $386), ($387, $388), ($389, $390), ($391, $392), ($393, $394), ($395, $396), ($397, $398), ($399, $400), ($401, $402), ($403, $404), ($405, $406), ($407, $408), ($409, $410), ($411, $412), ($413, $414), ($415, $416), ($417, $418), ($419, $420), ($421, $422), ($423, $424), ($425, $426), ($427, $428), ($429, $430), ($431, $432), ($433, $434), ($435, $436), ($437, $438), ($439, $440), ($441, $442), ($443, $444), ($445, $446), ($447, $448), ($449, $450), ($451, $452), ($453, $454), ($455, $456), ($457, $458), ($459, $460), ($461, $462), ($463, $464), ($465, $466), ($467, $468), ($469, $470), ($471, $472), ($473, $474), ($475, $476), ($477, $478), ($479, $480), ($481, $482), ($483, $484), ($485, $486), ($487, $488), ($489, $490), ($491, $492), ($493, $494), ($495, $496), ($497, $498), ($499, $500), ($501, $502), ($503, $504), ($505, $506), ($507, $508), ($509, $510), ($511, $512), ($513, $514), ($515, $516), ($517, $518), ($519, $520), ($521, $522), ($523, $524), ($525, $526), ($527, $528), ($529, $530), ($531, $532), ($533, $534), ($535, $536), ($537, $538), ($539, $540), ($541, $542), ($543, $544), ($545, $546), ($547, $548), ($549, $550), ($551, $552), ($553, $554), ($555, $556), ($557, $558), ($559, $560), ($561, $562), ($563, $564), ($565, $566), ($567, $568), ($569, $570), ($571, $572), ($573, $574), ($575, $576), ($577, $578), ($579, $580), ($581, $582), ($583, $584), ($585, $586), ($587, $588), ($589, $590), ($591, $592), ($593, $594), ($595, $596), ($597, $598), ($599, $600), ($601, $602), ($603, $604), ($605, $606), ($607, $608), ($609, $610), ($611, $612), ($613, $614), ($615, $616), ($617, $618), ($619, $620), ($621, $622), ($623, $624), ($625, $626), ($627, $628), ($629, $630), ($631, $632), ($633, $634), ($635, $636), ($637, $638), ($639, $640), ($641, $642), ($643, $644), ($645, $646), ($647, $648), ($649, $650), ($651, $652), ($653, $654), ($655, $656), ($657, $658), ($659, $660), ($661, $662), ($663, $664), ($665, $666), ($667, $668), ($669, $670), ($671, $672), ($673, $674), ($675, $676), ($677, $678), ($679, $680), ($681, $682), ($683, $684), ($685, $686), ($687, $688), ($689, $690), ($691, $692), ($693, $694), ($695, $696), ($697, $698), ($699, $700), ($701, $702), ($703, $704), ($705, $706), ($707, $708), ($709, $710), ($711, $712), ($713, $714), ($715, $716), ($717, $718), ($719, $720), ($721, $722), ($723, $724), ($725, $726), ($727, $728), ($729, $730), ($731, $732), ($733, $734), ($735, $736), ($737, $738), ($739, $740), ($741, $742), ($743, $744), ($745, $746), ($747, $748), ($749, $750), ($751, $752), ($753, $754), ($755, $756), ($757, $758), ($759, $760), ($761, $762), ($763, $764), ($765, $766), ($767, $768), ($769, $770), ($771, $772), ($773, $774), ($775, $776), ($777, $778), ($779, $780), ($781, $782), ($783, $784), ($785, $786), ($787, $788), ($789, $790), ($791, $792), ($793, $794), ($795, $796), ($797, $798), ($799, $800), ($801, $802), ($803, $804), ($805, $806), ($807, $808), ($809, $810), ($811, $812), ($813, $814), ($815, $816), ($817, $818), ($819, $820), ($821, $822), ($823, $824), ($825, $826), ($827, $828), ($829, $830), ($831, $832), ($833, $834), ($835, $836), ($837, $838), ($839, $840), ($841, $842), ($843, $844), ($845, $846), ($847, $848), ($849, $850), ($851, $852), ($853, $854), ($855, $856), ($857, $858), ($859, $860), ($861, $862), ($863, $864), ($865, $866), ($867, $868), ($869, $870), ($871, $872), ($873, $874), ($875, $876), ($877, $878), ($879, $880), ($881, $882), ($883, $884), ($885, $886), ($887, $888), ($889, $890), ($891, $892), ($893, $894), ($895, $896), ($897, $898), ($899, $900), ($901, $902), ($903, $904), ($905, $906), ($907, $908), ($909, $910), ($911, $912), ($913, $914), ($915, $916), ($917, $918), ($919, $920), ($921, $922), ($923, $924), ($925, $926), ($927, $928), ($929, $930), ($931, $932), ($933, $934), ($935, $936), ($937, $938), ($939, $940), ($941, $942), ($943, $944), ($945, $946), ($947, $948), ($949, $950), ($951, $952), ($953, $954), ($955, $956), ($957, $958), ($959, $960), ($961, $962), ($963, $964), ($965, $966), ($967, $968), ($969, $970), ($971, $972), ($973, $974), ($975, $976), ($977, $978), ($979, $980), ($981, $982), ($983, $984), ($985, $986), ($987, $988), ($989, $990), ($991, $992), ($993, $994), ($995, $996), ($997, $998), ($999, $1000), ($1001, $1002), ($1003, $1004), ($1005, $1006), ($1007, $1008), ($1009, $1010), ($1011, $1012), ($1013, $1014), ($1015, $1016), ($1017, $1018), ($1019, $1020), ($1021, $1022), ($1023, $1024), ($1025, $1026), ($1027, $1028), ($1029, $1030), ($1031, $1032), ($1033, $1034), ($1035, $1036), ($1037, $1038), ($1039, $1040), ($1041, $1042), ($1043, $1044), ($1045, $1046), ($1047, $1048), ($1049, $1050), ($1051, $1052), ($1053, $1054), ($1055, $1056), ($1057, $1058), ($1059, $1060), ($1061, $1062), ($1063, $1064), ($1065, $1066), ($1067, $1068), ($1069, $1070), ($1071, $1072), ($1073, $1074), ($1075, $1076), ($1077, $1078), ($1079, $1080), ($1081, $1082), ($1083, $1084), ($1085, $1086), ($1087, $1088), ($1089, $1090), ($1091, $1092), ($1093, $1094), ($1095, $1096), ($1097, $1098), ($1099, $1100), ($1101, $1102), ($1103, $1104), ($1105, $1106), ($1107, $1108), ($1109, $1110), ($1111, $1112), ($1113, $1114), ($1115, $1116), ($1117, $1118), ($1119, $1120), ($1121, $1122), ($1123, $1124), ($1125, $1126), ($1127, $1128), ($1129, $1130), ($1131, $1132), ($1133, $1134), ($1135, $1136), ($1137, $1138), ($1139, $1140), ($1141, $1142), ($1143, $1144), ($1145, $1146), ($1147, $1148), ($1149, $1150), ($1151, $1152), ($1153, $1154), ($1155, $1156), ($1157, $1158), ($1159, $1160), ($1161, $1162), ($1163, $1164), ($1165, $1166), ($1167, $1168), ($1169, $1170), ($1171, $1172), ($1173, $1174), ($1175, $1176), ($1177, $1178), ($1179, $1180), ($1181, $1182), ($1183, $1184), ($1185, $1186), ($1187, $1188), ($1189, $1190), ($1191, $1192), ($1193, $1194), ($1195, $1196), ($1197, $1198), ($1199, $1200), ($1201, $1202), ($1203, $1204), ($1205, $1206), ($1207, $1208), ($1209, $1210), ($1211, $1212), ($1213, $1214), ($1215, $1216), ($1217, $1218), ($1219, $1220), ($1221, $1222), ($1223, $1224), ($1225, $1226), ($1227, $1228), ($1229, $1230), ($1231, $1232), ($1233, $1234), ($1235, $1236), ($1237, $1238), ($1239, $1240), ($1241, $1242), ($1243, $1244), ($1245, $1246), ($1247, $1248), ($1249, $1250), ($1251, $1252), ($1253, $1254), ($1255, $1256), ($1257, $1258), ($1259, $1260), ($1261, $1262), ($1263, $1264), ($1265, $1266), ($1267, $1268), ($1269, $1270), ($1271, $1272), ($1273, $1274), ($1275, $1276), ($1277, $1278), ($1279, $1280), ($1281, $1282), ($1283, $1284), ($1285, $1286), ($1287, $1288), ($1289, $1290), ($1291, $1292), ($1293, $1294), ($1295, $1296), ($1297, $1298), ($1299, $1300), ($1301, $1302), ($1303, $1304), ($1305, $1306), ($1307, $1308), ($1309, $1310), ($1311, $1312), ($1313, $1314), ($1315, $1316), ($1317, $1318), ($1319, $1320), ($1321, $1322), ($1323, $1324), ($1325, $1326), ($1327, $1328), ($1329, $1330), ($1331, $1332), ($1333, $1334), ($1335, $1336), ($1337, $1338), ($1339, $1340), ($1341, $1342), ($1343, $1344), ($1345, $1346), ($1347, $1348), ($1349, $1350), ($1351, $1352), ($1353, $1354), ($1355, $1356), ($1357, $1358), ($1359, $1360), ($1361, $1362), ($1363, $1364), ($1365, $1366), ($1367, $1368), ($1369, $1370), ($1371, $1372), ($1373, $1374), ($1375, $1376), ($1377, $1378), ($1379, $1380), ($1381, $1382), ($1383, $1384), ($1385, $1386), ($1387, $1388), ($1389, $1390), ($1391, $1392), ($1393, $1394), ($1395, $1396), ($1397, $1398), ($1399, $1400), ($1401, $1402), ($1403, $1404), ($1405, $1406), ($1407, $1408), ($1409, $1410), ($1411, $1412), ($1413, $1414), ($1415, $1416), ($1417, $1418), ($1419, $1420), ($1421, $1422), ($1423, $1424), ($1425, $1426), ($1427, $1428), ($1429, $1430), ($1431, $1432), ($1433, $1434), ($1435, $1436), ($1437, $1438), ($1439, $1440), ($1441, $1442), ($1443, $1444), ($1445, $1446), ($1447, $1448), ($1449, $1450), ($1451, $1452), ($1453, $1454), ($1455, $1456), ($1457, $1458), ($1459, $1460), ($1461, $1462), ($1463, $1464), ($1465, $1466), ($1467, $1468), ($1469, $1470), ($1471, $1472), ($1473, $1474), ($1475, $1476), ($1477, $1478), ($1479, $1480), ($1481, $1482), ($1483, $1484), ($1485, $1486), ($1487, $1488), ($1489, $1490), ($1491, $1492), ($1493, $1494), ($1495, $1496), ($1497, $1498), ($1499, $1500), ($1501, $1502), ($1503, $1504), ($1505, $1506), ($1507, $1508), ($1509, $1510), ($1511, $1512), ($1513, $1514), ($1515, $1516), ($1517, $1518), ($1519, $1520), ($1521, $1522), ($1523, $1524), ($1525, $1526), ($1527, $1528), ($1529, $1530), ($1531, $1532), ($1533, $1534), ($1535, $1536), ($1537, $1538), ($1539, $1540), ($1541, $1542), ($1543, $1544), ($1545, $1546), ($1547, $1548), ($1549, $1550), ($1551, $1552), ($1553, $1554), ($1555, $1556), ($1557, $1558), ($1559, $1560), ($1561, $1562), ($1563, $1564), ($1565, $1566), ($1567, $1568), ($1569, $1570), ($1571, $1572), ($1573, $1574), ($1575, $1576), ($1577, $1578), ($1579, $1580), ($1581, $1582), ($1583, $1584), ($1585, $1586), ($1587, $1588), ($1589, $1590), ($1591, $1592), ($1593, $1594), ($1595, $1596), ($1597, $1598), ($1599, $1600), ($1601, $1602), ($1603, $1604), ($1605, $1606), ($1607, $1608), ($1609, $1610), ($1611, $1612), ($1613, $1614), ($1615, $1616), ($1617, $1618), ($1619, $1620), ($1621, $1622), ($1623, $1624), ($1625, $1626), ($1627, $1628), ($1629, $1630), ($1631, $1632), ($1633, $1634), ($1635, $1636), ($1637, $1638), ($1639, $1640), ($1641, $1642), ($1643, $1644), ($1645, $1646), ($1647, $1648), ($1649, $1650), ($1651, $1652), ($1653, $1654), ($1655, $1656), ($1657, $1658), ($1659, $1660), ($1661, $1662), ($1663, $1664), ($1665, $1666), ($1667, $1668), ($1669, $1670), ($1671, $1672), ($1673, $1674), ($1675, $1676), ($1677, $1678), ($1679, $1680), ($1681, $1682), ($1683, $1684), ($1685, $1686), ($1687, $1688), ($1689, $1690), ($1691, $1692), ($1693, $1694), ($1695, $1696), ($1697, $1698), ($1699, $1700), ($1701, $1702), ($1703, $1704), ($1705, $1706), ($1707, $1708), ($1709, $1710), ($1711, $1712), ($1713, $1714), ($1715, $1716), ($1717, $1718), ($1719, $1720), ($1721, $1722), ($1723, $1724), ($1725, $1726), ($1727, $1728), ($1729, $1730), ($1731, $1732), ($1733, $1734), ($1735, $1736), ($1737, $1738), ($1739, $1740))
    231 65.7 ms 4.0 ms 0.3 ms 207
    SELECT members.id
    FROM members
    WHERE members.id BETWEEN $1 AND $2 AND members.id >= $3
    ORDER BY members.id ASC
    LIMIT $4
    OFFSET $5
    48 6.7 ms 0.6 ms 0.1 ms 48
    INSERT INTO batched_background_migration_job_transition_logs (batched_background_migration_job_id, created_at, updated_at, previous_status, next_status) VALUES ($1, $2, $3, $4, $5) RETURNING id
    24 3.9 ms 0.4 ms 0.2 ms 24
    UPDATE batched_background_migration_jobs
    SET updated_at = $1, finished_at = $2, status = $3, metrics = $4
    WHERE batched_background_migration_jobs.id = $5
    24 3.8 ms 0.3 ms 0.2 ms 24
    UPDATE batched_background_migration_jobs
    SET updated_at = $1, started_at = $2, status = $3, attempts = $4
    WHERE batched_background_migration_jobs.id = $5
    48 1.9 ms 0.1 ms 0.0 ms 48
    SELECT batched_background_migration_jobs.*
    FROM batched_background_migration_jobs
    WHERE batched_background_migration_jobs.id = $1
    LIMIT $2
    24 1.0 ms 0.1 ms 0.0 ms 24
    SELECT sum(batched_background_migration_jobs.batch_size)
    FROM batched_background_migration_jobs
    WHERE batched_background_migration_jobs.batched_background_migration_id = $1 AND batched_background_migration_jobs.status IN ($2)
    24 0.8 ms 0.0 ms 0.0 ms 24
    SELECT members.id
    FROM members
    WHERE members.id BETWEEN $1 AND $2
    ORDER BY members.id ASC
    LIMIT $3
    Histogram of batch runtimes for BackfillSeatAssignmentsTable
    Batch Runtime Count
    0 seconds - 10 seconds 1
    10 seconds - 1 minute 23
    1 minute - 2 minutes 0
    2 minutes - 3 minutes 0
    3 minutes - 5 minutes 0
    5 minutes + 0
    Histogram across all sampled batches of BackfillSeatAssignmentsTable
    Query Runtime Count
    0 seconds - 0.1 seconds 0
    0.1 seconds - 0.5 seconds 769
    0.5 seconds - 1 second 203
    1 second - 2 seconds 141
    2 seconds - 5 seconds 2
    5 seconds + 0

    Background Migration: BackfillDetectedAtFromCreatedAtColumn

    Sampled 82 batches. Estimated Time to complete: 5 months, 2 weeks, 1 day, 32 minutes, and 30 seconds
    • Interval: 120s
    • Max batch size: 0
    • Estimated seconds to complete: 14446680s
    • Average batch time: 5.37s
    • Batch size: 1000
    • N. of batches sampled: 82
    • N. of failed batches: 0

    Time estimation is conservative and based on sampling production data in a test environment. It represents the max time that migration could take. The actual time may differ from this estimation.

    Consider changing max_batch_size and interval if this estimate is unacceptable.

    Calls Total Time Max Time Mean Time Rows Query
    729 5356.9 ms 67.0 ms 7.3 ms 58433
    UPDATE vulnerabilities
    SET detected_at = created_at
    WHERE vulnerabilities.id BETWEEN $1 AND $2 AND vulnerabilities.id >= $3 AND vulnerabilities.id < $4 AND vulnerabilities.detected_at IS NULL
    82 557.9 ms 27.4 ms 6.8 ms 6428
    UPDATE vulnerabilities
    SET detected_at = created_at
    WHERE vulnerabilities.id BETWEEN $1 AND $2 AND vulnerabilities.id >= $3 AND vulnerabilities.detected_at IS NULL
    164 22.1 ms 1.6 ms 0.1 ms 164
    INSERT INTO batched_background_migration_job_transition_logs (batched_background_migration_job_id, created_at, updated_at, previous_status, next_status) VALUES ($1, $2, $3, $4, $5) RETURNING id
    82 11.5 ms 1.0 ms 0.1 ms 82
    UPDATE batched_background_migration_jobs
    SET updated_at = $1, finished_at = $2, status = $3, metrics = $4
    WHERE batched_background_migration_jobs.id = $5
    82 10.2 ms 0.5 ms 0.1 ms 82
    UPDATE batched_background_migration_jobs
    SET updated_at = $1, started_at = $2, status = $3, attempts = $4
    WHERE batched_background_migration_jobs.id = $5
    811 73.1 ms 0.3 ms 0.1 ms 729
    SELECT vulnerabilities.id
    FROM vulnerabilities
    WHERE vulnerabilities.id BETWEEN $1 AND $2 AND vulnerabilities.id >= $3
    ORDER BY vulnerabilities.id ASC
    LIMIT $4
    OFFSET $5
    82 4.9 ms 0.1 ms 0.1 ms 82
    SELECT sum(batched_background_migration_jobs.batch_size)
    FROM batched_background_migration_jobs
    WHERE batched_background_migration_jobs.batched_background_migration_id = $1 AND batched_background_migration_jobs.status IN ($2)
    82 3.1 ms 0.1 ms 0.0 ms 82
    SELECT vulnerabilities.id
    FROM vulnerabilities
    WHERE vulnerabilities.id BETWEEN $1 AND $2
    ORDER BY vulnerabilities.id ASC
    LIMIT $3
    164 6.4 ms 0.1 ms 0.0 ms 164
    SELECT batched_background_migration_jobs.*
    FROM batched_background_migration_jobs
    WHERE batched_background_migration_jobs.id = $1
    LIMIT $2
    Histogram of batch runtimes for BackfillDetectedAtFromCreatedAtColumn
    Batch Runtime Count
    0 seconds - 10 seconds 82
    10 seconds - 1 minute 0
    1 minute - 2 minutes 0
    2 minutes - 3 minutes 0
    3 minutes - 5 minutes 0
    5 minutes + 0
    Histogram across all sampled batches of BackfillDetectedAtFromCreatedAtColumn
    Query Runtime Count
    0 seconds - 0.1 seconds 0
    0.1 seconds - 0.5 seconds 2278
    0.5 seconds - 1 second 0
    1 second - 2 seconds 0
    2 seconds - 5 seconds 0
    5 seconds + 0
    #### Other information
    Other migrations pending on GitLab.com
    Migration Type Total runtime Result DB size change
    20241106114853 - CreateSystemAccessGroupMicrosoftApplications Regular 6.9 s :white_check_mark: +48.00 KiB
    20241106115015 - CreateSystemAccessGroupMicrosoftGraphAccessTokens Regular 5.2 s :white_check_mark: +56.00 KiB
    20241115075017 - AddMemberRoleIdToProjectGroupLinks Regular 4.8 s :white_check_mark: +0.00 B
    20241121033259 - AddFkToMemberRolesOnProjectGroupLinks Regular 5.9 s :warning: +0.00 B
    20241121033758 - AddIndexToProjectGroupLinksOnMemberRoleId Regular 5.8 s :white_check_mark: +4.91 MiB
    20241122093316 - AddForeginKeyGroupMicrosoftGraphAccessTokens Regular 5.6 s :white_check_mark: +0.00 B
    20241122093341 - AddForeginKeyApplicationMicrosoftGraphAccessTokens Regular 5.6 s :white_check_mark: +0.00 B
    20241126131337 - AddDefaultPermissionsToGroupScopeLinks Regular 4.8 s :white_check_mark: +0.00 B
    20241126131359 - AddDefaultPermissionsToProjectScopeLinks Regular 4.8 s :white_check_mark: +0.00 B
    20241021063020 - QueueBackfillDetectedAtFromCreatedAtColumn Post deploy 5.7 s :white_check_mark: +0.00 B
    20241108133603 - QueueBackfillSeatAssignmentsTable Post deploy 5.4 s :white_check_mark: +0.00 B
    20241119085925 - RemoveNamespaceLimitsTemporaryStorageIncreaseEndsOnColumn Post deploy 4.7 s :white_check_mark: +0.00 B
    20241120134610 - SetNamespacesOrganizationIdNotNull Post deploy 5.4 s :white_check_mark: +0.00 B
    20241121115756 - PrepareNamespacesOrganizationIdNotNullValidation Post deploy 5.5 s :white_check_mark: +8.00 KiB [note]
    20241122031025 - ChangeOrganizationIdDefaultOauth Post deploy 5.6 s :white_check_mark: +0.00 B
    20241125085625 - AddFkBetweenCiBuildsAndCiPipelines Post deploy 7.7 s :white_check_mark: +0.00 B
    Clone details
    Clone ID Clone Created At Clone Data Timestamp Expected Removal Time
    database-testing-3943826-16265294-main 2024-12-02T11:28:23Z 2024-12-02T02:06:44Z 2024-12-03 00:04:36 +0000
    database-testing-3943826-16265294-ci 2024-12-02T11:28:22Z 2024-12-02T08:41:36Z 2024-12-03 00:04:36 +0000

    Job artifacts

    Database migrations (on the ci database)

    Migrations included in this change have been executed on gitlab.com data for testing purposes. For details, please see the migration testing pipeline (limited access).

    Migration Type Total runtime Result DB size change
    20241129124907 - AddIndexOnPackageJsonDeprecateExistToPackagesNpmMetadata Post deploy 9.2 s :white_check_mark: +8.00 KiB [note]
    20241201164238 - QueueUpdateStatusForDeprecatedNpmPackages Post deploy 6.9 s :white_check_mark: +0.00 B
    Runtime Histogram for all migrations
    Query Runtime Count
    0 seconds - 0.01 seconds 0
    0.01 seconds - 0.1 seconds 0
    0.1 seconds - 1 second 5
    1 second - 5 seconds 0
    5 seconds - 15 seconds 0
    15 seconds - 5 minutes 0
    5 minutes + 0

    Migration: 20241129124907 - AddIndexOnPackageJsonDeprecateExistToPackagesNpmMetadata

    * Type: Post deploy
    * Duration: 9.2 s
    * Database size change: +8.00 KiB [note]
    Calls Total Time Max Time Mean Time Rows Query
    1 4.6 ms 4.6 ms 4.6 ms 0
    CREATE INDEX CONCURRENTLY "index_packages_npm_metadata_on_package_json_deprecate_exist" ON "packages_npm_metadata" ("package_id")
    WHERE (package_json ? 'deprecated')
    2 0.0 ms 0.0 ms 0.0 ms 2
    SELECT pg_backend_pid()
    Histogram for AddIndexOnPackageJsonDeprecateExistToPackagesNpmMetadata
    Query Runtime Count
    0 seconds - 0.01 seconds 0
    0.01 seconds - 0.1 seconds 0
    0.1 seconds - 1 second 3
    1 second - 5 seconds 0
    5 seconds - 15 seconds 0
    15 seconds - 5 minutes 0
    5 minutes + 0

    Migration: 20241201164238 - QueueUpdateStatusForDeprecatedNpmPackages

    * Type: Post deploy
    * Duration: 6.9 s
    * Database size change: +0.00 B
    Calls Total Time Max Time Mean Time Rows Query
    2 0.0 ms 0.0 ms 0.0 ms 2
    SELECT pg_backend_pid()
    Histogram for QueueUpdateStatusForDeprecatedNpmPackages
    Query Runtime Count
    0 seconds - 0.01 seconds 0
    0.01 seconds - 0.1 seconds 0
    0.1 seconds - 1 second 2
    1 second - 5 seconds 0
    5 seconds - 15 seconds 0
    15 seconds - 5 minutes 0
    5 minutes + 0

    Other information

    No other migrations pending on GitLab.com

    Clone details
    Clone ID Clone Created At Clone Data Timestamp Expected Removal Time
    database-testing-3943826-16265294-main 2024-12-02T11:28:23Z 2024-12-02T02:06:44Z 2024-12-03 00:04:36 +0000
    database-testing-3943826-16265294-ci 2024-12-02T11:28:22Z 2024-12-02T08:41:36Z 2024-12-03 00:04:36 +0000

    Job artifacts


    Brought to you by gitlab-org/database-team/gitlab-com-database-testing. Epic

    Edited by ****
  • Dzmitry (Dima) Meshcharakou changed the description

    changed the description

  • added 559 commits

    Compare with previous version

  • added 1 commit

    • 6a4478c5 - Add status deprecated to the packages statuses

    Compare with previous version

  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Please register or sign in to reply
    Loading