Element

LDraw

Photo

There are 50 more photos of this Part
Lego mapping includes Design ID 30068 for transparent [PC] parts and 18860 for Metallic Silver version.

Available Colors

Toggle Available Colors

This part appears in 56 Colors. Click on a colored part below to see the Sets and MOCs that use part 3062b Brick Round 1 x 1 Open Stud in that color. You can find an overview of all LEGO Colors here.

If a color is missing, it probably needs to be added to a Set Inventory.

In Sets | In MOCS | All Colors
Color Element Set Parts Sets From To MOC Parts MOCs
00005e 5e5e5e
HO Metallic Dark Gray
000061 616161
HO Titanium
00009b 9C9C9C
Modulex Foil Light Gray
00009b 9C9C9C
Modulex Light Gray
0000d8 D9D9D9
Glow in Dark White 6339147 12 6 2021 2024 35 18
0000f3 F4F4F4
Modulex White
0000fb FCFCFC
Opal Trans-Clear 6363601 126 23 2021 2026 412 62
0000fe FFFFFF
Glitter Trans-Clear
0000fe FFFFFF
Glitter Milky White
0000fe FFFFFF
Modulex Clear
0000fe FFFFFF
White 306201 3598 668 1978 2026 52442 6792
001dd3 05131D
Speckle Black-Copper
001dd3 05131D
Speckle Black-Gold
001dd3 05131D
Black 306226 3290 767 1978 2026 63435 11544
001dd3 05131D
Speckle Black-Silver
00296b 6B5A5A
Modulex Tile Gray
00347b 1B2A34
Chrome Black 6 1
003e15 3E3C39
Pearl Titanium 7 2
005803 575857
Pearl Dark Gray 34 5
006013 595D60
Modulex Foil Dark Gray
006013 595D60
Modulex Charcoal Gray
00632c 635F52
Trans-Black
00632c 635F52
Trans-Black IR Lens
00632c 635F52
Trans-Brown 4 2
006e0e 6C6E68
Dark Bluish Gray 4211090 1967 374 2004 2026 53542 7183
006e2a 6D6E5C
Dark Gray 4113912 150 36 1998 2004 916 162
0087cf d06262
HO Rose
008804 898788
Flat Silver 27 11
00a00a 9BA19D
Light Gray 306202 1133 185 1978 2003 3123 434
00a712 9CA3A8
Pearl Light Gray
00a80e A0A5A9
Light Bluish Gray 4211412 2910 492 2004 2026 100731 11405
00ac03 ABADAC
Pearl Very Light Gray
00b315 A5A9B4
Metallic Silver 6410057 16 6 2014 2025 1615 466
00b315 A5ADB4
Metal
00d40e D4D5C9
Glow In Dark Opaque
00df00 E0E0E0
Chrome Silver 38 8
00e507 E6E3E0
Very Light Bluish Gray 44 14
00e50d E6E3DA
Very Light Gray 1 1
00e8bf c01111
HO Medium Red
00f201 F2F3F2
Pearl White
00fb00 FCFCFC
Trans-Clear 6223655 636 308 1983 2026 18435 3721
00fe00 FFFFFF
Milky White
00ff33 330000
Modulex Tile Brown
00ff8a 8B0000
Modulex Foil Red
0177d5 D67572
Sand Red
03d2b4 B52C20
Modulex Red
03f9b2 B31004
Rust 3 2
04d6cd CE3021
Chrome Red
04f4c8 C91A09
Trans-Red 6238673 719 270 1979 2026 4260 1345
04f4c8 C91A09
Red 306221 1680 630 1978 2026 22854 4799
058393 945148
Two-tone Copper
059cf1 F2705E
Salmon 3 1
05f5c9 CA1F08
Vintage Red
07bcf3 F45C40
Modulex Pink Red
07c7ed EE5434
Bright Reddish Orange
08d486 872B17
Rust Orange
0aeceb EC4612
Neon Orange
0c755e 5E3F33
Umber Brown 15 2
0d7e57 57392C
Pearl Brown
0d8076 764D3B
Metallic Copper
0da1ac AD6140
Dark Nougat 20 2
0da395 965336
HO Light Brown
0e887c 7C503A
Light Brown 21 6
0ef1c9 CA4C0B
Reddish Orange
0fcb58 582A12
Reddish Brown 4211183 3263 541 2004 2026 104730 7417
107dad AE7A59
Copper
108e58 583927
Brown 4107810 126 27 1997 2004 3749 420
108e58 583927
Opal Trans-Brown
109590 915C3C
Sienna Brown
10cdf3 F47B30
Modulex Orange
1180cf D09168
Nougat 5 3
11a9aa AB673A
Two-tone Gold
126975 755945
Medium Brown 59 5
128fb5 B67B50
Fabuland Brown 2 2
1480a9 AA7D55
Medium Nougat 6300103 295 57 2020 2026 5685 654
14ebfe FF8014
Fabuland Red
14f2fe FF800D
Trans-Neon Orange 6238676 167 65 2001 2020 1370 461
150473 737271
Two-tone Silver 1 1
1587b3 B48455
Flat Dark Gold 5 1
1599f6 F7AD63
Modulex Light Orange
1599f6 F7AD63
Modulex Foil Orange
15e7fd FE8A18
Orange 6220715 143 59 2018 2026 4456 732
15ffa8 A95500
Dark Orange 6074890 456 86 2003 2026 9032 1063
1691fb FCB76D
Trans-Flame Yellowish Orange 1 1
1745f5 F6D7B3
Light Nougat 6546466 49 3 2025 2025 24 7
176fcb CCA373
Warm Tan 4 1
17dcee EF9121
Fabuland Orange
17e1ef F08F1C
Glitter Trans-Orange
17e1ef F08F1C
Trans-Orange 12 5
18718f 907450
Modulex Brown
18daba bb771b
HO Earth Orange
193d64 645A4C
Chrome Antique Brass
195cf2 F3CF9B
Very Light Orange
1996ab AC8247
Reddish Gold 1 1
199cf8 F9BA61
Light Orange
19addc DD9E47
Ochre Yellow
19e2f9 FA9C1C
Earth Orange 24 3
19ffb3 B46A00
Pearl Copper
1a70f2 F3C988
Light Tan
1a87fe FFCB78
Warm Yellowish Orange
1acadc DD982E
Curry
1aff35 352100
Dark Brown 6022105 679 96 2012 2026 16966 1567
1b4cdd DEC69C
Modulex Buff
1bf4fe FFA70B
Medium Orange
1c69db DCBC81
Pearl Light Gold
1cbaa9 AA7F2E
Pearl Gold 6060800 523 94 2014 2026 5807 1007
1d3a94 958A73
Dark Tan 64 11
1d4ee3 E4CD9E
Tan 4117070 1754 280 1999 2026 33993 2995
1d4ee3 E4CD9E
HO Tan
1dc0f7 F8BB3D
Bright Light Orange 4 3
1f7a5c 5C5030
Modulex Terracotta
1fc2da DBAC34
Metallic Gold 2 2
20a8fd FED557
Modulex Foil Yellow
20a8fd FED557
Modulex Ochre Yellow
2242cc cdc298
HO Light Gold
225bb3 b4a774
HO Gold
2267fa FBE696
Light Yellow 6 2
228efe FFE371
Modulex Light Yellow
22c5f1 F2CD37
Yellow 306224 1164 414 1980 2026 13964 2475
22cef4 F5CD2F
Trans-Yellow 6238674 824 397 1980 2026 8972 3283
22cef4 F5CD2F
Opal Trans-Yellow 6484194 12 6 2024 2026
22f4fe FFCF0B
Clikits Yellow
22faf2 F3C305
Vintage Yellow
22ffd9 DAB000
Trans-Neon Yellow 1 1
236dfa FBE890
Trans-Fire Yellow
23acba BBA53D
Chrome Gold 2 1 2019 2019 5 2
2433f8 f9f1c7
HO Light Tan
27c5fe FFF03A
Bright Light Yellow 1 1
27ffea EBD800
Vibrant Yellow
2877f7 F8F184
Trans-Neon Green 6238675 376 79 1997 2022 1365 413
28cffe FFF230
Duplo Lime
296b5d 5d5c36
Dark Olive Green
2a6b9a 9B9A5A
HO Olive Green
2a6b9a 9B9A5A
Olive Green 13 8
2d2a6e 6D6E5C
HO Dark Gray
2d8ab8 b2b955
HO Dark Lime
2de0c5 BDC618
Modulex Lemon
2e44f9 f5fab7
HO Light Yellow
2eb6d1 C7D23C
Medium Lime
3244e3 D9E4A7
Trans-Bright Green 25 6
3244e3 D9E4A7
Light Lime 1 1
3244e3 D9E4A7
Glitter Trans-Bright Green
334eed DFEEA5
Yellowish Green 6546464 34 5 2025 2026
33f3e8 BBE90B
Lime 4212454 747 189 2005 2026 4050 1035
34bbfb D2FC43
Neon Green
34fff4 C0F500
Glitter Trans-Neon Green
37639a 899B5F
Metallic Green
377079 6A7944
Pearl Lime
3869e6 C9E788
Trans-Light Bright Green
38708f 7C9051
Modulex Olive Green
390e6e 6C6E68
Speckle DBGray-Silver
395297 879867
HO Metallic Green
3a20c5 BDC6AD
Glow In Dark Trans
3eb0b4 7DB538
Modulex Pastel Green
3eb0b4 7DB538
Modulex Foil Light Green
4928d9 C2DAB8
Light Green
54889e 4B9F4A
Bright Green 6401707 58 19 2022 2026 1082 222
55327a 627a62
HO Dark Sand Green
5586fb 78FC78
Fabuland Lime
55af60 1E601E
Vintage Green
55ff64 006400
Modulex Foil Dark Green
5d46b5 84B68D
Glitter Trans-Green
5d46b5 84B68D
Trans-Green 6514234 441 191 1979 2026 2245 1029
5d46b5 84B68D
Opal Trans-Bright Green
5f7bb9 60BA76
Duplo Light Green
615ae4 94E5AB
Trans-Light Green
64b578 237841
Green 306228 717 200 1989 2025 8404 1478
657e89 468A5F
Duplo Medium Green
6726bb A0BCAC
Sand Green 4642432 75 10 2000 2005 806 160
6726bb A0BCAC
HO Sand Green
67ff8d 008E3C
Pearl Green
687adb 73DCA1
Medium Green 1 1
68aab2 3CB371
Chrome Green
6da846 184632
Dark Green 6253282 90 24 2019 2025 3555 591
6da846 184632
HO Dark Green
7038d0 a3d1c0
HO Light Aqua
753ddb a7dccf
HO Dark Aqua
77a7b5 3FB69E
Duplo Turquoise
782bd6 B3D7D1
HO Aqua
782bd6 B3D7D1
Aqua 2 1
7a1dc2 ADC3C0
Light Aqua 6335549 84 14 2022 2025 163 45
7cb585 27867E
Modulex Aqua Green
7e45ee AEEFEC
Trans-Light Blue 6514238 944 350 2003 2026 8211 1603
83e59c 10929d
HO Dark Turquoise
83ff9a 008F9B
Dark Turquoise 6325955 166 43 2021 2025 894 220
8478c4 68BCC5
Opal Trans-Light Blue
8478c4 68BCC5
Glitter Trans-Light Blue
8483ae 55A5AF
Light Turquoise
85b7be 36AEBF
Medium Azure 4620909 252 98 2012 2026 1904 540
8796d9 5AC4DA
Pastel Blue 306211
87fbbc 039CBD
Vintage Blue
89ffcd 009ECE
Duplo Blue
8ba8b5 3E95B6
Duplo Medium Blue
8d695a 354e5a
HO Blue-gray
8d6fdc 7DBFDD
Sky Blue 2 2
8d7782 467083
Modulex Teal Blue
8d7db2 5b98b3
HO Cyan
8d7ecd 68AECE
Modulex Pastel Blue
8d7ecd 68AECE
Modulex Foil Light Blue
8dde63 0d4763
HO Metallic Blue
8de5ca 1591cb
HO Azure
8df6c8 078BC9
Dark Azure 4653267 105 41 2013 2025 1026 327
8e528b 5f7d8c
HO Metallic Sand Blue
8ebac2 3592C3
Maersk Blue
8f32ef C1DFF0
Trans-Very Lt Blue 26 3
8f35e2 B4D2E3
Light Blue
91d31d 05131D
[No Color/Any Color] 1031 113
93ffa2 0059A3
Pearl Blue
946fbe 6C96BF
Chrome Blue
94ffa5 0057A6
Modulex Foil Dark Blue
94ffa5 0057A6
Modulex Tile Blue
9551e8 9FC3E9
Bright Light Blue 6215387 42 15 2018 2025 748 192
9556a5 6e8aa6
HO Sand Blue
959efe 61AFFF
Modulex Medium Blue
9629f6 CFE2F7
Trans-Medium Blue 4216301 47 6
9645f6 B4D4F7
Trans-Light Royal Blue
96e563 0A3463
Dark Blue 4177741 297 81 2003 2026 2945 686
96e563 0A3463
HO Dark Blue
9796da 5A93DB
Medium Blue 4585142 24 9 2000 2010 236 80
97ffbe 0055BF
Blue 306223 689 185 1980 2026 5552 1539
986cc7 7396c8
HO Medium Blue
9a3fa0 7988A1
Pearl Sand Blue 2 2
9d67a0 6074A1
Sand Blue 4165656 11 5 2002 2003 287 69
9dbe27 0A1327
Pearl Black
9f1fc6 AfB5C7
Modulex Light Bluish Gray
a296a2 4354A3
Violet
a2ff9f 0020A0
Opal Trans-Dark Blue
a2ff9f 0020A0
Trans-Dark Blue 6514233 485 158 1978 2026 3351 580
a4a7da 4C61DB
Royal Blue 4223708 17 2 2004 2004 67 13
a57cc9 6874CA
Medium Bluish Violet
a5d1af 2032B0
Dark Blue-Violet
a748c9 9195CA
Light Lilac
a75cfe A3A9FF
Blue Violet
a81ce1 C9CAE2
Light Violet
aa30ca A5A5CB
Glitter Trans-Purple
aa30ca A5A5CB
Trans-Purple 6 2
ab5de3 9391E4
Medium Violet
aea090 3F3691
Dark Purple 6070305 193 49 2016 2024 1739 351
b11352 4D4C52
Modulex Black
bb5bb2 8D73B3
Glitter Trans-Medium Purple
bb5bb2 8D73B3
Trans-Medium Purple
bcc4a9 5F27AA
Duplo Dark Purple
bf1aec E1D5ED
Lavender 6209673 153 52 2018 2026 672 220
c3ff81 4B0082
Modulex Foil Violet
c6d2b6 8320B7
Opal Trans-Purple 6464814 84 35 2024 2026 1272 331
cb5ab9 AC78BA
Medium Lavender
cc4b9e 96709F
Trans-Light Purple
cf6f96 8E5597
Reddish Lilac
d44983 845E84
Sand Purple
d6ff80 81007B
Purple
e18ca9 AA4D8E
Chrome Pink
e19b91 923978
Magenta 6172869 197 52 2017 2026 888 258
e1dbcd CE1D9B
Opal Trans-Dark Pink 6473803 27 14 2024 2026 199 87
e870c7 C870A0
Dark Pink 6070302 7 5 2023 2026 339 103
ea3ee3 E4ADC8
Glitter Trans-Pink
ea3ee3 E4ADC8
Trans-Pink
ea3ee3 E4ADC8
Bright Pink 6099375 8 3 2016 2016 222 87
ea85cc CD6298
Light Purple 2 1
ed87fd FE78B0
Clikits Pink
ee8ade DF6695
Trans-Dark Pink 6 3
ee8ade DF6695
Glitter Trans-Dark Pink
ef76f6 F785B1
Modulex Pink
ef76f6 F785B1
Medium Dark Pink 4183032 26 4 2003 2004 4 3
f496fe FF698F
Coral
f4fffe FF0040
Trans-Neon Red
f666fb FC97AC
Pink
f7ffd5 D60026
Pearl Red
f878fe FF879C
Duplo Pink
fa41f5 F6B7BF
Warm Pink 6584823 14 4 2026 2026
fa56bc BD7D85
Modulex Violet
fc32fd FECCCF
Light Pink
fd44fd FEBABD
Light Salmon
fece63 631314
HO Dark Red
ffe072 720E0F
Dark Red 4539099 683 94 2003 2026 13753 1053
to your account to add or reply to comments.
Create an account to change the default filters used.

See all related parts via Search

Prints:

x83

Showing first 60

DJDT

Time

Resource usage

Resource Value
User CPU time 1456.772 msec
System CPU time 33.917 msec
Total CPU time 1490.689 msec
Elapsed time 2982.361 msec
Context switches 820 voluntary, 393 involuntary

Browser timing

Timing attribute Timeline Milliseconds since navigation start (+length)

SQL queries from 1 connection

  • default 1468.80 ms (210 queries including 188 similar and 14 duplicates )
Query Timeline Time (ms) Action
SELECT "lego_part"."id",
       "lego_part"."part_num",
       "lego_part"."name",
       "lego_part"."part_cat_id",
       "lego_part"."notes",
       "lego_part"."is_active",
       "lego_part"."search_vector",
       "lego_part"."ldraw_part_id",
       "lego_part"."bricklink_part_id",
       "lego_part"."ignore_color_errors",
       "lego_part"."part_material_id",
       "lego_part"."is_bricklink_minifig",
       "lego_part"."is_bricklink_book",
       "lego_part"."is_bricklink_gear",
       "lego_part"."show_generic_part_msg",
       "lego_partcategory"."id",
       "lego_partcategory"."name",
       "lego_partcategory"."part_count",
       "lego_partcategory"."img",
       "lego_partcategory"."slug",
       "lego_partmaterial"."id",
       "lego_partmaterial"."name",
       "lego_partoverlay"."part_id",
       "lego_partoverlay"."length",
       "lego_partstats"."part_id",
       "lego_partstats"."num_sets",
       "lego_partstats"."num_mocs",
       "lego_partstats"."num_set_parts",
       "lego_partstats"."num_moc_parts",
       "lego_partstats"."y1",
       "lego_partstats"."y2",
       "lego_partstats"."is_dirty"
  FROM
"lego_part"
 INNER JOIN
"lego_partcategory"
    ON
("lego_part"."part_cat_id" = "lego_partcategory"."id")
 INNER JOIN
"lego_partmaterial"
    ON
("lego_part"."part_material_id" = "lego_partmaterial"."id")
  LEFT OUTER JOIN
"lego_partoverlay"
    ON
("lego_part"."id" = "lego_partoverlay"."part_id")
  LEFT OUTER JOIN
"lego_partstats"
    ON
("lego_part"."id" = "lego_partstats"."part_id")
 WHERE
"lego_part"."part_num" = '3062b'
 LIMIT
21
SELECT ••• FROM "lego_part" INNER JOIN "lego_partcategory" ON ("lego_part"."part_cat_id" = "lego_partcategory"."id") INNER JOIN "lego_partmaterial" ON ("lego_part"."part_material_id" = "lego_partmaterial"."id") LEFT OUTER JOIN "lego_partoverlay" ON ("lego_part"."id" = "lego_partoverlay"."part_id") LEFT OUTER JOIN "lego_partstats" ON ("lego_part"."id" = "lego_partstats"."part_id") WHERE "lego_part"."part_num" = '3062b' LIMIT 21
2 similar queries. Duplicated 2 times.
9.25

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(122)
  part = get_or_none(Part.all_objects, part_num=slug1)

/home/nathan/rb/site/./rb/utils.py in get_or_none(605)
  return manager.get(**kwargs)

SELECT "lego_element"."id",
       "lego_element"."part_id",
       "lego_element"."color_id",
       "lego_element"."element_id",
       "lego_element"."design_id",
       "lego_element"."descr",
       "lego_element"."color_descr",
       "lego_element"."last_download_attempt",
       "lego_element"."num_download_attempts",
       "lego_element"."is_export_id",
       "lego_element"."is_active"
  FROM
"lego_element"
 INNER JOIN
"lego_color"
    ON
("lego_element"."color_id" = "lego_color"."id")
 WHERE
("lego_element"."is_active" AND "lego_element"."part_id" IN (24432))
 ORDER BY
"lego_color"."name" ASC, "lego_element"."element_id" ASC
SELECT ••• FROM "lego_element" INNER JOIN "lego_color" ON ("lego_element"."color_id" = "lego_color"."id") WHERE ("lego_element"."is_active" AND "lego_element"."part_id" IN (24432)) ORDER BY "lego_color"."name" ASC, "lego_element"."element_id" ASC
2 similar queries. Duplicated 2 times.
1.13

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(122)
  part = get_or_none(Part.all_objects, part_num=slug1)

/home/nathan/rb/site/./rb/utils.py in get_or_none(605)
  return manager.get(**kwargs)

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
"lego_partcolorstats"."part_id" IN (24432)
SELECT ••• FROM "lego_partcolorstats" WHERE "lego_partcolorstats"."part_id" IN (24432)
2 similar queries. Duplicated 2 times.
0.67

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(122)
  part = get_or_none(Part.all_objects, part_num=slug1)

/home/nathan/rb/site/./rb/utils.py in get_or_none(605)
  return manager.get(**kwargs)

SELECT "lego_partcost"."id",
       "lego_partcost"."part_id",
       "lego_partcost"."color_id",
       "lego_partcost"."is_used",
       "lego_partcost"."cost_avg",
       "lego_partcost"."cost_min",
       "lego_partcost"."cost_max",
       "lego_partcost"."cost_count"
  FROM
"lego_partcost"
 WHERE
"lego_partcost"."part_id" IN (24432)
SELECT ••• FROM "lego_partcost" WHERE "lego_partcost"."part_id" IN (24432)
2 similar queries. Duplicated 2 times.
0.61

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(122)
  part = get_or_none(Part.all_objects, part_num=slug1)

/home/nathan/rb/site/./rb/utils.py in get_or_none(605)
  return manager.get(**kwargs)

SELECT "lego_partphoto"."id",
       "lego_partphoto"."part_id",
       "lego_partphoto"."color_id",
       "lego_partphoto"."submitted_by_id",
       "lego_partphoto"."image",
       "lego_partphoto"."timestamp",
       "lego_partphoto"."is_active",
       "lego_partphoto"."is_primary"
  FROM
"lego_partphoto"
 WHERE
("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" IN (24432))
SELECT ••• FROM "lego_partphoto" WHERE ("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" IN (24432))
2 similar queries. Duplicated 2 times.
1.35

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(122)
  part = get_or_none(Part.all_objects, part_num=slug1)

/home/nathan/rb/site/./rb/utils.py in get_or_none(605)
  return manager.get(**kwargs)

SELECT "lego_part"."id",
       "lego_part"."part_num",
       "lego_part"."name",
       "lego_part"."part_cat_id",
       "lego_part"."notes",
       "lego_part"."is_active",
       "lego_part"."search_vector",
       "lego_part"."ldraw_part_id",
       "lego_part"."bricklink_part_id",
       "lego_part"."ignore_color_errors",
       "lego_part"."part_material_id",
       "lego_part"."is_bricklink_minifig",
       "lego_part"."is_bricklink_book",
       "lego_part"."is_bricklink_gear",
       "lego_part"."show_generic_part_msg",
       "lego_partcategory"."id",
       "lego_partcategory"."name",
       "lego_partcategory"."part_count",
       "lego_partcategory"."img",
       "lego_partcategory"."slug",
       "lego_partmaterial"."id",
       "lego_partmaterial"."name",
       "lego_partoverlay"."part_id",
       "lego_partoverlay"."length",
       "lego_partstats"."part_id",
       "lego_partstats"."num_sets",
       "lego_partstats"."num_mocs",
       "lego_partstats"."num_set_parts",
       "lego_partstats"."num_moc_parts",
       "lego_partstats"."y1",
       "lego_partstats"."y2",
       "lego_partstats"."is_dirty"
  FROM
"lego_part"
 INNER JOIN
"lego_partcategory"
    ON
("lego_part"."part_cat_id" = "lego_partcategory"."id")
 INNER JOIN
"lego_partmaterial"
    ON
("lego_part"."part_material_id" = "lego_partmaterial"."id")
  LEFT OUTER JOIN
"lego_partoverlay"
    ON
("lego_part"."id" = "lego_partoverlay"."part_id")
  LEFT OUTER JOIN
"lego_partstats"
    ON
("lego_part"."id" = "lego_partstats"."part_id")
 WHERE
"lego_part"."part_num" = '3062b'
 LIMIT
21
SELECT ••• FROM "lego_part" INNER JOIN "lego_partcategory" ON ("lego_part"."part_cat_id" = "lego_partcategory"."id") INNER JOIN "lego_partmaterial" ON ("lego_part"."part_material_id" = "lego_partmaterial"."id") LEFT OUTER JOIN "lego_partoverlay" ON ("lego_part"."id" = "lego_partoverlay"."part_id") LEFT OUTER JOIN "lego_partstats" ON ("lego_part"."id" = "lego_partstats"."part_id") WHERE "lego_part"."part_num" = '3062b' LIMIT 21
2 similar queries. Duplicated 2 times.
0.51

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(362)
  part = get_object_or_404(Part.all_objects, part_num=part_num)

SELECT "lego_element"."id",
       "lego_element"."part_id",
       "lego_element"."color_id",
       "lego_element"."element_id",
       "lego_element"."design_id",
       "lego_element"."descr",
       "lego_element"."color_descr",
       "lego_element"."last_download_attempt",
       "lego_element"."num_download_attempts",
       "lego_element"."is_export_id",
       "lego_element"."is_active"
  FROM
"lego_element"
 INNER JOIN
"lego_color"
    ON
("lego_element"."color_id" = "lego_color"."id")
 WHERE
("lego_element"."is_active" AND "lego_element"."part_id" IN (24432))
 ORDER BY
"lego_color"."name" ASC, "lego_element"."element_id" ASC
SELECT ••• FROM "lego_element" INNER JOIN "lego_color" ON ("lego_element"."color_id" = "lego_color"."id") WHERE ("lego_element"."is_active" AND "lego_element"."part_id" IN (24432)) ORDER BY "lego_color"."name" ASC, "lego_element"."element_id" ASC
2 similar queries. Duplicated 2 times.
0.37

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(362)
  part = get_object_or_404(Part.all_objects, part_num=part_num)

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
"lego_partcolorstats"."part_id" IN (24432)
SELECT ••• FROM "lego_partcolorstats" WHERE "lego_partcolorstats"."part_id" IN (24432)
2 similar queries. Duplicated 2 times.
0.23

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(362)
  part = get_object_or_404(Part.all_objects, part_num=part_num)

SELECT "lego_partcost"."id",
       "lego_partcost"."part_id",
       "lego_partcost"."color_id",
       "lego_partcost"."is_used",
       "lego_partcost"."cost_avg",
       "lego_partcost"."cost_min",
       "lego_partcost"."cost_max",
       "lego_partcost"."cost_count"
  FROM
"lego_partcost"
 WHERE
"lego_partcost"."part_id" IN (24432)
SELECT ••• FROM "lego_partcost" WHERE "lego_partcost"."part_id" IN (24432)
2 similar queries. Duplicated 2 times.
0.34

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(362)
  part = get_object_or_404(Part.all_objects, part_num=part_num)

SELECT "lego_partphoto"."id",
       "lego_partphoto"."part_id",
       "lego_partphoto"."color_id",
       "lego_partphoto"."submitted_by_id",
       "lego_partphoto"."image",
       "lego_partphoto"."timestamp",
       "lego_partphoto"."is_active",
       "lego_partphoto"."is_primary"
  FROM
"lego_partphoto"
 WHERE
("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" IN (24432))
SELECT ••• FROM "lego_partphoto" WHERE ("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" IN (24432))
2 similar queries. Duplicated 2 times.
0.87

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(362)
  part = get_object_or_404(Part.all_objects, part_num=part_num)

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 24432)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 24432) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.29

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(372)
  part.img_element = part.get_img_dir(force_use_element=True)

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

SELECT "lego_partrelationship"."id",
       "lego_partrelationship"."part_parent_id",
       "lego_partrelationship"."part_child_id",
       "lego_partrelationship"."rel_type",
       T3."id",
       T3."part_num",
       T3."name",
       T3."part_cat_id",
       T3."notes",
       T3."is_active",
       T3."search_vector",
       T3."ldraw_part_id",
       T3."bricklink_part_id",
       T3."ignore_color_errors",
       T3."part_material_id",
       T3."is_bricklink_minifig",
       T3."is_bricklink_book",
       T3."is_bricklink_gear",
       T3."show_generic_part_msg",
       "lego_partcategory"."id",
       "lego_partcategory"."name",
       "lego_partcategory"."part_count",
       "lego_partcategory"."img",
       "lego_partcategory"."slug",
       "lego_partoverlay"."part_id",
       "lego_partoverlay"."length",
       "lego_partstats"."part_id",
       "lego_partstats"."num_sets",
       "lego_partstats"."num_mocs",
       "lego_partstats"."num_set_parts",
       "lego_partstats"."num_moc_parts",
       "lego_partstats"."y1",
       "lego_partstats"."y2",
       "lego_partstats"."is_dirty"
  FROM
"lego_partrelationship"
 INNER JOIN
"lego_part" T3
    ON
("lego_partrelationship"."part_child_id" = T3."id")
 INNER JOIN
"lego_partcategory"
    ON
(T3."part_cat_id" = "lego_partcategory"."id")
  LEFT OUTER JOIN
"lego_partoverlay"
    ON
(T3."id" = "lego_partoverlay"."part_id")
  LEFT OUTER JOIN
"lego_partstats"
    ON
(T3."id" = "lego_partstats"."part_id")
 WHERE
("lego_partrelationship"."part_parent_id" = 24432 AND "lego_partrelationship"."rel_type" = 'B' AND NOT ("lego_partrelationship"."part_child_id" = 24432))
 ORDER BY
"lego_partstats"."num_sets" DESC
SELECT ••• FROM "lego_partrelationship" INNER JOIN "lego_part" T3 ON ("lego_partrelationship"."part_child_id" = T3."id") INNER JOIN "lego_partcategory" ON (T3."part_cat_id" = "lego_partcategory"."id") LEFT OUTER JOIN "lego_partoverlay" ON (T3."id" = "lego_partoverlay"."part_id") LEFT OUTER JOIN "lego_partstats" ON (T3."id" = "lego_partstats"."part_id") WHERE ("lego_partrelationship"."part_parent_id" = 24432 AND "lego_partrelationship"."rel_type" = 'B' AND NOT ("lego_partrelationship"."part_child_id" = 24432)) ORDER BY "lego_partstats"."num_sets" DESC
4 similar queries.
0.84

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(379)
  subparts = sorted(part.get_related_subparts_child(), key=lambda x: x.part_num)

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_related_subparts_child(768)
  return self.get_related_children(PartRelationship.REL_TYPE_SUBPART)

/home/nathan/rb/site/./lego/models/parts.py in get_related_children(743)
  return [p.part_child for p in parts]

SELECT "lego_partrelationshipflat"."part_id",
       "lego_partrelationshipflat"."a",
       "lego_partrelationshipflat"."m",
       "lego_partrelationshipflat"."p",
       "lego_partrelationshipflat"."am",
       "lego_partrelationshipflat"."ap",
       "lego_partrelationshipflat"."mp",
       "lego_partrelationshipflat"."amp"
  FROM
"lego_partrelationshipflat"
 WHERE
("lego_partrelationshipflat"."am" IS NOT NULL AND "lego_partrelationshipflat"."part_id" = 24432)
 LIMIT
21
SELECT ••• FROM "lego_partrelationshipflat" WHERE ("lego_partrelationshipflat"."am" IS NOT NULL AND "lego_partrelationshipflat"."part_id" = 24432) LIMIT 21
0.23

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(380)
  alts_molds = sorted(part.get_related_alts_and_molds(), key=lambda x: x.part_num)  # Follows nested alts/molds relationships

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_related_alts_and_molds(829)
  part_rel_flat = PartRelationshipFlat.objects.get(part=self, am__isnull=False)

SELECT "lego_partrelationshipflat"."part_id",
       "lego_partrelationshipflat"."a",
       "lego_partrelationshipflat"."m",
       "lego_partrelationshipflat"."p",
       "lego_partrelationshipflat"."am",
       "lego_partrelationshipflat"."ap",
       "lego_partrelationshipflat"."mp",
       "lego_partrelationshipflat"."amp"
  FROM
"lego_partrelationshipflat"
 INNER JOIN
"lego_part"
    ON
("lego_partrelationshipflat"."part_id" = "lego_part"."id")
  LEFT OUTER JOIN
"lego_partstats"
    ON
("lego_part"."id" = "lego_partstats"."part_id")
 WHERE
("lego_partrelationshipflat"."am" = 1241515 AND NOT ("lego_partrelationshipflat"."part_id" = 24432))
 ORDER BY
"lego_partstats"."num_sets" DESC
SELECT ••• FROM "lego_partrelationshipflat" INNER JOIN "lego_part" ON ("lego_partrelationshipflat"."part_id" = "lego_part"."id") LEFT OUTER JOIN "lego_partstats" ON ("lego_part"."id" = "lego_partstats"."part_id") WHERE ("lego_partrelationshipflat"."am" = 1241515 AND NOT ("lego_partrelationshipflat"."part_id" = 24432)) ORDER BY "lego_partstats"."num_sets" DESC
0.40

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(380)
  alts_molds = sorted(part.get_related_alts_and_molds(), key=lambda x: x.part_num)  # Follows nested alts/molds relationships

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_related_alts_and_molds(835)
  for p in parts:

SELECT "lego_part"."id",
       "lego_part"."part_num",
       "lego_part"."name",
       "lego_part"."part_cat_id",
       "lego_part"."notes",
       "lego_part"."is_active",
       "lego_part"."search_vector",
       "lego_part"."ldraw_part_id",
       "lego_part"."bricklink_part_id",
       "lego_part"."ignore_color_errors",
       "lego_part"."part_material_id",
       "lego_part"."is_bricklink_minifig",
       "lego_part"."is_bricklink_book",
       "lego_part"."is_bricklink_gear",
       "lego_part"."show_generic_part_msg"
  FROM
"lego_part"
 WHERE
"lego_part"."id" = 13807
 LIMIT
21
SELECT ••• FROM "lego_part" WHERE "lego_part"."id" = 13807 LIMIT 21
2 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(380)
  alts_molds = sorted(part.get_related_alts_and_molds(), key=lambda x: x.part_num)  # Follows nested alts/molds relationships

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_related_alts_and_molds(837)
  p.part.is_alt = False

SELECT "lego_part"."id",
       "lego_part"."part_num",
       "lego_part"."name",
       "lego_part"."part_cat_id",
       "lego_part"."notes",
       "lego_part"."is_active",
       "lego_part"."search_vector",
       "lego_part"."ldraw_part_id",
       "lego_part"."bricklink_part_id",
       "lego_part"."ignore_color_errors",
       "lego_part"."part_material_id",
       "lego_part"."is_bricklink_minifig",
       "lego_part"."is_bricklink_book",
       "lego_part"."is_bricklink_gear",
       "lego_part"."show_generic_part_msg"
  FROM
"lego_part"
 WHERE
"lego_part"."id" = 14010
 LIMIT
21
SELECT ••• FROM "lego_part" WHERE "lego_part"."id" = 14010 LIMIT 21
2 similar queries.
0.08

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(380)
  alts_molds = sorted(part.get_related_alts_and_molds(), key=lambda x: x.part_num)  # Follows nested alts/molds relationships

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_related_alts_and_molds(837)
  p.part.is_alt = False

SELECT "lego_partrelationship"."id",
       "lego_partrelationship"."part_parent_id",
       "lego_partrelationship"."part_child_id",
       "lego_partrelationship"."rel_type",
       T3."id",
       T3."part_num",
       T3."name",
       T3."part_cat_id",
       T3."notes",
       T3."is_active",
       T3."search_vector",
       T3."ldraw_part_id",
       T3."bricklink_part_id",
       T3."ignore_color_errors",
       T3."part_material_id",
       T3."is_bricklink_minifig",
       T3."is_bricklink_book",
       T3."is_bricklink_gear",
       T3."show_generic_part_msg",
       "lego_partcategory"."id",
       "lego_partcategory"."name",
       "lego_partcategory"."part_count",
       "lego_partcategory"."img",
       "lego_partcategory"."slug",
       "lego_partoverlay"."part_id",
       "lego_partoverlay"."length",
       "lego_partstats"."part_id",
       "lego_partstats"."num_sets",
       "lego_partstats"."num_mocs",
       "lego_partstats"."num_set_parts",
       "lego_partstats"."num_moc_parts",
       "lego_partstats"."y1",
       "lego_partstats"."y2",
       "lego_partstats"."is_dirty"
  FROM
"lego_partrelationship"
 INNER JOIN
"lego_part" T3
    ON
("lego_partrelationship"."part_child_id" = T3."id")
 INNER JOIN
"lego_partcategory"
    ON
(T3."part_cat_id" = "lego_partcategory"."id")
  LEFT OUTER JOIN
"lego_partoverlay"
    ON
(T3."id" = "lego_partoverlay"."part_id")
  LEFT OUTER JOIN
"lego_partstats"
    ON
(T3."id" = "lego_partstats"."part_id")
 WHERE
("lego_partrelationship"."part_parent_id" = 24432 AND "lego_partrelationship"."rel_type" = 'P' AND NOT ("lego_partrelationship"."part_child_id" = 24432))
 ORDER BY
"lego_partstats"."num_sets" DESC
SELECT ••• FROM "lego_partrelationship" INNER JOIN "lego_part" T3 ON ("lego_partrelationship"."part_child_id" = T3."id") INNER JOIN "lego_partcategory" ON (T3."part_cat_id" = "lego_partcategory"."id") LEFT OUTER JOIN "lego_partoverlay" ON (T3."id" = "lego_partoverlay"."part_id") LEFT OUTER JOIN "lego_partstats" ON (T3."id" = "lego_partstats"."part_id") WHERE ("lego_partrelationship"."part_parent_id" = 24432 AND "lego_partrelationship"."rel_type" = 'P' AND NOT ("lego_partrelationship"."part_child_id" = 24432)) ORDER BY "lego_partstats"."num_sets" DESC
4 similar queries.
4.45

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(383)
  prints = sorted(part.get_related_prints_child(), key=lambda x: x.part_num)

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_related_prints_child(750)
  return self.get_related_children(PartRelationship.REL_TYPE_PRINT, limit=limit)

/home/nathan/rb/site/./lego/models/parts.py in get_related_children(743)
  return [p.part_child for p in parts]

SELECT "lego_element"."id",
       "lego_element"."part_id",
       "lego_element"."color_id",
       "lego_element"."element_id",
       "lego_element"."design_id",
       "lego_element"."descr",
       "lego_element"."color_descr",
       "lego_element"."last_download_attempt",
       "lego_element"."num_download_attempts",
       "lego_element"."is_export_id",
       "lego_element"."is_active"
  FROM
"lego_element"
 INNER JOIN
"lego_color"
    ON
("lego_element"."color_id" = "lego_color"."id")
 WHERE
("lego_element"."is_active" AND "lego_element"."part_id" IN (41331, 32135, 42363, 27974, 35518, 11049, 28791, 62003, 31305, 64351, 8288, 11351, 42350, 4937, 63936, 39393, 58727, 14615, 41368, 40766, 1508, 27914, 28399, 36705, 35845, 71701, 51364, 49408, 49409, 49410, 49411, 49413, 49414, 49415, 49416, 49417, 49418, 49420, 49421, 49422, 49423, 49424, 49425, 49426, 49428, 49429, 49430, 49432, 49412, 49419, 49427, 49431, 52929, 71674, 55183, 60522, 61168, 61585, 61587, 63606, 65035, 68654, 69013, 72110, 42436, 16157, 19889, 17402, 368, 9273, 17262, 8162, 31297, 2287, 12506, 343, 12346, 19417, 16143, 15856, 27738, 27037, 5209))
 ORDER BY
"lego_color"."name" ASC, "lego_element"."element_id" ASC
SELECT ••• FROM "lego_element" INNER JOIN "lego_color" ON ("lego_element"."color_id" = "lego_color"."id") WHERE ("lego_element"."is_active" AND "lego_element"."part_id" IN (41331, 32135, 42363, 27974, 35518, 11049, 28791, 62003, 31305, 64351, 8288, 11351, 42350, 4937, 63936, 39393, 58727, 14615, 41368, 40766, 1508, 27914, 28399, 36705, 35845, 71701, 51364, 49408, 49409, 49410, 49411, 49413, 49414, 49415, 49416, 49417, 49418, 49420, 49421, 49422, 49423, 49424, 49425, 49426, 49428, 49429, 49430, 49432, 49412, 49419, 49427, 49431, 52929, 71674, 55183, 60522, 61168, 61585, 61587, 63606, 65035, 68654, 69013, 72110, 42436, 16157, 19889, 17402, 368, 9273, 17262, 8162, 31297, 2287, 12506, 343, 12346, 19417, 16143, 15856, 27738, 27037, 5209)) ORDER BY "lego_color"."name" ASC, "lego_element"."element_id" ASC
1.13

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(383)
  prints = sorted(part.get_related_prints_child(), key=lambda x: x.part_num)

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_related_prints_child(750)
  return self.get_related_children(PartRelationship.REL_TYPE_PRINT, limit=limit)

/home/nathan/rb/site/./lego/models/parts.py in get_related_children(743)
  return [p.part_child for p in parts]

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
"lego_partcolorstats"."part_id" IN (41331, 32135, 42363, 27974, 35518, 11049, 28791, 62003, 31305, 64351, 8288, 11351, 42350, 4937, 63936, 39393, 58727, 14615, 41368, 40766, 1508, 27914, 28399, 36705, 35845, 71701, 51364, 49408, 49409, 49410, 49411, 49413, 49414, 49415, 49416, 49417, 49418, 49420, 49421, 49422, 49423, 49424, 49425, 49426, 49428, 49429, 49430, 49432, 49412, 49419, 49427, 49431, 52929, 71674, 55183, 60522, 61168, 61585, 61587, 63606, 65035, 68654, 69013, 72110, 42436, 16157, 19889, 17402, 368, 9273, 17262, 8162, 31297, 2287, 12506, 343, 12346, 19417, 16143, 15856, 27738, 27037, 5209)
SELECT ••• FROM "lego_partcolorstats" WHERE "lego_partcolorstats"."part_id" IN (41331, 32135, 42363, 27974, 35518, 11049, 28791, 62003, 31305, 64351, 8288, 11351, 42350, 4937, 63936, 39393, 58727, 14615, 41368, 40766, 1508, 27914, 28399, 36705, 35845, 71701, 51364, 49408, 49409, 49410, 49411, 49413, 49414, 49415, 49416, 49417, 49418, 49420, 49421, 49422, 49423, 49424, 49425, 49426, 49428, 49429, 49430, 49432, 49412, 49419, 49427, 49431, 52929, 71674, 55183, 60522, 61168, 61585, 61587, 63606, 65035, 68654, 69013, 72110, 42436, 16157, 19889, 17402, 368, 9273, 17262, 8162, 31297, 2287, 12506, 343, 12346, 19417, 16143, 15856, 27738, 27037, 5209)
1.57

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(383)
  prints = sorted(part.get_related_prints_child(), key=lambda x: x.part_num)

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_related_prints_child(750)
  return self.get_related_children(PartRelationship.REL_TYPE_PRINT, limit=limit)

/home/nathan/rb/site/./lego/models/parts.py in get_related_children(743)
  return [p.part_child for p in parts]

SELECT "lego_partcost"."id",
       "lego_partcost"."part_id",
       "lego_partcost"."color_id",
       "lego_partcost"."is_used",
       "lego_partcost"."cost_avg",
       "lego_partcost"."cost_min",
       "lego_partcost"."cost_max",
       "lego_partcost"."cost_count"
  FROM
"lego_partcost"
 WHERE
"lego_partcost"."part_id" IN (41331, 32135, 42363, 27974, 35518, 11049, 28791, 62003, 31305, 64351, 8288, 11351, 42350, 4937, 63936, 39393, 58727, 14615, 41368, 40766, 1508, 27914, 28399, 36705, 35845, 71701, 51364, 49408, 49409, 49410, 49411, 49413, 49414, 49415, 49416, 49417, 49418, 49420, 49421, 49422, 49423, 49424, 49425, 49426, 49428, 49429, 49430, 49432, 49412, 49419, 49427, 49431, 52929, 71674, 55183, 60522, 61168, 61585, 61587, 63606, 65035, 68654, 69013, 72110, 42436, 16157, 19889, 17402, 368, 9273, 17262, 8162, 31297, 2287, 12506, 343, 12346, 19417, 16143, 15856, 27738, 27037, 5209)
SELECT ••• FROM "lego_partcost" WHERE "lego_partcost"."part_id" IN (41331, 32135, 42363, 27974, 35518, 11049, 28791, 62003, 31305, 64351, 8288, 11351, 42350, 4937, 63936, 39393, 58727, 14615, 41368, 40766, 1508, 27914, 28399, 36705, 35845, 71701, 51364, 49408, 49409, 49410, 49411, 49413, 49414, 49415, 49416, 49417, 49418, 49420, 49421, 49422, 49423, 49424, 49425, 49426, 49428, 49429, 49430, 49432, 49412, 49419, 49427, 49431, 52929, 71674, 55183, 60522, 61168, 61585, 61587, 63606, 65035, 68654, 69013, 72110, 42436, 16157, 19889, 17402, 368, 9273, 17262, 8162, 31297, 2287, 12506, 343, 12346, 19417, 16143, 15856, 27738, 27037, 5209)
1.85

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(383)
  prints = sorted(part.get_related_prints_child(), key=lambda x: x.part_num)

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_related_prints_child(750)
  return self.get_related_children(PartRelationship.REL_TYPE_PRINT, limit=limit)

/home/nathan/rb/site/./lego/models/parts.py in get_related_children(743)
  return [p.part_child for p in parts]

SELECT "lego_partrelationship"."id",
       "lego_partrelationship"."part_parent_id",
       "lego_partrelationship"."part_child_id",
       "lego_partrelationship"."rel_type",
       T3."id",
       T3."part_num",
       T3."name",
       T3."part_cat_id",
       T3."notes",
       T3."is_active",
       T3."search_vector",
       T3."ldraw_part_id",
       T3."bricklink_part_id",
       T3."ignore_color_errors",
       T3."part_material_id",
       T3."is_bricklink_minifig",
       T3."is_bricklink_book",
       T3."is_bricklink_gear",
       T3."show_generic_part_msg",
       "lego_partcategory"."id",
       "lego_partcategory"."name",
       "lego_partcategory"."part_count",
       "lego_partcategory"."img",
       "lego_partcategory"."slug",
       "lego_partoverlay"."part_id",
       "lego_partoverlay"."length",
       "lego_partstats"."part_id",
       "lego_partstats"."num_sets",
       "lego_partstats"."num_mocs",
       "lego_partstats"."num_set_parts",
       "lego_partstats"."num_moc_parts",
       "lego_partstats"."y1",
       "lego_partstats"."y2",
       "lego_partstats"."is_dirty"
  FROM
"lego_partrelationship"
 INNER JOIN
"lego_part" T3
    ON
("lego_partrelationship"."part_child_id" = T3."id")
 INNER JOIN
"lego_partcategory"
    ON
(T3."part_cat_id" = "lego_partcategory"."id")
  LEFT OUTER JOIN
"lego_partoverlay"
    ON
(T3."id" = "lego_partoverlay"."part_id")
  LEFT OUTER JOIN
"lego_partstats"
    ON
(T3."id" = "lego_partstats"."part_id")
 WHERE
("lego_partrelationship"."part_parent_id" = 24432 AND "lego_partrelationship"."rel_type" = 'T' AND NOT ("lego_partrelationship"."part_child_id" = 24432))
 ORDER BY
"lego_partstats"."num_sets" DESC
SELECT ••• FROM "lego_partrelationship" INNER JOIN "lego_part" T3 ON ("lego_partrelationship"."part_child_id" = T3."id") INNER JOIN "lego_partcategory" ON (T3."part_cat_id" = "lego_partcategory"."id") LEFT OUTER JOIN "lego_partoverlay" ON (T3."id" = "lego_partoverlay"."part_id") LEFT OUTER JOIN "lego_partstats" ON (T3."id" = "lego_partstats"."part_id") WHERE ("lego_partrelationship"."part_parent_id" = 24432 AND "lego_partrelationship"."rel_type" = 'T' AND NOT ("lego_partrelationship"."part_child_id" = 24432)) ORDER BY "lego_partstats"."num_sets" DESC
4 similar queries.
0.71

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(384)
  patterns = sorted(part.get_related_patterns_child(), key=lambda x: x.part_num)

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_related_patterns_child(759)
  return self.get_related_children(PartRelationship.REL_TYPE_PATTERN, limit=limit)

/home/nathan/rb/site/./lego/models/parts.py in get_related_children(743)
  return [p.part_child for p in parts]

SELECT "lego_partrelationship"."id",
       "lego_partrelationship"."part_parent_id",
       "lego_partrelationship"."part_child_id",
       "lego_partrelationship"."rel_type",
       T3."id",
       T3."part_num",
       T3."name",
       T3."part_cat_id",
       T3."notes",
       T3."is_active",
       T3."search_vector",
       T3."ldraw_part_id",
       T3."bricklink_part_id",
       T3."ignore_color_errors",
       T3."part_material_id",
       T3."is_bricklink_minifig",
       T3."is_bricklink_book",
       T3."is_bricklink_gear",
       T3."show_generic_part_msg",
       "lego_partcategory"."id",
       "lego_partcategory"."name",
       "lego_partcategory"."part_count",
       "lego_partcategory"."img",
       "lego_partcategory"."slug",
       "lego_partoverlay"."part_id",
       "lego_partoverlay"."length",
       "lego_partstats"."part_id",
       "lego_partstats"."num_sets",
       "lego_partstats"."num_mocs",
       "lego_partstats"."num_set_parts",
       "lego_partstats"."num_moc_parts",
       "lego_partstats"."y1",
       "lego_partstats"."y2",
       "lego_partstats"."is_dirty"
  FROM
"lego_partrelationship"
 INNER JOIN
"lego_part" T3
    ON
("lego_partrelationship"."part_child_id" = T3."id")
 INNER JOIN
"lego_partcategory"
    ON
(T3."part_cat_id" = "lego_partcategory"."id")
  LEFT OUTER JOIN
"lego_partoverlay"
    ON
(T3."id" = "lego_partoverlay"."part_id")
  LEFT OUTER JOIN
"lego_partstats"
    ON
(T3."id" = "lego_partstats"."part_id")
 WHERE
("lego_partrelationship"."part_parent_id" = 24432 AND "lego_partrelationship"."rel_type" = 'R' AND NOT ("lego_partrelationship"."part_child_id" = 24432))
 ORDER BY
"lego_partstats"."num_sets" DESC
SELECT ••• FROM "lego_partrelationship" INNER JOIN "lego_part" T3 ON ("lego_partrelationship"."part_child_id" = T3."id") INNER JOIN "lego_partcategory" ON (T3."part_cat_id" = "lego_partcategory"."id") LEFT OUTER JOIN "lego_partoverlay" ON (T3."id" = "lego_partoverlay"."part_id") LEFT OUTER JOIN "lego_partstats" ON (T3."id" = "lego_partstats"."part_id") WHERE ("lego_partrelationship"."part_parent_id" = 24432 AND "lego_partrelationship"."rel_type" = 'R' AND NOT ("lego_partrelationship"."part_child_id" = 24432)) ORDER BY "lego_partstats"."num_sets" DESC
4 similar queries.
0.63

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(385)
  pairs = part.get_related_pairs()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_related_pairs(854)
  children = self.get_related_children(PartRelationship.REL_TYPE_PAIR)

/home/nathan/rb/site/./lego/models/parts.py in get_related_children(743)
  return [p.part_child for p in parts]

SELECT "lego_partrelationship"."id",
       "lego_partrelationship"."part_parent_id",
       "lego_partrelationship"."part_child_id",
       "lego_partrelationship"."rel_type",
       T3."id",
       T3."part_num",
       T3."name",
       T3."part_cat_id",
       T3."notes",
       T3."is_active",
       T3."search_vector",
       T3."ldraw_part_id",
       T3."bricklink_part_id",
       T3."ignore_color_errors",
       T3."part_material_id",
       T3."is_bricklink_minifig",
       T3."is_bricklink_book",
       T3."is_bricklink_gear",
       T3."show_generic_part_msg",
       "lego_partcategory"."id",
       "lego_partcategory"."name",
       "lego_partcategory"."part_count",
       "lego_partcategory"."img",
       "lego_partcategory"."slug",
       "lego_partoverlay"."part_id",
       "lego_partoverlay"."length",
       "lego_partstats"."part_id",
       "lego_partstats"."num_sets",
       "lego_partstats"."num_mocs",
       "lego_partstats"."num_set_parts",
       "lego_partstats"."num_moc_parts",
       "lego_partstats"."y1",
       "lego_partstats"."y2",
       "lego_partstats"."is_dirty"
  FROM
"lego_partrelationship"
 INNER JOIN
"lego_part" T3
    ON
("lego_partrelationship"."part_parent_id" = T3."id")
 INNER JOIN
"lego_partcategory"
    ON
(T3."part_cat_id" = "lego_partcategory"."id")
  LEFT OUTER JOIN
"lego_partoverlay"
    ON
(T3."id" = "lego_partoverlay"."part_id")
  LEFT OUTER JOIN
"lego_partstats"
    ON
(T3."id" = "lego_partstats"."part_id")
 WHERE
("lego_partrelationship"."part_child_id" = 24432 AND "lego_partrelationship"."rel_type" = 'R' AND NOT ("lego_partrelationship"."part_parent_id" = 24432))
 ORDER BY
"lego_partstats"."num_sets" DESC
SELECT ••• FROM "lego_partrelationship" INNER JOIN "lego_part" T3 ON ("lego_partrelationship"."part_parent_id" = T3."id") INNER JOIN "lego_partcategory" ON (T3."part_cat_id" = "lego_partcategory"."id") LEFT OUTER JOIN "lego_partoverlay" ON (T3."id" = "lego_partoverlay"."part_id") LEFT OUTER JOIN "lego_partstats" ON (T3."id" = "lego_partstats"."part_id") WHERE ("lego_partrelationship"."part_child_id" = 24432 AND "lego_partrelationship"."rel_type" = 'R' AND NOT ("lego_partrelationship"."part_parent_id" = 24432)) ORDER BY "lego_partstats"."num_sets" DESC
2 similar queries.
0.48

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(385)
  pairs = part.get_related_pairs()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_related_pairs(855)
  parents = self.get_related_parents(PartRelationship.REL_TYPE_PAIR)

/home/nathan/rb/site/./lego/models/parts.py in get_related_parents(714)
  return [p.part_parent for p in parts]

SELECT "lego_partrelationship"."id",
       "lego_partrelationship"."part_parent_id",
       "lego_partrelationship"."part_child_id",
       "lego_partrelationship"."rel_type",
       T3."id",
       T3."part_num",
       T3."name",
       T3."part_cat_id",
       T3."notes",
       T3."is_active",
       T3."search_vector",
       T3."ldraw_part_id",
       T3."bricklink_part_id",
       T3."ignore_color_errors",
       T3."part_material_id",
       T3."is_bricklink_minifig",
       T3."is_bricklink_book",
       T3."is_bricklink_gear",
       T3."show_generic_part_msg",
       "lego_partcategory"."id",
       "lego_partcategory"."name",
       "lego_partcategory"."part_count",
       "lego_partcategory"."img",
       "lego_partcategory"."slug",
       "lego_partoverlay"."part_id",
       "lego_partoverlay"."length",
       "lego_partstats"."part_id",
       "lego_partstats"."num_sets",
       "lego_partstats"."num_mocs",
       "lego_partstats"."num_set_parts",
       "lego_partstats"."num_moc_parts",
       "lego_partstats"."y1",
       "lego_partstats"."y2",
       "lego_partstats"."is_dirty"
  FROM
"lego_partrelationship"
 INNER JOIN
"lego_part" T3
    ON
("lego_partrelationship"."part_parent_id" = T3."id")
 INNER JOIN
"lego_partcategory"
    ON
(T3."part_cat_id" = "lego_partcategory"."id")
  LEFT OUTER JOIN
"lego_partoverlay"
    ON
(T3."id" = "lego_partoverlay"."part_id")
  LEFT OUTER JOIN
"lego_partstats"
    ON
(T3."id" = "lego_partstats"."part_id")
 WHERE
("lego_partrelationship"."part_child_id" = 24432 AND "lego_partrelationship"."rel_type" = 'P')
 LIMIT
1
SELECT ••• FROM "lego_partrelationship" INNER JOIN "lego_part" T3 ON ("lego_partrelationship"."part_parent_id" = T3."id") INNER JOIN "lego_partcategory" ON (T3."part_cat_id" = "lego_partcategory"."id") LEFT OUTER JOIN "lego_partoverlay" ON (T3."id" = "lego_partoverlay"."part_id") LEFT OUTER JOIN "lego_partstats" ON (T3."id" = "lego_partstats"."part_id") WHERE ("lego_partrelationship"."part_child_id" = 24432 AND "lego_partrelationship"."rel_type" = 'P') LIMIT 1
2 similar queries.
0.60

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(386)
  print_of = part.get_related_prints_parent()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_related_prints_parent(773)
  return self.get_related_parent(PartRelationship.REL_TYPE_PRINT, query_related=query_related)

/home/nathan/rb/site/./lego/models/parts.py in get_related_parent(727)
  return parents[0].part_parent

SELECT "lego_partrelationship"."id",
       "lego_partrelationship"."part_parent_id",
       "lego_partrelationship"."part_child_id",
       "lego_partrelationship"."rel_type",
       T3."id",
       T3."part_num",
       T3."name",
       T3."part_cat_id",
       T3."notes",
       T3."is_active",
       T3."search_vector",
       T3."ldraw_part_id",
       T3."bricklink_part_id",
       T3."ignore_color_errors",
       T3."part_material_id",
       T3."is_bricklink_minifig",
       T3."is_bricklink_book",
       T3."is_bricklink_gear",
       T3."show_generic_part_msg",
       "lego_partcategory"."id",
       "lego_partcategory"."name",
       "lego_partcategory"."part_count",
       "lego_partcategory"."img",
       "lego_partcategory"."slug",
       "lego_partoverlay"."part_id",
       "lego_partoverlay"."length",
       "lego_partstats"."part_id",
       "lego_partstats"."num_sets",
       "lego_partstats"."num_mocs",
       "lego_partstats"."num_set_parts",
       "lego_partstats"."num_moc_parts",
       "lego_partstats"."y1",
       "lego_partstats"."y2",
       "lego_partstats"."is_dirty"
  FROM
"lego_partrelationship"
 INNER JOIN
"lego_part" T3
    ON
("lego_partrelationship"."part_parent_id" = T3."id")
 INNER JOIN
"lego_partcategory"
    ON
(T3."part_cat_id" = "lego_partcategory"."id")
  LEFT OUTER JOIN
"lego_partoverlay"
    ON
(T3."id" = "lego_partoverlay"."part_id")
  LEFT OUTER JOIN
"lego_partstats"
    ON
(T3."id" = "lego_partstats"."part_id")
 WHERE
("lego_partrelationship"."part_child_id" = 24432 AND "lego_partrelationship"."rel_type" = 'T')
 LIMIT
1
SELECT ••• FROM "lego_partrelationship" INNER JOIN "lego_part" T3 ON ("lego_partrelationship"."part_parent_id" = T3."id") INNER JOIN "lego_partcategory" ON (T3."part_cat_id" = "lego_partcategory"."id") LEFT OUTER JOIN "lego_partoverlay" ON (T3."id" = "lego_partoverlay"."part_id") LEFT OUTER JOIN "lego_partstats" ON (T3."id" = "lego_partstats"."part_id") WHERE ("lego_partrelationship"."part_child_id" = 24432 AND "lego_partrelationship"."rel_type" = 'T') LIMIT 1
2 similar queries.
0.83

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(387)
  pattern_of = part.get_related_patterns_parent()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_related_patterns_parent(778)
  return self.get_related_parent(PartRelationship.REL_TYPE_PATTERN)

/home/nathan/rb/site/./lego/models/parts.py in get_related_parent(727)
  return parents[0].part_parent

SELECT "lego_partrelationship"."id",
       "lego_partrelationship"."part_parent_id",
       "lego_partrelationship"."part_child_id",
       "lego_partrelationship"."rel_type",
       T3."id",
       T3."part_num",
       T3."name",
       T3."part_cat_id",
       T3."notes",
       T3."is_active",
       T3."search_vector",
       T3."ldraw_part_id",
       T3."bricklink_part_id",
       T3."ignore_color_errors",
       T3."part_material_id",
       T3."is_bricklink_minifig",
       T3."is_bricklink_book",
       T3."is_bricklink_gear",
       T3."show_generic_part_msg",
       "lego_partcategory"."id",
       "lego_partcategory"."name",
       "lego_partcategory"."part_count",
       "lego_partcategory"."img",
       "lego_partcategory"."slug",
       "lego_partoverlay"."part_id",
       "lego_partoverlay"."length",
       "lego_partstats"."part_id",
       "lego_partstats"."num_sets",
       "lego_partstats"."num_mocs",
       "lego_partstats"."num_set_parts",
       "lego_partstats"."num_moc_parts",
       "lego_partstats"."y1",
       "lego_partstats"."y2",
       "lego_partstats"."is_dirty"
  FROM
"lego_partrelationship"
 INNER JOIN
"lego_part" T3
    ON
("lego_partrelationship"."part_parent_id" = T3."id")
 INNER JOIN
"lego_partcategory"
    ON
(T3."part_cat_id" = "lego_partcategory"."id")
  LEFT OUTER JOIN
"lego_partoverlay"
    ON
(T3."id" = "lego_partoverlay"."part_id")
  LEFT OUTER JOIN
"lego_partstats"
    ON
(T3."id" = "lego_partstats"."part_id")
 WHERE
("lego_partrelationship"."part_child_id" = 24432 AND "lego_partrelationship"."rel_type" = 'B' AND NOT ("lego_partrelationship"."part_parent_id" = 24432))
 ORDER BY
"lego_partstats"."num_sets" DESC
SELECT ••• FROM "lego_partrelationship" INNER JOIN "lego_part" T3 ON ("lego_partrelationship"."part_parent_id" = T3."id") INNER JOIN "lego_partcategory" ON (T3."part_cat_id" = "lego_partcategory"."id") LEFT OUTER JOIN "lego_partoverlay" ON (T3."id" = "lego_partoverlay"."part_id") LEFT OUTER JOIN "lego_partstats" ON (T3."id" = "lego_partstats"."part_id") WHERE ("lego_partrelationship"."part_child_id" = 24432 AND "lego_partrelationship"."rel_type" = 'B' AND NOT ("lego_partrelationship"."part_parent_id" = 24432)) ORDER BY "lego_partstats"."num_sets" DESC
2 similar queries.
0.47

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(388)
  subpart_of = part.get_related_subparts_parents()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_related_subparts_parents(801)
  return self.get_related_parents(PartRelationship.REL_TYPE_SUBPART)

/home/nathan/rb/site/./lego/models/parts.py in get_related_parents(714)
  return [p.part_parent for p in parts]

select lego_color.id,
       lego_color.id as color_id,
       name as color_name,
       rgb,
       sum(num_set_parts) as num_set_parts,
       sum(num_moc_parts) as num_moc_parts,
       sum(num_sets) as num_sets,
       sum(num_mocs) as num_mocs,
       min(y1) as y1,
       max(y2) as y2
  from
lego_color
  left outer join
lego_PartColorStats
    on
lego_PartColorStats.color_id = lego_Color.id
   and
lego_PartColorStats.part_id = 24432
 where
lego_color.id not in (-1)
 group by
1,
       2,
       3,
       4
select lego_color.id, lego_color.id as color_id, name as color_name, rgb, sum(num_set_parts) as num_set_parts, sum(num_moc_parts) as num_moc_parts, sum(num_sets) as num_sets, sum(num_mocs) as num_mocs, min(y1) as y1, max(y2) as y2 from lego_color left outer join lego_PartColorStats on lego_PartColorStats.color_id = lego_Color.id and lego_PartColorStats.part_id = 24432 where lego_color.id not in (-1) group by 1, 2, 3, 4
0.51

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(418)
  context['part_colors'] = PartColorStats.get_all_color_stats_for_part(part.id)

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_all_color_stats_for_part(1767)
  for stat in stats:

SELECT "lego_element"."id",
       "lego_element"."part_id",
       "lego_element"."color_id",
       "lego_element"."element_id",
       "lego_element"."design_id",
       "lego_element"."descr",
       "lego_element"."color_descr",
       "lego_element"."last_download_attempt",
       "lego_element"."num_download_attempts",
       "lego_element"."is_export_id",
       "lego_element"."is_active"
  FROM
"lego_element"
 INNER JOIN
"lego_color"
    ON
("lego_element"."color_id" = "lego_color"."id")
 WHERE
("lego_element"."is_active" AND "lego_element"."is_export_id" AND "lego_element"."part_id" = 24432)
 ORDER BY
"lego_color"."name" ASC, "lego_element"."element_id" ASC
SELECT ••• FROM "lego_element" INNER JOIN "lego_color" ON ("lego_element"."color_id" = "lego_color"."id") WHERE ("lego_element"."is_active" AND "lego_element"."is_export_id" AND "lego_element"."part_id" = 24432) ORDER BY "lego_color"."name" ASC, "lego_element"."element_id" ASC
0.45

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(425)
  elements_map = {e.color_id: e for e in elements}

SELECT "lego_partstats"."part_id",
       "lego_partstats"."num_sets",
       "lego_partstats"."num_mocs",
       "lego_partstats"."num_set_parts",
       "lego_partstats"."num_moc_parts",
       "lego_partstats"."y1",
       "lego_partstats"."y2",
       "lego_partstats"."is_dirty"
  FROM
"lego_partstats"
 WHERE
"lego_partstats"."part_id" = 13807
 LIMIT
21
SELECT ••• FROM "lego_partstats" WHERE "lego_partstats"."part_id" = 13807 LIMIT 21
2 similar queries.
0.14

Connection: default

Transaction status: In transaction

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(461)
  all_molds.sort(key=lambda x: x.stats.y1)

/home/nathan/rb/site/./lego/views/parts.py in <lambda>(461)
  all_molds.sort(key=lambda x: x.stats.y1)

/usr/lib/python3.10/contextlib.py in inner(79)
  return func(*args, **kwds)

/home/nathan/venv_rb310/lib/python3.10/site-packages/annoying/fields.py in __get__(36)
  .__get__(instance, instance_type)

SELECT "lego_partstats"."part_id",
       "lego_partstats"."num_sets",
       "lego_partstats"."num_mocs",
       "lego_partstats"."num_set_parts",
       "lego_partstats"."num_moc_parts",
       "lego_partstats"."y1",
       "lego_partstats"."y2",
       "lego_partstats"."is_dirty"
  FROM
"lego_partstats"
 WHERE
"lego_partstats"."part_id" = 14010
 LIMIT
21
SELECT ••• FROM "lego_partstats" WHERE "lego_partstats"."part_id" = 14010 LIMIT 21
2 similar queries.
0.09

Connection: default

Transaction status: In transaction

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(461)
  all_molds.sort(key=lambda x: x.stats.y1)

/home/nathan/rb/site/./lego/views/parts.py in <lambda>(461)
  all_molds.sort(key=lambda x: x.stats.y1)

/usr/lib/python3.10/contextlib.py in inner(79)
  return func(*args, **kwds)

/home/nathan/venv_rb310/lib/python3.10/site-packages/annoying/fields.py in __get__(36)
  .__get__(instance, instance_type)

select case                                    
            when
s.set_type='Figure' then fs.year
            else
s.year
             end
as year, count(*) as num_sets,
       min(s.id) as id
  FROM
lego_baseset s
 INNER JOIN
lego_inventory i
    on
s.id = i.set_id
 INNER JOIN
lego_invpart ip
    on
i.id = ip.inventory_id
  left outer join
lego_invset invs
    on
s.id = invs.inv_set_id
   and
s.set_type='Figure'
  left outer join
lego_inventory fi
    on
invs.inventory_id = fi.id
  left outer join
lego_baseset fs
    on
fi.set_id = fs.id
   and
fs.set_type = 'Set'
 WHERE
s.is_active
   AND
i.is_active
   AND
ip.part_id = 13807
   and
(s.set_type = 'Set' or fs.year is not null)
   AND
s.set_type IN ('Set', 'Figure')
 group by
1
select case when s.set_type='Figure' then fs.year else s.year end as year, count(*) as num_sets, min(s.id) as id FROM lego_baseset s INNER JOIN lego_inventory i on s.id = i.set_id INNER JOIN lego_invpart ip on i.id = ip.inventory_id left outer join lego_invset invs on s.id = invs.inv_set_id and s.set_type='Figure' left outer join lego_inventory fi on invs.inventory_id = fi.id left outer join lego_baseset fs on fi.set_id = fs.id and fs.set_type = 'Set' WHERE s.is_active AND i.is_active AND ip.part_id = 13807 and (s.set_type = 'Set' or fs.year is not null) AND s.set_type IN ('Set', 'Figure') group by 1
33.52

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 201380
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 201380 LIMIT 21
78 similar queries.
0.18

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 2812
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 2812 LIMIT 21
78 similar queries.
0.19

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 1221
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 1221 LIMIT 21
78 similar queries.
0.21

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 1091
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 1091 LIMIT 21
78 similar queries.
0.15

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 1179
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 1179 LIMIT 21
78 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 1811
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 1811 LIMIT 21
78 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 1
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 1 LIMIT 21
78 similar queries.
0.08

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 1351
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 1351 LIMIT 21
78 similar queries.
0.06

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 1512
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 1512 LIMIT 21
78 similar queries.
0.06

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 1776
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 1776 LIMIT 21
78 similar queries.
0.06

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 347
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 347 LIMIT 21
78 similar queries.
0.05

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 5
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 5 LIMIT 21
78 similar queries.
0.06

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 330
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 330 LIMIT 21
78 similar queries.
0.06

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 1073
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 1073 LIMIT 21
78 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 131
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 131 LIMIT 21
78 similar queries.
0.09

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 278
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 278 LIMIT 21
78 similar queries.
0.06

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 5780
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 5780 LIMIT 21
78 similar queries.
0.07

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 1709
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 1709 LIMIT 21
78 similar queries.
0.06

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 1348
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 1348 LIMIT 21
78 similar queries.
0.06

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

select case                                    
            when
s.set_type='Figure' then fs.year
            else
s.year
             end
as year, count(*) as num_sets,
       min(s.id) as id
  FROM
lego_baseset s
 INNER JOIN
lego_inventory i
    on
s.id = i.set_id
 INNER JOIN
lego_invpart ip
    on
i.id = ip.inventory_id
  left outer join
lego_invset invs
    on
s.id = invs.inv_set_id
   and
s.set_type='Figure'
  left outer join
lego_inventory fi
    on
invs.inventory_id = fi.id
  left outer join
lego_baseset fs
    on
fi.set_id = fs.id
   and
fs.set_type = 'Set'
 WHERE
s.is_active
   AND
i.is_active
   AND
ip.part_id = 14010
   and
(s.set_type = 'Set' or fs.year is not null)
   AND
s.set_type IN ('Set', 'Figure')
 group by
1
select case when s.set_type='Figure' then fs.year else s.year end as year, count(*) as num_sets, min(s.id) as id FROM lego_baseset s INNER JOIN lego_inventory i on s.id = i.set_id INNER JOIN lego_invpart ip on i.id = ip.inventory_id left outer join lego_invset invs on s.id = invs.inv_set_id and s.set_type='Figure' left outer join lego_inventory fi on invs.inventory_id = fi.id left outer join lego_baseset fs on fi.set_id = fs.id and fs.set_type = 'Set' WHERE s.is_active AND i.is_active AND ip.part_id = 14010 and (s.set_type = 'Set' or fs.year is not null) AND s.set_type IN ('Set', 'Figure') group by 1
8.94

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 1309
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 1309 LIMIT 21
78 similar queries.
0.18

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 5205
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 5205 LIMIT 21
78 similar queries.
0.09

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 822
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 822 LIMIT 21
78 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 6959
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 6959 LIMIT 21
78 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 2797
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 2797 LIMIT 21
78 similar queries.
0.08

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 5961
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 5961 LIMIT 21
78 similar queries.
0.08

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 25515
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 25515 LIMIT 21
78 similar queries.
0.07

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 24850
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 24850 LIMIT 21
78 similar queries.
0.06

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 7682
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 7682 LIMIT 21
78 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 24764
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 24764 LIMIT 21
78 similar queries.
0.07

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

select case                                    
            when
s.set_type='Figure' then fs.year
            else
s.year
             end
as year, count(*) as num_sets,
       min(s.id) as id
  FROM
lego_baseset s
 INNER JOIN
lego_inventory i
    on
s.id = i.set_id
 INNER JOIN
lego_invpart ip
    on
i.id = ip.inventory_id
  left outer join
lego_invset invs
    on
s.id = invs.inv_set_id
   and
s.set_type='Figure'
  left outer join
lego_inventory fi
    on
invs.inventory_id = fi.id
  left outer join
lego_baseset fs
    on
fi.set_id = fs.id
   and
fs.set_type = 'Set'
 WHERE
s.is_active
   AND
i.is_active
   AND
ip.part_id = 24432
   and
(s.set_type = 'Set' or fs.year is not null)
   AND
s.set_type IN ('Set', 'Figure')
 group by
1
select case when s.set_type='Figure' then fs.year else s.year end as year, count(*) as num_sets, min(s.id) as id FROM lego_baseset s INNER JOIN lego_inventory i on s.id = i.set_id INNER JOIN lego_invpart ip on i.id = ip.inventory_id left outer join lego_invset invs on s.id = invs.inv_set_id and s.set_type='Figure' left outer join lego_inventory fi on invs.inventory_id = fi.id left outer join lego_baseset fs on fi.set_id = fs.id and fs.set_type = 'Set' WHERE s.is_active AND i.is_active AND ip.part_id = 24432 and (s.set_type = 'Set' or fs.year is not null) AND s.set_type IN ('Set', 'Figure') group by 1
1333.85

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 4559
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 4559 LIMIT 21
78 similar queries.
0.22

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 4256
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 4256 LIMIT 21
78 similar queries.
0.17

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 3185
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 3185 LIMIT 21
78 similar queries.
0.15

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 1381
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 1381 LIMIT 21
78 similar queries.
0.18

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 4696
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 4696 LIMIT 21
78 similar queries.
0.14

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 213
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 213 LIMIT 21
78 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 956
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 956 LIMIT 21
78 similar queries.
0.08

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 343
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 343 LIMIT 21
78 similar queries.
0.24

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 274
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 274 LIMIT 21
78 similar queries.
0.12

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 261
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 261 LIMIT 21
78 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 652
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 652 LIMIT 21
78 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 99
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 99 LIMIT 21
78 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 312
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 312 LIMIT 21
78 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 365
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 365 LIMIT 21
78 similar queries.
0.09

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 2138
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 2138 LIMIT 21
78 similar queries.
0.09

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 401
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 401 LIMIT 21
78 similar queries.
0.07

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 478
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 478 LIMIT 21
78 similar queries.
0.07

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 78
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 78 LIMIT 21
78 similar queries.
0.06

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 83
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 83 LIMIT 21
78 similar queries.
0.07

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 233
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 233 LIMIT 21
78 similar queries.
0.06

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 47
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 47 LIMIT 21
78 similar queries.
0.06

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 100
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 100 LIMIT 21
78 similar queries.
0.06

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 422
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 422 LIMIT 21
78 similar queries.
0.06

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 160
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 160 LIMIT 21
78 similar queries.
0.06

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 253
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 253 LIMIT 21
78 similar queries.
0.06

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 527
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 527 LIMIT 21
78 similar queries.
0.06

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 84
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 84 LIMIT 21
78 similar queries.
0.08

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 15
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 15 LIMIT 21
78 similar queries.
0.09

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 263
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 263 LIMIT 21
78 similar queries.
0.09

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 2
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 2 LIMIT 21
78 similar queries.
0.08

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 146
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 146 LIMIT 21
78 similar queries.
0.07

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 28
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 28 LIMIT 21
78 similar queries.
0.07

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 23
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 23 LIMIT 21
78 similar queries.
0.09

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 14
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 14 LIMIT 21
78 similar queries.
0.19

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 143
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 143 LIMIT 21
78 similar queries.
0.23

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 123
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 123 LIMIT 21
78 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 21
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 21 LIMIT 21
78 similar queries.
0.08

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 86
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 86 LIMIT 21
78 similar queries.
0.07

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 484
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 484 LIMIT 21
78 similar queries.
0.06

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 1000
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 1000 LIMIT 21
78 similar queries.
0.08

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 21279
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 21279 LIMIT 21
78 similar queries.
0.07

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 29342
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 29342 LIMIT 21
78 similar queries.
0.18

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 36550
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 36550 LIMIT 21
78 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 46583
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 46583 LIMIT 21
78 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 105970
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 105970 LIMIT 21
78 similar queries.
0.09

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 147066
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 147066 LIMIT 21
78 similar queries.
0.08

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 189820
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 189820 LIMIT 21
78 similar queries.
0.07

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 233801
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 233801 LIMIT 21
78 similar queries.
0.07

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_baseset"."id",
       "lego_baseset"."theme_id"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 299765
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 299765 LIMIT 21
78 similar queries.
0.07

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(502)
  mold_timeline_data = DataPool(series=series)

/home/nathan/rb/site/./chartit/chartdata.py in __init__(98)
  self._get_data()

/home/nathan/rb/site/./chartit/chartdata.py in _get_data(156)
  for tk_td_tuples, vqs in self._generate_vqs():

/home/nathan/rb/site/./chartit/chartdata.py in _generate_vqs(147)
  for v in vqs:

/home/nathan/rb/site/./lego/models/sets.py in __init__(549)
  self.__original_theme_id = self.theme_id  # Need actual value or changes can't be detected

SELECT "lego_changelog"."id",
       "lego_changelog"."timestamp",
       "lego_changelog"."user_id",
       "lego_changelog"."model",
       "lego_changelog"."instance_id",
       "lego_changelog"."set_num",
       "lego_changelog"."part_num",
       "lego_changelog"."old_value",
       "lego_changelog"."new_value"
  FROM
"lego_changelog"
 WHERE
("lego_changelog"."instance_id" = 24432 AND "lego_changelog"."model" = 'Part')
 ORDER BY
"lego_changelog"."timestamp" DESC
SELECT ••• FROM "lego_changelog" WHERE ("lego_changelog"."instance_id" = 24432 AND "lego_changelog"."model" = 'Part') ORDER BY "lego_changelog"."timestamp" DESC
9.44

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(598)
  changes = part.get_change_summary()

/home/nathan/rb/site/./lego/models/parts.py in get_change_summary(961)
  changes = ChangeLog.get_changes(part_id=self.id)

/home/nathan/rb/site/./lego/models/changes.py in get_changes(276)
  if len(changes) > 0:

SELECT "lego_partmap"."id",
       "lego_partmap"."part_id",
       "lego_partmap"."ext_system",
       "lego_partmap"."ext_id",
       "lego_partmap"."is_export_id",
       "lego_partmap"."is_import_id"
  FROM
"lego_partmap"
 WHERE
"lego_partmap"."part_id" = 24432
 ORDER BY
"lego_partmap"."is_export_id" DESC, "lego_partmap"."ext_id" ASC
SELECT ••• FROM "lego_partmap" WHERE "lego_partmap"."part_id" = 24432 ORDER BY "lego_partmap"."is_export_id" DESC, "lego_partmap"."ext_id" ASC
0.48

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(600)
  context['mappings'] = part.get_ext_mappings()

/home/nathan/rb/site/./lego/models/parts.py in get_ext_mappings(1165)
  for part_map in self.mappings.order_by('-is_export_id', 'ext_id'):  # export first

SELECT "countries_plus_country"."iso",
       "countries_plus_country"."iso3",
       "countries_plus_country"."iso_numeric",
       "countries_plus_country"."fips",
       "countries_plus_country"."name",
       "countries_plus_country"."capital",
       "countries_plus_country"."area",
       "countries_plus_country"."population",
       "countries_plus_country"."continent",
       "countries_plus_country"."tld",
       "countries_plus_country"."currency_code",
       "countries_plus_country"."currency_symbol",
       "countries_plus_country"."currency_name",
       "countries_plus_country"."phone",
       "countries_plus_country"."postal_code_format",
       "countries_plus_country"."postal_code_regex",
       "countries_plus_country"."languages",
       "countries_plus_country"."geonameid",
       "countries_plus_country"."neighbours",
       "countries_plus_country"."equivalent_fips_code"
  FROM
"countries_plus_country"
 WHERE
"countries_plus_country"."iso" = 'US'
 LIMIT
21
SELECT ••• FROM "countries_plus_country" WHERE "countries_plus_country"."iso" = 'US' LIMIT 21
0.36

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./rb/templatetags/rb_geo.py in geo_currency(20)
  geo_data = user.geo.get_user_currency()

/home/nathan/rb/site/./geo/geo.py in get_user_currency(252)
  country = Country.objects.get(iso=country_code)

412 </a>
413 </li>
414 <li class="hidden-xs">
415 {% geo_currency request.user %}
416 </li>
417 {% comment %}
418 <li class="hidden-xs hidden-sm">
419 <a href={% if request.user.is_authenticated %}"{% url 'user_profile_settings' request.user.get_username %}#personalisation"{% else %}"#" onclick="return false;"{% endif %} title="All date/times are being converted to this timezone">{% get_user_timezone request.user %}</a>

/home/nathan/rb/site/rb/templates/rb/base_root.html

SELECT "lego_color"."id",
       "lego_color"."name",
       "lego_color"."rgb",
       "lego_color"."is_trans",
       "lego_color"."fuzzy_color_id",
       "lego_color"."is_active"
  FROM
"lego_color"
 WHERE
"lego_color"."id" = 15
 LIMIT
21
SELECT ••• FROM "lego_color" WHERE "lego_color"."id" = 15 LIMIT 21
0.21

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

25 <div class="col-xs-4">
26 {% if part.img_photo.img_url %}
27 <a class="lightbox" href="/media/{{ part.img_photo.img_url }}" data-plugin-options='{"type":"image"}'
28 title="{{ part.img_photo.photo.color.name }} submitted by {{ part.img_photo.photo.submitted_by.username }} on {{ part.img_photo.photo.timestamp }}">
29 {% thumbs part.img_photo.img_url settings.THUMBS_OPTIONS_PART_LARGE as img %}
30 <img class="img-responsive" data-src="{% cachebuster img.url %}" width="{{ img.width }}" height="{{ img.height }}">
31 </a>
32 {% else %}

/home/nathan/rb/site/lego/templates/parts/includes/render_part_large_images.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined"
  FROM
"auth_user"
 WHERE
"auth_user"."id" = 227700
 LIMIT
21
SELECT ••• FROM "auth_user" WHERE "auth_user"."id" = 227700 LIMIT 21
3 similar queries.
0.18

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

25 <div class="col-xs-4">
26 {% if part.img_photo.img_url %}
27 <a class="lightbox" href="/media/{{ part.img_photo.img_url }}" data-plugin-options='{"type":"image"}'
28 title="{{ part.img_photo.photo.color.name }} submitted by {{ part.img_photo.photo.submitted_by.username }} on {{ part.img_photo.photo.timestamp }}">
29 {% thumbs part.img_photo.img_url settings.THUMBS_OPTIONS_PART_LARGE as img %}
30 <img class="img-responsive" data-src="{% cachebuster img.url %}" width="{{ img.width }}" height="{{ img.height }}">
31 </a>
32 {% else %}

/home/nathan/rb/site/lego/templates/parts/includes/render_part_large_images.html

SELECT "lego_partphoto"."id",
       "lego_partphoto"."part_id",
       "lego_partphoto"."color_id",
       "lego_partphoto"."submitted_by_id",
       "lego_partphoto"."image",
       "lego_partphoto"."timestamp",
       "lego_partphoto"."is_active",
       "lego_partphoto"."is_primary",
       "lego_color"."id",
       "lego_color"."name",
       "lego_color"."rgb",
       "lego_color"."is_trans",
       "lego_color"."fuzzy_color_id",
       "lego_color"."is_active",
       "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined"
  FROM
"lego_partphoto"
 INNER JOIN
"lego_color"
    ON
("lego_partphoto"."color_id" = "lego_color"."id")
 INNER JOIN
"auth_user"
    ON
("lego_partphoto"."submitted_by_id" = "auth_user"."id")
 WHERE
("lego_partphoto"."is_active" AND NOT "lego_partphoto"."is_primary" AND "lego_partphoto"."part_id" = 24432)
SELECT ••• FROM "lego_partphoto" INNER JOIN "lego_color" ON ("lego_partphoto"."color_id" = "lego_color"."id") INNER JOIN "auth_user" ON ("lego_partphoto"."submitted_by_id" = "auth_user"."id") WHERE ("lego_partphoto"."is_active" AND NOT "lego_partphoto"."is_primary" AND "lego_partphoto"."part_id" = 24432)
0.88

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

55
56 {% include 'parts/includes/render_part_large_images.html' %}
57
58 {% if secondary_photos %}
59 <div class="clearfix">
60 <div class="pull-right">
61 There are <a href="#" class="js-toggle-field" data-field="#secondary_photos">
62 {{ secondary_photos.count }} more photos <i class="fa fa-chevron-down"></i></a> of this Part

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partrelationship"."id",
       "lego_partrelationship"."part_parent_id",
       "lego_partrelationship"."part_child_id",
       "lego_partrelationship"."rel_type"
  FROM
"lego_partrelationship"
 WHERE
("lego_partrelationship"."part_child_id" = 24432 AND "lego_partrelationship"."rel_type" = 'S')
SELECT ••• FROM "lego_partrelationship" WHERE ("lego_partrelationship"."part_child_id" = 24432 AND "lego_partrelationship"."rel_type" = 'S')
0.23

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_img(227)
  part_img = part.get_img_dir(color_id=color_id, force_use_ldraw=force_use_ldraw)

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(607)
  similar_part = self.get_similar_part()

/home/nathan/rb/site/./lego/models/parts.py in get_similar_part(352)
  if parent_rel:

153 <span style="display:none">{{ part_stat.color.hsv_str }}</span>
154 <a href="{{ part_stat.url }}">
155 <div style="max-height:45px; max-width:45px">
156 {% render_part_img part_stat.color_id part=part %}
157 </div>
158 </a>
159 </td>
160 <td><a href="{{ part_stat.url }}">{{ part_stat.color.name }}</a></td>

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT COUNT(*) AS "__count"
  FROM
"threadedcomments_comment"
 INNER JOIN
"django_comments"
    ON
("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id")
 WHERE
("django_comments"."content_type_id" = 43 AND "django_comments"."object_pk" = '24432' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" AND NOT "django_comments"."is_removed")
SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") WHERE ("django_comments"."content_type_id" = 43 AND "django_comments"."object_pk" = '24432' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" AND NOT "django_comments"."is_removed")
2 similar queries. Duplicated 2 times.
0.56

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/venv_rb310/lib/python3.10/site-packages/django_comments/templatetags/comments.py in render(72)
  context[self.as_varname] = self.get_context_value_from_queryset(context, qs)

/home/nathan/venv_rb310/lib/python3.10/site-packages/threadedcomments/templatetags/threadedcomments_tags.py in get_context_value_from_queryset(116)
  return qs.count()

198 <section class="padding-xxs">
199
200 <ul class="nav nav-tabs nav-top-border">
201 {% get_comment_count for part as num_comments %}
202 <li><a href="#tab_comments" data-toggle="tab">Comments <span class="badge badge-light">{{ num_comments }}</span></a>
203 </li>
204 <li><a href="#tab_buy_parts" data-toggle="tab">Buy Part <span class="badge badge-light" id="buy_parts_count"></span></a></li>
205 <li class="active"><a href="#tab_rel_parts" data-toggle="tab">Related Parts <span class="badge badge-light" id="rel_parts_count">{{ part.related.total_rels }}</span></a></li>

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "django_content_type"."id",
       "django_content_type"."app_label",
       "django_content_type"."model"
  FROM
"django_content_type"
 WHERE
("django_content_type"."app_label" = 'lego' AND "django_content_type"."model" = 'part')
 LIMIT
21
SELECT ••• FROM "django_content_type" WHERE ("django_content_type"."app_label" = 'lego' AND "django_content_type"."model" = 'part') LIMIT 21
0.19

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_page_locked_status(78)
  content_type = ContentType.objects.get(app_label=page_content_type.split('.')[0], model=page_content_type.split('.')[1])

4 {% load rb_comments_filters %}
5
6 <div id="comments-{{ page.id }}">
7 {% get_page_locked_status content_type page.id as is_page_locked %}
8
9 {% comment %}
10 Not using render_comment_list as it uses styles in ul/li that I can't seem to get working well with Smarty.
11 Using fluent-comments to hide unused fields and do ajax add/reply comment.

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT 1 AS "a"
  FROM
"rb_comments_pagelocked"
 WHERE
("rb_comments_pagelocked"."content_type_id" = 43 AND "rb_comments_pagelocked"."object_id" = 24432)
 LIMIT
1
SELECT ••• FROM "rb_comments_pagelocked" WHERE ("rb_comments_pagelocked"."content_type_id" = 43 AND "rb_comments_pagelocked"."object_id" = 24432) LIMIT 1
0.15

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_page_locked_status(79)
  is_locked = PageLocked.objects.filter(content_type=content_type, object_id=page_id).exists()

4 {% load rb_comments_filters %}
5
6 <div id="comments-{{ page.id }}">
7 {% get_page_locked_status content_type page.id as is_page_locked %}
8
9 {% comment %}
10 Not using render_comment_list as it uses styles in ul/li that I can't seem to get working well with Smarty.
11 Using fluent-comments to hide unused fields and do ajax add/reply comment.

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT (SUBSTRING(tree_path, 1, 10)) AS "tree_path_root",
       "django_comments"."id",
       "django_comments"."content_type_id",
       "django_comments"."object_pk",
       "django_comments"."site_id",
       "django_comments"."user_id",
       "django_comments"."user_name",
       "django_comments"."user_email",
       "django_comments"."user_url",
       "django_comments"."comment",
       "django_comments"."submit_date",
       "django_comments"."ip_address",
       "django_comments"."is_public",
       "django_comments"."is_removed",
       "threadedcomments_comment"."comment_ptr_id",
       "threadedcomments_comment"."title",
       "threadedcomments_comment"."parent_id",
       "threadedcomments_comment"."last_child_id",
       "threadedcomments_comment"."tree_path",
       "threadedcomments_comment"."newest_activity",
       "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "accounts_userplan"."user_id",
       "accounts_userplan"."plan_id",
       "accounts_userplan"."expiry_date",
       "accounts_userplan"."last_paid_date",
       "accounts_userplan"."is_subscription_active",
       "accounts_userplan"."subscription_period",
       "accounts_userplan"."payment_source",
       "accounts_userplan"."stripe_customer_id",
       "accounts_userplan"."stripe_subscription_id",
       "accounts_userplan"."paypal_subscription_id",
       "accounts_userplan"."base_free_plan_id",
       "accounts_userplan"."is_reminder_sent",
       "plans_plan"."id",
       "plans_plan"."type",
       "plans_plan"."version",
       "plans_plan"."stripe_id",
       "plans_plan"."paypal_id",
       "plans_plan"."cost_single",
       "plans_plan"."cost_monthly",
       "plans_plan"."cost_yearly",
       "accounts_userprofile"."user_id",
       "accounts_userprofile"."last_mod_inv",
       "accounts_userprofile"."last_activity",
       "accounts_userprofile"."last_ip",
       "accounts_userprofile"."last_country_id",
       "accounts_userprofile"."last_agent",
       "accounts_userprofile"."is_email_verified",
       "accounts_userprofile"."is_email_idle",
       "accounts_userprofile"."email_last_clicked",
       "accounts_userprofile"."api_token",
       "accounts_userprofile"."real_name",
       "accounts_userprofile"."location",
       "accounts_userprofile"."brickset_url",
       "accounts_userprofile"."mocpages_url",
       "accounts_userprofile"."flickr_url",
       "accounts_userprofile"."eurobricks_url",
       "accounts_userprofile"."youtube_url",
       "accounts_userprofile"."bricklink_url",
       "accounts_userprofile"."brickowl_url",
       "accounts_userprofile"."bricksafe_url",
       "accounts_userprofile"."website_url",
       "accounts_userprofile"."facebook_url",
       "accounts_userprofile"."twitter_url",
       "accounts_userprofile"."karma",
       "accounts_userprofile"."trophy_badge_id",
       "accounts_userprofile"."comments",
       "accounts_userprofile"."mfhash_vector",
       "accounts_userprofile"."is_muted",
       "accounts_userprofile"."is_banned",
       "accounts_userprofile"."is_suspected_pirate",
       "accounts_userprofile"."muted_until",
       "accounts_userprofile"."blocked_operations",
       "accounts_userprofile"."is_guest",
       "accounts_userprofile"."guest_token"
  FROM
"threadedcomments_comment"
 INNER JOIN
"django_comments"
    ON
("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id")
  LEFT OUTER JOIN
"auth_user"
    ON
("django_comments"."user_id" = "auth_user"."id")
  LEFT OUTER JOIN
"accounts_userplan"
    ON
("auth_user"."id" = "accounts_userplan"."user_id")
  LEFT OUTER JOIN
"plans_plan"
    ON
("accounts_userplan"."plan_id" = "plans_plan"."id")
  LEFT OUTER JOIN
"accounts_userprofile"
    ON
("auth_user"."id" = "accounts_userprofile"."user_id")
 WHERE
("django_comments"."content_type_id" = 43 AND "django_comments"."object_pk" = '24432' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" AND NOT "django_comments"."is_removed")
 ORDER BY
1 DESC, "threadedcomments_comment"."tree_path" ASC
SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") LEFT OUTER JOIN "auth_user" ON ("django_comments"."user_id" = "auth_user"."id") LEFT OUTER JOIN "accounts_userplan" ON ("auth_user"."id" = "accounts_userplan"."user_id") LEFT OUTER JOIN "plans_plan" ON ("accounts_userplan"."plan_id" = "plans_plan"."id") LEFT OUTER JOIN "accounts_userprofile" ON ("auth_user"."id" = "accounts_userprofile"."user_id") WHERE ("django_comments"."content_type_id" = 43 AND "django_comments"."object_pk" = '24432' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" AND NOT "django_comments"."is_removed") ORDER BY 1 DESC, "threadedcomments_comment"."tree_path" ASC
0.81

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/venv_rb310/lib/python3.10/site-packages/django_comments/templatetags/comments.py in render(71)
  qs = self.get_queryset(context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_queryset(45)
  return qs[:50], len(qs)

14 {% endcomment %}
15 {% if not comment_list %}
16 {# Get comments for a page #}
17 {% get_rb_comment_list for page as comment_list %}
18 {% get_comment_count for page as num_comments %}
19
20 {% if show_comment_count %}
21 <div class="clearfix">

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT COUNT(*) AS "__count"
  FROM
"threadedcomments_comment"
 INNER JOIN
"django_comments"
    ON
("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id")
 WHERE
("django_comments"."content_type_id" = 43 AND "django_comments"."object_pk" = '24432' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" AND NOT "django_comments"."is_removed")
SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") WHERE ("django_comments"."content_type_id" = 43 AND "django_comments"."object_pk" = '24432' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" AND NOT "django_comments"."is_removed")
2 similar queries. Duplicated 2 times.
0.23

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/venv_rb310/lib/python3.10/site-packages/django_comments/templatetags/comments.py in render(72)
  context[self.as_varname] = self.get_context_value_from_queryset(context, qs)

/home/nathan/venv_rb310/lib/python3.10/site-packages/threadedcomments/templatetags/threadedcomments_tags.py in get_context_value_from_queryset(116)
  return qs.count()

15 {% if not comment_list %}
16 {# Get comments for a page #}
17 {% get_rb_comment_list for page as comment_list %}
18 {% get_comment_count for page as num_comments %}
19
20 {% if show_comment_count %}
21 <div class="clearfix">
22 <div class="heading-title heading-border-bottom heading-color">

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT (SUBSTRING(tree_path, 1, 10)) AS "tree_path_root",
       "django_comments"."id",
       "django_comments"."content_type_id",
       "django_comments"."object_pk",
       "django_comments"."site_id",
       "django_comments"."user_id",
       "django_comments"."user_name",
       "django_comments"."user_email",
       "django_comments"."user_url",
       "django_comments"."comment",
       "django_comments"."submit_date",
       "django_comments"."ip_address",
       "django_comments"."is_public",
       "django_comments"."is_removed",
       "threadedcomments_comment"."comment_ptr_id",
       "threadedcomments_comment"."title",
       "threadedcomments_comment"."parent_id",
       "threadedcomments_comment"."last_child_id",
       "threadedcomments_comment"."tree_path",
       "threadedcomments_comment"."newest_activity",
       "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "accounts_userplan"."user_id",
       "accounts_userplan"."plan_id",
       "accounts_userplan"."expiry_date",
       "accounts_userplan"."last_paid_date",
       "accounts_userplan"."is_subscription_active",
       "accounts_userplan"."subscription_period",
       "accounts_userplan"."payment_source",
       "accounts_userplan"."stripe_customer_id",
       "accounts_userplan"."stripe_subscription_id",
       "accounts_userplan"."paypal_subscription_id",
       "accounts_userplan"."base_free_plan_id",
       "accounts_userplan"."is_reminder_sent",
       "plans_plan"."id",
       "plans_plan"."type",
       "plans_plan"."version",
       "plans_plan"."stripe_id",
       "plans_plan"."paypal_id",
       "plans_plan"."cost_single",
       "plans_plan"."cost_monthly",
       "plans_plan"."cost_yearly",
       "accounts_userprofile"."user_id",
       "accounts_userprofile"."last_mod_inv",
       "accounts_userprofile"."last_activity",
       "accounts_userprofile"."last_ip",
       "accounts_userprofile"."last_country_id",
       "accounts_userprofile"."last_agent",
       "accounts_userprofile"."is_email_verified",
       "accounts_userprofile"."is_email_idle",
       "accounts_userprofile"."email_last_clicked",
       "accounts_userprofile"."api_token",
       "accounts_userprofile"."real_name",
       "accounts_userprofile"."location",
       "accounts_userprofile"."brickset_url",
       "accounts_userprofile"."mocpages_url",
       "accounts_userprofile"."flickr_url",
       "accounts_userprofile"."eurobricks_url",
       "accounts_userprofile"."youtube_url",
       "accounts_userprofile"."bricklink_url",
       "accounts_userprofile"."brickowl_url",
       "accounts_userprofile"."bricksafe_url",
       "accounts_userprofile"."website_url",
       "accounts_userprofile"."facebook_url",
       "accounts_userprofile"."twitter_url",
       "accounts_userprofile"."karma",
       "accounts_userprofile"."trophy_badge_id",
       "accounts_userprofile"."comments",
       "accounts_userprofile"."mfhash_vector",
       "accounts_userprofile"."is_muted",
       "accounts_userprofile"."is_banned",
       "accounts_userprofile"."is_suspected_pirate",
       "accounts_userprofile"."muted_until",
       "accounts_userprofile"."blocked_operations",
       "accounts_userprofile"."is_guest",
       "accounts_userprofile"."guest_token"
  FROM
"threadedcomments_comment"
 INNER JOIN
"django_comments"
    ON
("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id")
  LEFT OUTER JOIN
"auth_user"
    ON
("django_comments"."user_id" = "auth_user"."id")
  LEFT OUTER JOIN
"accounts_userplan"
    ON
("auth_user"."id" = "accounts_userplan"."user_id")
  LEFT OUTER JOIN
"plans_plan"
    ON
("accounts_userplan"."plan_id" = "plans_plan"."id")
  LEFT OUTER JOIN
"accounts_userprofile"
    ON
("auth_user"."id" = "accounts_userprofile"."user_id")
 WHERE
("django_comments"."content_type_id" = 43 AND "django_comments"."object_pk" = '24432' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" AND NOT "django_comments"."is_removed")
 ORDER BY
1 DESC, "threadedcomments_comment"."tree_path" ASC
 LIMIT
50
SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") LEFT OUTER JOIN "auth_user" ON ("django_comments"."user_id" = "auth_user"."id") LEFT OUTER JOIN "accounts_userplan" ON ("auth_user"."id" = "accounts_userplan"."user_id") LEFT OUTER JOIN "plans_plan" ON ("accounts_userplan"."plan_id" = "plans_plan"."id") LEFT OUTER JOIN "accounts_userprofile" ON ("auth_user"."id" = "accounts_userprofile"."user_id") WHERE ("django_comments"."content_type_id" = 43 AND "django_comments"."object_pk" = '24432' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" AND NOT "django_comments"."is_removed") ORDER BY 1 DESC, "threadedcomments_comment"."tree_path" ASC LIMIT 50
0.76

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

89 {% with cache_timeout=user.is_authenticated|yesno:"0,300" %}
90 {% cache cache_timeout 'comments_list_v2' request.user.is_authenticated page.id request.GET.page request.GET.showmore num_comments %}
91
92 <div class="comments {% if not comment_list.0 %} empty{% endif %} mb-30">
93 {% if use_context %}
94 {# Flat list of comments #}
95 {% for comment in comment_list.0|make_proxy_users %}
96 <ul class="comment list-unstyled comment-list-wrapper">

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT "lego_partmap"."id",
       "lego_partmap"."part_id",
       "lego_partmap"."ext_system",
       "lego_partmap"."ext_id",
       "lego_partmap"."is_export_id",
       "lego_partmap"."is_import_id"
  FROM
"lego_partmap"
 WHERE
("lego_partmap"."ext_system" = 'BO' AND "lego_partmap"."is_export_id" AND "lego_partmap"."part_id" = 24432)
 LIMIT
21
SELECT ••• FROM "lego_partmap" WHERE ("lego_partmap"."ext_system" = 'BO' AND "lego_partmap"."is_export_id" AND "lego_partmap"."part_id" = 24432) LIMIT 21
0.14

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/models/parts.py in get_brickowl_num(1025)
  return PartMap.part_to_brickowl_id(self.id)

/home/nathan/rb/site/./lego/models/parts.py in part_to_brickowl_id(2011)
  part_map = PartMap.objects.get(ext_system=rb.constants.systems.EXT_SYSTEM_BRICKOWL, part_id=part_id, is_export_id=True)

221
222 <div class="row mt-10 mb-10">
223 <div class="col-md-6">
224 <a href="https://www.brickowl.com/search/catalog?query={{ part.get_brickowl_num }}&utm_source=rebrickable">
225 <button class="btn btn-default btn-block">
226 <img src="{% static 'img/sites/bo.png' %}" class="store-icon-sm"> Search BrickOwl
227 </button>
228 </a>

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 13807)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 13807) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.32

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_element"."id",
       "lego_element"."part_id",
       "lego_element"."color_id",
       "lego_element"."element_id",
       "lego_element"."design_id",
       "lego_element"."descr",
       "lego_element"."color_descr",
       "lego_element"."last_download_attempt",
       "lego_element"."num_download_attempts",
       "lego_element"."is_export_id",
       "lego_element"."is_active"
  FROM
"lego_element"
 INNER JOIN
"lego_color"
    ON
("lego_element"."color_id" = "lego_color"."id")
 WHERE
("lego_element"."is_active" AND "lego_element"."part_id" = 13807)
 ORDER BY
"lego_color"."name" ASC, "lego_element"."element_id" ASC
SELECT ••• FROM "lego_element" INNER JOIN "lego_color" ON ("lego_element"."color_id" = "lego_color"."id") WHERE ("lego_element"."is_active" AND "lego_element"."part_id" = 13807) ORDER BY "lego_color"."name" ASC, "lego_element"."element_id" ASC
2 similar queries.
0.25

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(592)
  res['img_url'] = self.get_element_image(color_id=color_id or most_common_color_id)

/home/nathan/rb/site/./lego/models/parts.py in get_element_image(428)
  element, element_id = self.get_element_with_image(color_id=color_id)

/home/nathan/rb/site/./lego/models/parts.py in get_element_with_image(391)
  for e in self.elements.all():

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcategory"."id",
       "lego_partcategory"."name",
       "lego_partcategory"."part_count",
       "lego_partcategory"."img",
       "lego_partcategory"."slug"
  FROM
"lego_partcategory"
 WHERE
"lego_partcategory"."id" = 20
 LIMIT
21
SELECT ••• FROM "lego_partcategory" WHERE "lego_partcategory"."id" = 20 LIMIT 21
2 similar queries. Duplicated 2 times.
0.17

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(96)
  title += '\n' + part.part_cat.name

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partoverlay"."part_id",
       "lego_partoverlay"."length"
  FROM
"lego_partoverlay"
 WHERE
"lego_partoverlay"."part_id" = 13807
 LIMIT
21
SELECT ••• FROM "lego_partoverlay" WHERE "lego_partoverlay"."part_id" = 13807 LIMIT 21
2 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(100)
  if part.get_overlay():

/home/nathan/rb/site/./lego/models/parts.py in get_overlay(308)
  return self.overlay

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 14010)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 14010) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.33

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_element"."id",
       "lego_element"."part_id",
       "lego_element"."color_id",
       "lego_element"."element_id",
       "lego_element"."design_id",
       "lego_element"."descr",
       "lego_element"."color_descr",
       "lego_element"."last_download_attempt",
       "lego_element"."num_download_attempts",
       "lego_element"."is_export_id",
       "lego_element"."is_active"
  FROM
"lego_element"
 INNER JOIN
"lego_color"
    ON
("lego_element"."color_id" = "lego_color"."id")
 WHERE
("lego_element"."is_active" AND "lego_element"."part_id" = 14010)
 ORDER BY
"lego_color"."name" ASC, "lego_element"."element_id" ASC
SELECT ••• FROM "lego_element" INNER JOIN "lego_color" ON ("lego_element"."color_id" = "lego_color"."id") WHERE ("lego_element"."is_active" AND "lego_element"."part_id" = 14010) ORDER BY "lego_color"."name" ASC, "lego_element"."element_id" ASC
2 similar queries.
0.20

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(592)
  res['img_url'] = self.get_element_image(color_id=color_id or most_common_color_id)

/home/nathan/rb/site/./lego/models/parts.py in get_element_image(428)
  element, element_id = self.get_element_with_image(color_id=color_id)

/home/nathan/rb/site/./lego/models/parts.py in get_element_with_image(391)
  for e in self.elements.all():

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcategory"."id",
       "lego_partcategory"."name",
       "lego_partcategory"."part_count",
       "lego_partcategory"."img",
       "lego_partcategory"."slug"
  FROM
"lego_partcategory"
 WHERE
"lego_partcategory"."id" = 20
 LIMIT
21
SELECT ••• FROM "lego_partcategory" WHERE "lego_partcategory"."id" = 20 LIMIT 21
2 similar queries. Duplicated 2 times.
0.09

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(96)
  title += '\n' + part.part_cat.name

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partoverlay"."part_id",
       "lego_partoverlay"."length"
  FROM
"lego_partoverlay"
 WHERE
"lego_partoverlay"."part_id" = 14010
 LIMIT
21
SELECT ••• FROM "lego_partoverlay" WHERE "lego_partoverlay"."part_id" = 14010 LIMIT 21
2 similar queries.
0.12

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(100)
  if part.get_overlay():

/home/nathan/rb/site/./lego/models/parts.py in get_overlay(308)
  return self.overlay

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 4937)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 4937) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.33

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 19417)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 19417) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.33

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 11049)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 11049) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.20

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 16157)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 16157) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.21

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 14615)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 14615) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.25

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 12506)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 12506) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.14

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 343)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 343) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.20

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 27738)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 27738) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.22

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 27037)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 27037) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.24

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 5209)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 5209) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.22

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 1508)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 1508) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.22

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 27914)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 27914) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.24

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partphoto"."id",
       "lego_partphoto"."part_id",
       "lego_partphoto"."color_id",
       "lego_partphoto"."submitted_by_id",
       "lego_partphoto"."image",
       "lego_partphoto"."timestamp",
       "lego_partphoto"."is_active",
       "lego_partphoto"."is_primary"
  FROM
"lego_partphoto"
 WHERE
("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 27914)
SELECT ••• FROM "lego_partphoto" WHERE ("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 27914)
14 similar queries.
0.25

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(602)
  photo_img, res['photo'] = self.get_photo_image(color_id=color_id or most_common_color_id)

/home/nathan/rb/site/./lego/models/parts.py in get_photo_image(473)
  for f in self.photos.all():  # prefetch for better performance

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 28791)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 28791) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.17

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 28399)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 28399) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.17

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 31297)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 31297) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.16

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 72110)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 72110) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 31305)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 31305) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.25

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 32135)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 32135) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.27

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 35518)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 35518) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.28

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 36705)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 36705) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.33

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 35845)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 35845) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.34

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 39393)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 39393) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.21

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 41331)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 41331) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.16

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 27974)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 27974) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.15

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 42363)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 42363) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.19

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 41368)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 41368) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.19

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 42350)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 42350) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.15

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 51364)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 51364) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.16

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 55183)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 55183) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.28

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 52929)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 52929) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.17

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 58727)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 58727) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.14

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 9273)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 9273) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.14

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 8288)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 8288) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.17

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 61168)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 61168) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.18

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 61585)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 61585) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.15

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 368)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 368) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.29

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 60522)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 60522) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.22

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 17402)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 17402) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.19

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 40766)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 40766) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.22

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 61587)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 61587) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.24

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 62003)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 62003) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.18

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 63606)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 63606) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.24

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 64351)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 64351) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.20

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 68654)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 68654) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.15

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 69013)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 69013) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 71674)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 71674) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.15

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partphoto"."id",
       "lego_partphoto"."part_id",
       "lego_partphoto"."color_id",
       "lego_partphoto"."submitted_by_id",
       "lego_partphoto"."image",
       "lego_partphoto"."timestamp",
       "lego_partphoto"."is_active",
       "lego_partphoto"."is_primary"
  FROM
"lego_partphoto"
 WHERE
("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 71674)
SELECT ••• FROM "lego_partphoto" WHERE ("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 71674)
14 similar queries.
0.26

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(602)
  photo_img, res['photo'] = self.get_photo_image(color_id=color_id or most_common_color_id)

/home/nathan/rb/site/./lego/models/parts.py in get_photo_image(473)
  for f in self.photos.all():  # prefetch for better performance

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 71701)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 71701) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.18

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partphoto"."id",
       "lego_partphoto"."part_id",
       "lego_partphoto"."color_id",
       "lego_partphoto"."submitted_by_id",
       "lego_partphoto"."image",
       "lego_partphoto"."timestamp",
       "lego_partphoto"."is_active",
       "lego_partphoto"."is_primary"
  FROM
"lego_partphoto"
 WHERE
("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 71701)
SELECT ••• FROM "lego_partphoto" WHERE ("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 71701)
14 similar queries.
0.22

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(602)
  photo_img, res['photo'] = self.get_photo_image(color_id=color_id or most_common_color_id)

/home/nathan/rb/site/./lego/models/parts.py in get_photo_image(473)
  for f in self.photos.all():  # prefetch for better performance

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 65035)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 65035) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.14

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 63936)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 63936) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.21

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 8162)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 8162) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.16

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partphoto"."id",
       "lego_partphoto"."part_id",
       "lego_partphoto"."color_id",
       "lego_partphoto"."submitted_by_id",
       "lego_partphoto"."image",
       "lego_partphoto"."timestamp",
       "lego_partphoto"."is_active",
       "lego_partphoto"."is_primary"
  FROM
"lego_partphoto"
 WHERE
("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 8162)
SELECT ••• FROM "lego_partphoto" WHERE ("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 8162)
14 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(602)
  photo_img, res['photo'] = self.get_photo_image(color_id=color_id or most_common_color_id)

/home/nathan/rb/site/./lego/models/parts.py in get_photo_image(473)
  for f in self.photos.all():  # prefetch for better performance

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 49408)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 49408) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partphoto"."id",
       "lego_partphoto"."part_id",
       "lego_partphoto"."color_id",
       "lego_partphoto"."submitted_by_id",
       "lego_partphoto"."image",
       "lego_partphoto"."timestamp",
       "lego_partphoto"."is_active",
       "lego_partphoto"."is_primary"
  FROM
"lego_partphoto"
 WHERE
("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 49408)
SELECT ••• FROM "lego_partphoto" WHERE ("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 49408)
14 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(602)
  photo_img, res['photo'] = self.get_photo_image(color_id=color_id or most_common_color_id)

/home/nathan/rb/site/./lego/models/parts.py in get_photo_image(473)
  for f in self.photos.all():  # prefetch for better performance

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 19889)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 19889) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.19

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partphoto"."id",
       "lego_partphoto"."part_id",
       "lego_partphoto"."color_id",
       "lego_partphoto"."submitted_by_id",
       "lego_partphoto"."image",
       "lego_partphoto"."timestamp",
       "lego_partphoto"."is_active",
       "lego_partphoto"."is_primary"
  FROM
"lego_partphoto"
 WHERE
("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 19889)
SELECT ••• FROM "lego_partphoto" WHERE ("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 19889)
14 similar queries.
0.24

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(602)
  photo_img, res['photo'] = self.get_photo_image(color_id=color_id or most_common_color_id)

/home/nathan/rb/site/./lego/models/parts.py in get_photo_image(473)
  for f in self.photos.all():  # prefetch for better performance

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 16143)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 16143) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.19

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partphoto"."id",
       "lego_partphoto"."part_id",
       "lego_partphoto"."color_id",
       "lego_partphoto"."submitted_by_id",
       "lego_partphoto"."image",
       "lego_partphoto"."timestamp",
       "lego_partphoto"."is_active",
       "lego_partphoto"."is_primary"
  FROM
"lego_partphoto"
 WHERE
("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 16143)
SELECT ••• FROM "lego_partphoto" WHERE ("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 16143)
14 similar queries.
0.23

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(602)
  photo_img, res['photo'] = self.get_photo_image(color_id=color_id or most_common_color_id)

/home/nathan/rb/site/./lego/models/parts.py in get_photo_image(473)
  for f in self.photos.all():  # prefetch for better performance

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 49409)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 49409) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.14

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partphoto"."id",
       "lego_partphoto"."part_id",
       "lego_partphoto"."color_id",
       "lego_partphoto"."submitted_by_id",
       "lego_partphoto"."image",
       "lego_partphoto"."timestamp",
       "lego_partphoto"."is_active",
       "lego_partphoto"."is_primary"
  FROM
"lego_partphoto"
 WHERE
("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 49409)
SELECT ••• FROM "lego_partphoto" WHERE ("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 49409)
14 similar queries.
0.28

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(602)
  photo_img, res['photo'] = self.get_photo_image(color_id=color_id or most_common_color_id)

/home/nathan/rb/site/./lego/models/parts.py in get_photo_image(473)
  for f in self.photos.all():  # prefetch for better performance

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 17262)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 17262) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.19

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partphoto"."id",
       "lego_partphoto"."part_id",
       "lego_partphoto"."color_id",
       "lego_partphoto"."submitted_by_id",
       "lego_partphoto"."image",
       "lego_partphoto"."timestamp",
       "lego_partphoto"."is_active",
       "lego_partphoto"."is_primary"
  FROM
"lego_partphoto"
 WHERE
("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 17262)
SELECT ••• FROM "lego_partphoto" WHERE ("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 17262)
14 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(602)
  photo_img, res['photo'] = self.get_photo_image(color_id=color_id or most_common_color_id)

/home/nathan/rb/site/./lego/models/parts.py in get_photo_image(473)
  for f in self.photos.all():  # prefetch for better performance

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 49410)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 49410) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.12

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partphoto"."id",
       "lego_partphoto"."part_id",
       "lego_partphoto"."color_id",
       "lego_partphoto"."submitted_by_id",
       "lego_partphoto"."image",
       "lego_partphoto"."timestamp",
       "lego_partphoto"."is_active",
       "lego_partphoto"."is_primary"
  FROM
"lego_partphoto"
 WHERE
("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 49410)
SELECT ••• FROM "lego_partphoto" WHERE ("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 49410)
14 similar queries.
0.12

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(602)
  photo_img, res['photo'] = self.get_photo_image(color_id=color_id or most_common_color_id)

/home/nathan/rb/site/./lego/models/parts.py in get_photo_image(473)
  for f in self.photos.all():  # prefetch for better performance

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 49411)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 49411) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.19

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partphoto"."id",
       "lego_partphoto"."part_id",
       "lego_partphoto"."color_id",
       "lego_partphoto"."submitted_by_id",
       "lego_partphoto"."image",
       "lego_partphoto"."timestamp",
       "lego_partphoto"."is_active",
       "lego_partphoto"."is_primary"
  FROM
"lego_partphoto"
 WHERE
("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 49411)
SELECT ••• FROM "lego_partphoto" WHERE ("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 49411)
14 similar queries.
0.22

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(602)
  photo_img, res['photo'] = self.get_photo_image(color_id=color_id or most_common_color_id)

/home/nathan/rb/site/./lego/models/parts.py in get_photo_image(473)
  for f in self.photos.all():  # prefetch for better performance

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 49412)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 49412) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.20

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partphoto"."id",
       "lego_partphoto"."part_id",
       "lego_partphoto"."color_id",
       "lego_partphoto"."submitted_by_id",
       "lego_partphoto"."image",
       "lego_partphoto"."timestamp",
       "lego_partphoto"."is_active",
       "lego_partphoto"."is_primary"
  FROM
"lego_partphoto"
 WHERE
("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 49412)
SELECT ••• FROM "lego_partphoto" WHERE ("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 49412)
14 similar queries.
0.23

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(602)
  photo_img, res['photo'] = self.get_photo_image(color_id=color_id or most_common_color_id)

/home/nathan/rb/site/./lego/models/parts.py in get_photo_image(473)
  for f in self.photos.all():  # prefetch for better performance

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 49413)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 49413) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.18

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partphoto"."id",
       "lego_partphoto"."part_id",
       "lego_partphoto"."color_id",
       "lego_partphoto"."submitted_by_id",
       "lego_partphoto"."image",
       "lego_partphoto"."timestamp",
       "lego_partphoto"."is_active",
       "lego_partphoto"."is_primary"
  FROM
"lego_partphoto"
 WHERE
("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 49413)
SELECT ••• FROM "lego_partphoto" WHERE ("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 49413)
14 similar queries.
0.16

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(602)
  photo_img, res['photo'] = self.get_photo_image(color_id=color_id or most_common_color_id)

/home/nathan/rb/site/./lego/models/parts.py in get_photo_image(473)
  for f in self.photos.all():  # prefetch for better performance

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partcolorstats"."id",
       "lego_partcolorstats"."part_id",
       "lego_partcolorstats"."color_id",
       "lego_partcolorstats"."num_sets",
       "lego_partcolorstats"."num_mocs",
       "lego_partcolorstats"."num_set_parts",
       "lego_partcolorstats"."num_moc_parts",
       "lego_partcolorstats"."y1",
       "lego_partcolorstats"."y2",
       "lego_partcolorstats"."is_dirty",
       "lego_partcolorstats"."ignore_color_errors"
  FROM
"lego_partcolorstats"
 WHERE
("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 49414)
 ORDER BY
"lego_partcolorstats"."num_set_parts" DESC
 LIMIT
1
SELECT ••• FROM "lego_partcolorstats" WHERE ("lego_partcolorstats"."num_sets" > 0 AND "lego_partcolorstats"."part_id" = 49414) ORDER BY "lego_partcolorstats"."num_set_parts" DESC LIMIT 1
63 similar queries.
0.29

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(536)
  most_common_color_id = self.get_most_common_color()

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/models/parts.py in get_most_common_color(323)
  pcs = PartColorStats.objects.filter(part=self, num_sets__gt=0).order_by('-num_set_parts').first()

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "lego_partphoto"."id",
       "lego_partphoto"."part_id",
       "lego_partphoto"."color_id",
       "lego_partphoto"."submitted_by_id",
       "lego_partphoto"."image",
       "lego_partphoto"."timestamp",
       "lego_partphoto"."is_active",
       "lego_partphoto"."is_primary"
  FROM
"lego_partphoto"
 WHERE
("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 49414)
SELECT ••• FROM "lego_partphoto" WHERE ("lego_partphoto"."is_active" AND "lego_partphoto"."part_id" = 49414)
14 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part(134)
  return mark_safe(render_part_wrapper(part, sub_text, request=context['request']))

/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
  result = method(instance, *args, **kwargs)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in render_part_wrapper(133)
  return _render_part_in_color(part, sub_text=sub_text, request=request)

/home/nathan/rb/site/./lego/templatetags/parts/drawing.py in _render_part_in_color(51)
  part_img = part.get_img_dir()

/home/nathan/rb/site/./lego/models/parts.py in get_img_dir(602)
  photo_img, res['photo'] = self.get_photo_image(color_id=color_id or most_common_color_id)

/home/nathan/rb/site/./lego/models/parts.py in get_photo_image(473)
  for f in self.photos.all():  # prefetch for better performance

259 </div>
260 <div class="col-md-10">
261 {% for rel_part in rel_parts.parts %}
262 {% render_part rel_part rel_part.get_part_years_html %}
263 {% endfor %}
264 </div>
265 </div>
266 {% endif %}

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined"
  FROM
"auth_user"
 WHERE
"auth_user"."id" = 24425
 LIMIT
21
SELECT ••• FROM "auth_user" WHERE "auth_user"."id" = 24425 LIMIT 21
3 similar queries.
0.15

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

544 <section class="padding-xxs">
545 <div>
546 <small><i class="fa fa-fw fa-plus" title="Added"></i> {{ changes.added.timestamp }}
547 {% if changes.added.user %}by
548 <a href="{% url 'user_profile' changes.added.user.get_username %}">{{ changes.added.user.get_username }}</a>
549 {% endif %}</small>
550 </div>
551 <div>

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined"
  FROM
"auth_user"
 WHERE
"auth_user"."id" = 455348
 LIMIT
21
SELECT ••• FROM "auth_user" WHERE "auth_user"."id" = 455348 LIMIT 21
3 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

550 </div>
551 <div>
552 <small><i class="fa fa-fw fa-edit" title="Updated"></i> {{ changes.updated.timestamp }}
553 {% if changes.updated.user %}by
554 <a href="{% url 'user_profile' changes.updated.user.get_username %}">{{ changes.updated.user.get_username }}</a>
555 {% endif %}</small>
556 </div>
557 <div class="mb-10">

/home/nathan/rb/site/lego/templates/parts/part_details.html

SELECT DISTINCT "taggit_tag"."id",
       "taggit_tag"."name",
       "taggit_tag"."slug",
       COUNT("lego_part"."id") AS "count"
  FROM
"taggit_tag"
 INNER JOIN
"taggit_taggeditem"
    ON
("taggit_tag"."id" = "taggit_taggeditem"."tag_id")
 INNER JOIN
"django_content_type"
    ON
("taggit_taggeditem"."content_type_id" = "django_content_type"."id")
  LEFT OUTER JOIN
"lego_part"
    ON
("taggit_taggeditem"."object_id" = "lego_part"."id" AND ("taggit_taggeditem"."content_type_id" IN (43,48)))
 INNER JOIN
"taggit_taggeditem" T5
    ON
("taggit_tag"."id" = T5."tag_id")
 INNER JOIN
"lego_part" T6
    ON
(T5."object_id" = T6."id" AND (T5."content_type_id" IN (43,48)))
 WHERE
("django_content_type"."app_label" = 'lego' AND "django_content_type"."model" = 'part' AND T6."id" = 24432)
 GROUP BY
"taggit_tag"."id"
SELECT ••• FROM "taggit_tag" INNER JOIN "taggit_taggeditem" ON ("taggit_tag"."id" = "taggit_taggeditem"."tag_id") INNER JOIN "django_content_type" ON ("taggit_taggeditem"."content_type_id" = "django_content_type"."id") LEFT OUTER JOIN "lego_part" ON ("taggit_taggeditem"."object_id" = "lego_part"."id" AND ("taggit_taggeditem"."content_type_id" IN (43,48))) INNER JOIN "taggit_taggeditem" T5 ON ("taggit_tag"."id" = T5."tag_id") INNER JOIN "lego_part" T6 ON (T5."object_id" = T6."id" AND (T5."content_type_id" IN (43,48))) WHERE ("django_content_type"."app_label" = 'lego' AND "django_content_type"."model" = 'part' AND T6."id" = 24432) GROUP BY "taggit_tag"."id"
22.33

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/parts.py in find_parts(124)
  return part_details(request, slug1)

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/parts.py in part_details(609)
  return render(request, 'parts/part_details.html', context)

1 {# Simon wanted the id=tags as an anchor for his links #}
2 <div class="clearfix anchor tags_list" id="{{ prefix }}tags">
3 {% for tag in tags %}
4 <a href="{% url 'find_parts' %}?tag={{ tag.id }}&show_unused=on&show_printed=on" class="tag {% if request.user.is_tagger %}deltag{% endif %}">
5 <span class="txt">{{ tag.name }}</span>
6 <span class="num">
7 <span class="relative">

/home/nathan/rb/site/lego/templates/parts/includes/render_tags.html

Log messages

No messages logged.