76384-1

Name Hogwarts Moment: Herbology Class
Released 2021
(Jan. 1, 2021 to Dec. 31, 2021)
Inventory 233 parts
Theme Harry Potter

Buy this LEGO Set

Purchasing from the above links may result in a commission being paid to Rebrickable, but at no extra cost to you.
2022 Ford GT

External Sites

This Set is known differently at other sites:

BrickLink 76384-1
BrickOwl 338059
Brickset 76384-1
11,100
Nov. 16, 2020, 3:51 p.m. by TobyMac
Jan. 19, 2026, 9:29 a.m. by Rebrickable
to your account to add or reply to comments.
  • Avatar image for Rebrickable user Orbit1883
    3 years, 7 months ago Orbit1883 Level 4
    i like these sets but one thing i have to criticise. there is no space for the minifigs inside the books.
    it would be nice if you could just grab a book take it away to play without having to worry about the minifigs. like give it to your kids on a trip
  • Avatar image for Rebrickable user helens61
    4 years, 2 months ago helens61 Level 14 MOC Designer
    I have finally (having built them all at once) realised that you can clip each book to the next one! If you have each of them, you create a kind of cross shape, with spines facing inward, and each room appears as one quarter of a circle. Now the bricks on the back covers make sense!
    A great video review of all four sets together is available by Jeremy Herbert at the end of his Charms Class review - found via BrickSet

Alternate Builds (MOCs)

These MOCs can be built using only the parts in 76384-1 Hogwarts Moment: Herbology Class.

Already have some of the parts? Use the Build this Set page to only show the parts you are missing.
Create an account to change the default filters used.

Waiting for Inventory to load

Create an account to change the default filters used.
DJDT

Time

Resource usage

Resource Value
User CPU time 803.960 msec
System CPU time 6.827 msec
Total CPU time 810.787 msec
Elapsed time 1042.784 msec
Context switches 194 voluntary, 14 involuntary

Browser timing

Timing attribute Timeline Milliseconds since navigation start (+length)

SQL queries from 1 connection

  • default 233.37 ms (98 queries including 64 similar and 23 duplicates )
Query Timeline Time (ms) Action
SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."set_num" = '76384-1'
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."set_num" = '76384-1' LIMIT 21
2 similar queries. Duplicated 2 times.
0.37

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(112)
  baseset = get_or_none(BaseSet.all_objects, set_num=set_num)

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

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."set_num" = '76384-1'
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."set_num" = '76384-1' LIMIT 21
2 similar queries. Duplicated 2 times.
0.30

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(337)
  baseset = BaseSet.all_objects.get(set_num=set_num)

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector",
       "lego_set"."baseset_ptr_id",
       "lego_set"."start_date",
       "lego_set"."end_date"
  FROM
"lego_set"
 INNER JOIN
"lego_baseset"
    ON
("lego_set"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
"lego_set"."baseset_ptr_id" = 78104
 LIMIT
21
SELECT ••• FROM "lego_set" INNER JOIN "lego_baseset" ON ("lego_set"."baseset_ptr_id" = "lego_baseset"."id") WHERE "lego_set"."baseset_ptr_id" = 78104 LIMIT 21
4 similar queries. Duplicated 2 times.
0.22

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(344)
  set = baseset.get_child_instance()

/home/nathan/rb/site/./lego/models/sets.py in get_child_instance(1666)
  return self.set

SELECT "lego_inventory"."id",
       "lego_inventory"."set_id",
       "lego_inventory"."version",
       "lego_inventory"."name",
       "lego_inventory"."is_active",
       "lego_inventory"."num_parts",
       "lego_inventory"."num_versions"
  FROM
"lego_inventory"
 WHERE
"lego_inventory"."id" = 79420
 LIMIT
21
SELECT ••• FROM "lego_inventory" WHERE "lego_inventory"."id" = 79420 LIMIT 21
0.08

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(369)
  inventory = set.get_default_inventory()

/home/nathan/rb/site/./lego/models/sets.py in get_default_inventory(971)
  if self.default_inventory is not None:

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"."set_num" = '76384-1'
 ORDER BY
"lego_changelog"."timestamp" DESC
SELECT ••• FROM "lego_changelog" WHERE "lego_changelog"."set_num" = '76384-1' ORDER BY "lego_changelog"."timestamp" DESC
11.09

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(381)
  changes = set.get_change_summary()

/home/nathan/rb/site/./lego/models/sets.py in get_change_summary(1121)
  changes = ChangeLog.get_changes(set_num=self.set_num)

/home/nathan/rb/site/./lego/models/changes.py in get_changes(276)
  if len(changes) > 0:

SELECT "lego_setstatstotal"."set_id",
       "lego_setstatstotal"."hits",
       "lego_setstatstotal"."builds",
       "lego_setstatstotal"."likes",
       "lego_setstatstotal"."bi_downloads",
       "lego_setstatstotal"."featured_hits",
       "lego_setstatstotal"."user_hits"
  FROM
"lego_setstatstotal"
 WHERE
"lego_setstatstotal"."set_id" = 78104
 LIMIT
21
SELECT ••• FROM "lego_setstatstotal" WHERE "lego_setstatstotal"."set_id" = 78104 LIMIT 21
0.11

Connection: default

Transaction status: In transaction

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(384)
  set.stats.inc_hits()

/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)

UPDATE "lego_setstatstotal"
   SET
"hits" = 11182,
       "builds" = 111,
       "likes" = 0,
       "bi_downloads" = 0,
       "featured_hits" = 0,
       "user_hits" = 0
 WHERE
"lego_setstatstotal"."set_id" = 78104
UPDATE "lego_setstatstotal" SET "hits" = 11182, "builds" = 111, "likes" = 0, "bi_downloads" = 0, "featured_hits" = 0, "user_hits" = 0 WHERE "lego_setstatstotal"."set_id" = 78104
0.11

Connection: default

Transaction status: In transaction

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(384)
  set.stats.inc_hits()

/home/nathan/rb/site/./lego/models/sets.py in inc_hits(2637)
  self.save()

SELECT "lego_setstatshistory"."id",
       "lego_setstatshistory"."set_id",
       "lego_setstatshistory"."day",
       "lego_setstatshistory"."hits",
       "lego_setstatshistory"."builds",
       "lego_setstatshistory"."likes",
       "lego_setstatshistory"."bi_downloads",
       "lego_setstatshistory"."featured_hits",
       "lego_setstatshistory"."user_hits"
  FROM
"lego_setstatshistory"
 WHERE
("lego_setstatshistory"."day" = '2026-01-22'::date AND "lego_setstatshistory"."set_id" = 78104)
 LIMIT
21
SELECT ••• FROM "lego_setstatshistory" WHERE ("lego_setstatshistory"."day" = '2026-01-22'::date AND "lego_setstatshistory"."set_id" = 78104) LIMIT 21
0.21

Connection: default

Transaction status: In transaction

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(384)
  set.stats.inc_hits()

/home/nathan/rb/site/./lego/models/sets.py in inc_hits(2638)
  SetStatsHistory.inc_hits(self.set)

/home/nathan/rb/site/./lego/models/sets.py in inc_hits(2587)
  self, created = cls.objects.get_or_create(set=set, day=timezone.now())

SAVEPOINT "s135227521288000_x9"SAVEPOINT "s135227521288000_x9"
0.03

Connection: default

Transaction status: In transaction

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(384)
  set.stats.inc_hits()

/home/nathan/rb/site/./lego/models/sets.py in inc_hits(2638)
  SetStatsHistory.inc_hits(self.set)

/home/nathan/rb/site/./lego/models/sets.py in inc_hits(2587)
  self, created = cls.objects.get_or_create(set=set, day=timezone.now())

INSERT INTO "lego_setstatshistory" ("set_id", "day", "hits", "builds", "likes", "bi_downloads", "featured_hits", "user_hits")
VALUES
(78104, '2026-01-22'::date, 0, 0, 0, 0, 0, 0) RETURNING "lego_setstatshistory"."id"
INSERT INTO "lego_setstatshistory" ("set_id", "day", "hits", "builds", "likes", "bi_downloads", "featured_hits", "user_hits") VALUES (78104, '2026-01-22'::date, 0, 0, 0, 0, 0, 0) RETURNING "lego_setstatshistory"."id"
0.23

Connection: default

Transaction status: In transaction

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(384)
  set.stats.inc_hits()

/home/nathan/rb/site/./lego/models/sets.py in inc_hits(2638)
  SetStatsHistory.inc_hits(self.set)

/home/nathan/rb/site/./lego/models/sets.py in inc_hits(2587)
  self, created = cls.objects.get_or_create(set=set, day=timezone.now())

RELEASE SAVEPOINT "s135227521288000_x9"RELEASE SAVEPOINT "s135227521288000_x9"
0.03

Connection: default

Transaction status: In transaction

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(384)
  set.stats.inc_hits()

/home/nathan/rb/site/./lego/models/sets.py in inc_hits(2638)
  SetStatsHistory.inc_hits(self.set)

/home/nathan/rb/site/./lego/models/sets.py in inc_hits(2587)
  self, created = cls.objects.get_or_create(set=set, day=timezone.now())

UPDATE "lego_setstatshistory"
   SET
"set_id" = 78104,
       "day" = '2026-01-22'::date,
       "hits" = 1,
       "builds" = 0,
       "likes" = 0,
       "bi_downloads" = 0,
       "featured_hits" = 0,
       "user_hits" = 0
 WHERE
"lego_setstatshistory"."id" = 140924754
UPDATE "lego_setstatshistory" SET "set_id" = 78104, "day" = '2026-01-22'::date, "hits" = 1, "builds" = 0, "likes" = 0, "bi_downloads" = 0, "featured_hits" = 0, "user_hits" = 0 WHERE "lego_setstatshistory"."id" = 140924754
0.09

Connection: default

Transaction status: In transaction

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(384)
  set.stats.inc_hits()

/home/nathan/rb/site/./lego/models/sets.py in inc_hits(2638)
  SetStatsHistory.inc_hits(self.set)

/home/nathan/rb/site/./lego/models/sets.py in inc_hits(2589)
  self.save()

SELECT "lego_theme"."id",
       "lego_theme"."parent_id",
       "lego_theme"."name",
       "lego_theme"."slug",
       "lego_theme"."set_count",
       "lego_theme"."t1_id",
       "lego_theme"."t1_name",
       "lego_theme"."t2_name",
       "lego_theme"."t3_name",
       "lego_theme"."lego_blurb",
       "lego_theme"."banner_img",
       "lego_theme"."descr"
  FROM
"lego_theme"
 WHERE
"lego_theme"."id" = 246
 LIMIT
21
SELECT ••• FROM "lego_theme" WHERE "lego_theme"."id" = 246 LIMIT 21
0.10

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(419)
  context['similar_sets'] = set.get_similar_sets(10)

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

/home/nathan/rb/site/./lego/models/sets.py in get_similar_sets(1350)
  """, {'theme': self.theme.name,

SELECT DISTINCT "taggit_tag"."id",
       "taggit_tag"."name",
       "taggit_tag"."slug",
       COUNT("lego_set"."baseset_ptr_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_baseset"
    ON
("taggit_taggeditem"."object_id" = "lego_baseset"."id" AND ("taggit_taggeditem"."content_type_id" IN (18,63,17,22,20,31,50,180)))
  LEFT OUTER JOIN
"lego_set"
    ON
("lego_baseset"."id" = "lego_set"."baseset_ptr_id")
 INNER JOIN
"taggit_taggeditem" T6
    ON
("taggit_tag"."id" = T6."tag_id")
 INNER JOIN
"lego_baseset" T7
    ON
(T6."object_id" = T7."id" AND (T6."content_type_id" IN (18,63,17,22,20,31,50,180)))
 INNER JOIN
"lego_set" T8
    ON
(T7."id" = T8."baseset_ptr_id")
 WHERE
("django_content_type"."app_label" = 'lego' AND "django_content_type"."model" = 'set' AND T8."baseset_ptr_id" = 78104)
 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_baseset" ON ("taggit_taggeditem"."object_id" = "lego_baseset"."id" AND ("taggit_taggeditem"."content_type_id" IN (18,63,17,22,20,31,50,180))) LEFT OUTER JOIN "lego_set" ON ("lego_baseset"."id" = "lego_set"."baseset_ptr_id") INNER JOIN "taggit_taggeditem" T6 ON ("taggit_tag"."id" = T6."tag_id") INNER JOIN "lego_baseset" T7 ON (T6."object_id" = T7."id" AND (T6."content_type_id" IN (18,63,17,22,20,31,50,180))) INNER JOIN "lego_set" T8 ON (T7."id" = T8."baseset_ptr_id") WHERE ("django_content_type"."app_label" = 'lego' AND "django_content_type"."model" = 'set' AND T8."baseset_ptr_id" = 78104) GROUP BY "taggit_tag"."id"
18.94

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(419)
  context['similar_sets'] = set.get_similar_sets(10)

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

/home/nathan/rb/site/./lego/models/sets.py in get_similar_sets(1352)
  'tag_ids': ' '.join(str(t.id) for t in self.get_tags() if t.id != 4),  # 4 == moc


   set
pg_trgm.similarity_threshold = 0.2; SELECT "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."num_parts",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."set_type",
       "lego_baseset"."primary_photo_id",
       "lego_setstatstotal"."likes",
       lego_theme.name as theme_name,
       lego_theme.parent_id as theme_parent,
       lego_baseset.id,
       (SIMILARITY ("lego_baseset"."name", 'Hogwarts Moment Herbology Class')*5 + similarity(coalesce(( select string_agg(tag_id::text, ' ') as tags from taggit_taggeditem where content_type_id in (17,18,22,63,31,180) and object_id=lego_baseset.id ),''), '1542 1666 4242 4804 5131 10049 10077 11327 17095 23201 32197')*5 + similarity("lego_theme"."name", 'Harry Potter')/3 + similarity(coalesce("lego_theme"."parent_id",0)::text, '0')/2 + similarity(substr("lego_baseset"."descr",0,100), '')) * least(likes/hits::float, 0.002) as similarity
  FROM
lego_baseset
 INNER JOIN
"lego_setstatstotal"
    ON
("lego_baseset"."id" = "lego_setstatstotal"."set_id")
 INNER JOIN
"lego_theme"
    ON
("lego_baseset"."theme_id" = "lego_theme"."id")
 WHERE
"lego_setstatstotal"."likes" > 50
   AND
"lego_setstatstotal"."hits" > 0
   AND
"lego_baseset"."is_active" = true
   AND
((lego_baseset.name || ' ' || lego_baseset.theme_id::text) % 'Hogwarts Moment Herbology Class 246')
 ORDER BY
"similarity" DESC, "lego_setstatstotal"."likes" DESC, "lego_baseset"."num_parts" DESC
 LIMIT
10
set pg_trgm.similarity_threshold = 0.2; SELECT "lego_baseset"."set_num", "lego_baseset"."name", "lego_baseset"."year", "lego_baseset"."theme_id", "lego_baseset"."num_parts", "lego_baseset"."is_active", "lego_baseset"."is_accessory", "lego_baseset"."added_dt", "lego_baseset"."added_by_id", "lego_baseset"."last_modified_dt", "lego_baseset"."last_modified_by_id", "lego_baseset"."set_type", "lego_baseset"."primary_photo_id", "lego_setstatstotal"."likes", lego_theme.name as theme_name, lego_theme.parent_id as theme_parent, lego_baseset.id, (SIMILARITY ("lego_baseset"."name", 'Hogwarts Moment Herbology Class')*5 + similarity(coalesce(( select string_agg(tag_id::text, ' ') as tags from taggit_taggeditem where content_type_id in (17,18,22,63,31,180) and object_id=lego_baseset.id ),''), '1542 1666 4242 4804 5131 10049 10077 11327 17095 23201 32197')*5 + similarity("lego_theme"."name", 'Harry Potter')/3 + similarity(coalesce("lego_theme"."parent_id",0)::text, '0')/2 + similarity(substr("lego_baseset"."descr",0,100), '')) * least(likes/hits::float, 0.002) as similarity FROM lego_baseset INNER JOIN "lego_setstatstotal" ON ("lego_baseset"."id" = "lego_setstatstotal"."set_id") INNER JOIN "lego_theme" ON ("lego_baseset"."theme_id" = "lego_theme"."id") WHERE "lego_setstatstotal"."likes" > 50 AND "lego_setstatstotal"."hits" > 0 AND "lego_baseset"."is_active" = true AND ((lego_baseset.name || ' ' || lego_baseset.theme_id::text) % 'Hogwarts Moment Herbology Class 246') ORDER BY "similarity" DESC, "lego_setstatstotal"."likes" DESC, "lego_baseset"."num_parts" DESC LIMIT 10
67.65

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(419)
  context['similar_sets'] = set.get_similar_sets(10)

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

/home/nathan/rb/site/./lego/models/sets.py in get_similar_sets(1361)
  qs = list(qs)

SELECT "lego_storesetitem"."id",
       "lego_storesetitem"."store_id",
       "lego_storesetitem"."is_used",
       "lego_storesetitem"."cost",
       "lego_storesetitem"."cost_usd",
       "lego_storesetitem"."sale_cost",
       "lego_storesetitem"."sku",
       "lego_storesetitem"."item_url",
       "lego_storesetitem"."quantity",
       "lego_storesetitem"."timestamp",
       "lego_storesetitem"."set_id",
       "lego_store"."id",
       "lego_store"."name",
       "lego_store"."is_active",
       "lego_store"."store_url",
       "lego_store"."add_item_url",
       "lego_store"."feed_url",
       "lego_store"."tag_line",
       "lego_store"."currency_code",
       "lego_store"."country_code",
       "lego_store"."bricklink_sellername",
       "lego_store"."ships_to"
  FROM
"lego_storesetitem"
 INNER JOIN
"lego_store"
    ON
("lego_storesetitem"."store_id" = "lego_store"."id")
 WHERE
(NOT "lego_storesetitem"."is_used" AND "lego_storesetitem"."set_id" = 78104 AND "lego_storesetitem"."store_id" IN (SELECT U0."id" FROM "lego_store" U0 WHERE (U0."is_active" AND UPPER(U0."store_url"::text) LIKE UPPER('%linksynergy.com%'))))
SELECT ••• FROM "lego_storesetitem" INNER JOIN "lego_store" ON ("lego_storesetitem"."store_id" = "lego_store"."id") WHERE (NOT "lego_storesetitem"."is_used" AND "lego_storesetitem"."set_id" = 78104 AND "lego_storesetitem"."store_id" IN (SELECT ••• FROM "lego_store" U0 WHERE (U0."is_active" AND UPPER(U0."store_url"::text) LIKE UPPER('%linksynergy.com%'))))
4 similar queries.
0.78

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(421)
  context['merchant_store_costs'] = get_merchant_stores_cost(request.user, set)

/home/nathan/rb/site/./lego/buy/sets.py in get_merchant_stores_cost(431)
  for item in items:

SELECT "lego_storesetitem"."id",
       "lego_storesetitem"."store_id",
       "lego_storesetitem"."is_used",
       "lego_storesetitem"."cost",
       "lego_storesetitem"."cost_usd",
       "lego_storesetitem"."sale_cost",
       "lego_storesetitem"."sku",
       "lego_storesetitem"."item_url",
       "lego_storesetitem"."quantity",
       "lego_storesetitem"."timestamp",
       "lego_storesetitem"."set_id",
       "lego_store"."id",
       "lego_store"."name",
       "lego_store"."is_active",
       "lego_store"."store_url",
       "lego_store"."add_item_url",
       "lego_store"."feed_url",
       "lego_store"."tag_line",
       "lego_store"."currency_code",
       "lego_store"."country_code",
       "lego_store"."bricklink_sellername",
       "lego_store"."ships_to"
  FROM
"lego_storesetitem"
 INNER JOIN
"lego_store"
    ON
("lego_storesetitem"."store_id" = "lego_store"."id")
 WHERE
(NOT "lego_storesetitem"."is_used" AND "lego_storesetitem"."set_id" = 78104 AND "lego_storesetitem"."store_id" IN (SELECT U0."id" FROM "lego_store" U0 WHERE (U0."is_active" AND UPPER(U0."store_url"::text) LIKE UPPER('%brickowl.com%'))))
SELECT ••• FROM "lego_storesetitem" INNER JOIN "lego_store" ON ("lego_storesetitem"."store_id" = "lego_store"."id") WHERE (NOT "lego_storesetitem"."is_used" AND "lego_storesetitem"."set_id" = 78104 AND "lego_storesetitem"."store_id" IN (SELECT ••• FROM "lego_store" U0 WHERE (U0."is_active" AND UPPER(U0."store_url"::text) LIKE UPPER('%brickowl.com%'))))
4 similar queries.
0.31

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(421)
  context['merchant_store_costs'] = get_merchant_stores_cost(request.user, set)

/home/nathan/rb/site/./lego/buy/sets.py in get_merchant_stores_cost(431)
  for item in items:

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.12

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(421)
  context['merchant_store_costs'] = get_merchant_stores_cost(request.user, set)

/home/nathan/rb/site/./lego/buy/sets.py in get_merchant_stores_cost(443)
  item.cost = user.geo.format_user_currency(item.cost or 0, item.store.currency_code)

/home/nathan/rb/site/./geo/geo.py in format_user_currency(287)
  price = self.to_user_currency(price, from_currency_code)

/home/nathan/rb/site/./geo/geo.py in to_user_currency(263)
  user_currency = self.get_user_currency()

/home/nathan/rb/site/./geo/geo.py in get_user_currency(252)
  country = Country.objects.get(iso=country_code)

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 78104
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 78104 LIMIT 21
2 similar queries. Duplicated 2 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(421)
  context['merchant_store_costs'] = get_merchant_stores_cost(request.user, set)

/home/nathan/rb/site/./lego/buy/sets.py in get_merchant_stores_cost(447)
  item.item_url = item.get_store_item_url()

/home/nathan/rb/site/./lego/models/stores.py in get_store_item_url(401)
  return self.store.store_url.split('?')[0] + '/search/store?utm_source=rebrickable&query=' + self.set.set_num

SELECT "lego_storesetitem"."id",
       "lego_storesetitem"."store_id",
       "lego_storesetitem"."is_used",
       "lego_storesetitem"."cost",
       "lego_storesetitem"."cost_usd",
       "lego_storesetitem"."sale_cost",
       "lego_storesetitem"."sku",
       "lego_storesetitem"."item_url",
       "lego_storesetitem"."quantity",
       "lego_storesetitem"."timestamp",
       "lego_storesetitem"."set_id",
       "lego_store"."id",
       "lego_store"."name",
       "lego_store"."is_active",
       "lego_store"."store_url",
       "lego_store"."add_item_url",
       "lego_store"."feed_url",
       "lego_store"."tag_line",
       "lego_store"."currency_code",
       "lego_store"."country_code",
       "lego_store"."bricklink_sellername",
       "lego_store"."ships_to"
  FROM
"lego_storesetitem"
 INNER JOIN
"lego_store"
    ON
("lego_storesetitem"."store_id" = "lego_store"."id")
 WHERE
(NOT "lego_storesetitem"."is_used" AND "lego_storesetitem"."set_id" = 78104 AND "lego_storesetitem"."store_id" IN (SELECT U0."id" FROM "lego_store" U0 WHERE (U0."is_active" AND UPPER(U0."store_url"::text) LIKE UPPER('%bricklink.com%'))))
SELECT ••• FROM "lego_storesetitem" INNER JOIN "lego_store" ON ("lego_storesetitem"."store_id" = "lego_store"."id") WHERE (NOT "lego_storesetitem"."is_used" AND "lego_storesetitem"."set_id" = 78104 AND "lego_storesetitem"."store_id" IN (SELECT ••• FROM "lego_store" U0 WHERE (U0."is_active" AND UPPER(U0."store_url"::text) LIKE UPPER('%bricklink.com%'))))
4 similar queries.
0.28

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(421)
  context['merchant_store_costs'] = get_merchant_stores_cost(request.user, set)

/home/nathan/rb/site/./lego/buy/sets.py in get_merchant_stores_cost(431)
  for item in items:

SELECT "lego_storesetitem"."id",
       "lego_storesetitem"."store_id",
       "lego_storesetitem"."is_used",
       "lego_storesetitem"."cost",
       "lego_storesetitem"."cost_usd",
       "lego_storesetitem"."sale_cost",
       "lego_storesetitem"."sku",
       "lego_storesetitem"."item_url",
       "lego_storesetitem"."quantity",
       "lego_storesetitem"."timestamp",
       "lego_storesetitem"."set_id",
       "lego_store"."id",
       "lego_store"."name",
       "lego_store"."is_active",
       "lego_store"."store_url",
       "lego_store"."add_item_url",
       "lego_store"."feed_url",
       "lego_store"."tag_line",
       "lego_store"."currency_code",
       "lego_store"."country_code",
       "lego_store"."bricklink_sellername",
       "lego_store"."ships_to"
  FROM
"lego_storesetitem"
 INNER JOIN
"lego_store"
    ON
("lego_storesetitem"."store_id" = "lego_store"."id")
 WHERE
(NOT "lego_storesetitem"."is_used" AND "lego_storesetitem"."set_id" = 78104 AND "lego_storesetitem"."store_id" IN (SELECT U0."id" FROM "lego_store" U0 WHERE (U0."is_active" AND UPPER(U0."store_url"::text) LIKE UPPER('%www.amazon.%'))))
SELECT ••• FROM "lego_storesetitem" INNER JOIN "lego_store" ON ("lego_storesetitem"."store_id" = "lego_store"."id") WHERE (NOT "lego_storesetitem"."is_used" AND "lego_storesetitem"."set_id" = 78104 AND "lego_storesetitem"."store_id" IN (SELECT ••• FROM "lego_store" U0 WHERE (U0."is_active" AND UPPER(U0."store_url"::text) LIKE UPPER('%www.amazon.%'))))
4 similar queries.
0.29

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(421)
  context['merchant_store_costs'] = get_merchant_stores_cost(request.user, set)

/home/nathan/rb/site/./lego/buy/sets.py in get_merchant_stores_cost(431)
  for item in items:

SELECT "lego_store"."id",
       "lego_store"."name",
       "lego_store"."is_active",
       "lego_store"."store_url",
       "lego_store"."add_item_url",
       "lego_store"."feed_url",
       "lego_store"."tag_line",
       "lego_store"."currency_code",
       "lego_store"."country_code",
       "lego_store"."bricklink_sellername",
       "lego_store"."ships_to"
  FROM
"lego_store"
 WHERE
("lego_store"."is_active" AND "lego_store"."country_code" = 'US' AND UPPER("lego_store"."store_url"::text) LIKE UPPER('%linksynergy.com%'))
 LIMIT
21
SELECT ••• FROM "lego_store" WHERE ("lego_store"."is_active" AND "lego_store"."country_code" = 'US' AND UPPER("lego_store"."store_url"::text) LIKE UPPER('%linksynergy.com%')) LIMIT 21
2 similar queries. Duplicated 2 times.
10.10

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(421)
  context['merchant_store_costs'] = get_merchant_stores_cost(request.user, set)

/home/nathan/rb/site/./lego/buy/sets.py in get_merchant_stores_cost(456)
  res['img_link'] = MerchantStore.get_lego_link_for_user(user, set)

/home/nathan/rb/site/./lego/models/stores.py in get_lego_link_for_user(274)
  store = get_or_none(Store.objects, store_url__icontains='linksynergy.com', country_code=store_country)

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

SELECT "lego_storesetitem"."id",
       "lego_storesetitem"."store_id",
       "lego_storesetitem"."is_used",
       "lego_storesetitem"."cost",
       "lego_storesetitem"."cost_usd",
       "lego_storesetitem"."sale_cost",
       "lego_storesetitem"."sku",
       "lego_storesetitem"."item_url",
       "lego_storesetitem"."quantity",
       "lego_storesetitem"."timestamp",
       "lego_storesetitem"."set_id",
       "lego_store"."id",
       "lego_store"."name",
       "lego_store"."is_active",
       "lego_store"."store_url",
       "lego_store"."add_item_url",
       "lego_store"."feed_url",
       "lego_store"."tag_line",
       "lego_store"."currency_code",
       "lego_store"."country_code",
       "lego_store"."bricklink_sellername",
       "lego_store"."ships_to"
  FROM
"lego_storesetitem"
 INNER JOIN
"lego_store"
    ON
("lego_storesetitem"."store_id" = "lego_store"."id")
 WHERE
(NOT "lego_storesetitem"."is_used" AND "lego_storesetitem"."set_id" = 78104 AND "lego_storesetitem"."store_id" = 17)
 ORDER BY
"lego_storesetitem"."id" ASC
 LIMIT
1
SELECT ••• FROM "lego_storesetitem" INNER JOIN "lego_store" ON ("lego_storesetitem"."store_id" = "lego_store"."id") WHERE (NOT "lego_storesetitem"."is_used" AND "lego_storesetitem"."set_id" = 78104 AND "lego_storesetitem"."store_id" = 17) ORDER BY "lego_storesetitem"."id" ASC LIMIT 1
2 similar queries. Duplicated 2 times.
0.14

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(421)
  context['merchant_store_costs'] = get_merchant_stores_cost(request.user, set)

/home/nathan/rb/site/./lego/buy/sets.py in get_merchant_stores_cost(456)
  res['img_link'] = MerchantStore.get_lego_link_for_user(user, set)

/home/nathan/rb/site/./lego/models/stores.py in get_lego_link_for_user(278)
  item = StoreSetItem.objects.select_related('store').filter(store=store, set_id=set.id, is_used=False).first()

SELECT "lego_store"."id",
       "lego_store"."name",
       "lego_store"."is_active",
       "lego_store"."store_url",
       "lego_store"."add_item_url",
       "lego_store"."feed_url",
       "lego_store"."tag_line",
       "lego_store"."currency_code",
       "lego_store"."country_code",
       "lego_store"."bricklink_sellername",
       "lego_store"."ships_to"
  FROM
"lego_store"
 WHERE
("lego_store"."is_active" AND "lego_store"."country_code" = 'US' AND UPPER("lego_store"."store_url"::text) LIKE UPPER('%linksynergy.com%'))
 LIMIT
21
SELECT ••• FROM "lego_store" WHERE ("lego_store"."is_active" AND "lego_store"."country_code" = 'US' AND UPPER("lego_store"."store_url"::text) LIKE UPPER('%linksynergy.com%')) LIMIT 21
2 similar queries. Duplicated 2 times.
8.04

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(421)
  context['merchant_store_costs'] = get_merchant_stores_cost(request.user, set)

/home/nathan/rb/site/./lego/buy/sets.py in get_merchant_stores_cost(456)
  res['img_link'] = MerchantStore.get_lego_link_for_user(user, set)

/home/nathan/rb/site/./lego/models/stores.py in get_lego_link_for_user(274)
  store = get_or_none(Store.objects, store_url__icontains='linksynergy.com', country_code=store_country)

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

SELECT "lego_storesetitem"."id",
       "lego_storesetitem"."store_id",
       "lego_storesetitem"."is_used",
       "lego_storesetitem"."cost",
       "lego_storesetitem"."cost_usd",
       "lego_storesetitem"."sale_cost",
       "lego_storesetitem"."sku",
       "lego_storesetitem"."item_url",
       "lego_storesetitem"."quantity",
       "lego_storesetitem"."timestamp",
       "lego_storesetitem"."set_id",
       "lego_store"."id",
       "lego_store"."name",
       "lego_store"."is_active",
       "lego_store"."store_url",
       "lego_store"."add_item_url",
       "lego_store"."feed_url",
       "lego_store"."tag_line",
       "lego_store"."currency_code",
       "lego_store"."country_code",
       "lego_store"."bricklink_sellername",
       "lego_store"."ships_to"
  FROM
"lego_storesetitem"
 INNER JOIN
"lego_store"
    ON
("lego_storesetitem"."store_id" = "lego_store"."id")
 WHERE
(NOT "lego_storesetitem"."is_used" AND "lego_storesetitem"."set_id" = 78104 AND "lego_storesetitem"."store_id" = 17)
 ORDER BY
"lego_storesetitem"."id" ASC
 LIMIT
1
SELECT ••• FROM "lego_storesetitem" INNER JOIN "lego_store" ON ("lego_storesetitem"."store_id" = "lego_store"."id") WHERE (NOT "lego_storesetitem"."is_used" AND "lego_storesetitem"."set_id" = 78104 AND "lego_storesetitem"."store_id" = 17) ORDER BY "lego_storesetitem"."id" ASC LIMIT 1
2 similar queries. Duplicated 2 times.
0.16

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(421)
  context['merchant_store_costs'] = get_merchant_stores_cost(request.user, set)

/home/nathan/rb/site/./lego/buy/sets.py in get_merchant_stores_cost(456)
  res['img_link'] = MerchantStore.get_lego_link_for_user(user, set)

/home/nathan/rb/site/./lego/models/stores.py in get_lego_link_for_user(278)
  item = StoreSetItem.objects.select_related('store').filter(store=store, set_id=set.id, is_used=False).first()

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector",
       "lego_inventory"."id" AS "inventory2",
       "lego_invset"."quantity" AS "quantity",
       "lego_theme"."id",
       "lego_theme"."parent_id",
       "lego_theme"."name",
       "lego_theme"."slug",
       "lego_theme"."set_count",
       "lego_theme"."t1_id",
       "lego_theme"."t1_name",
       "lego_theme"."t2_name",
       "lego_theme"."t3_name",
       "lego_theme"."lego_blurb",
       "lego_theme"."banner_img",
       "lego_theme"."descr",
       T6."id",
       T6."parent_id",
       T6."name",
       T6."slug",
       T6."set_count",
       T6."t1_id",
       T6."t1_name",
       T6."t2_name",
       T6."t3_name",
       T6."lego_blurb",
       T6."banner_img",
       T6."descr",
       T7."id",
       T7."parent_id",
       T7."name",
       T7."slug",
       T7."set_count",
       T7."t1_id",
       T7."t1_name",
       T7."t2_name",
       T7."t3_name",
       T7."lego_blurb",
       T7."banner_img",
       T7."descr",
       "lego_setstatstotal"."set_id",
       "lego_setstatstotal"."hits",
       "lego_setstatstotal"."builds",
       "lego_setstatstotal"."likes",
       "lego_setstatstotal"."bi_downloads",
       "lego_setstatstotal"."featured_hits",
       "lego_setstatstotal"."user_hits"
  FROM
"lego_baseset"
 INNER JOIN
"lego_inventory"
    ON
("lego_baseset"."id" = "lego_inventory"."set_id")
 INNER JOIN
"lego_invset"
    ON
("lego_inventory"."id" = "lego_invset"."inventory_id")
 INNER JOIN
"lego_theme"
    ON
("lego_baseset"."theme_id" = "lego_theme"."id")
  LEFT OUTER JOIN
"lego_theme" T6
    ON
("lego_theme"."parent_id" = T6."id")
  LEFT OUTER JOIN
"lego_theme" T7
    ON
(T6."parent_id" = T7."id")
  LEFT OUTER JOIN
"lego_setstatstotal"
    ON
("lego_baseset"."id" = "lego_setstatstotal"."set_id")
 WHERE
("lego_baseset"."is_active" AND "lego_inventory"."is_active" AND "lego_invset"."inv_set_id" = 78104 AND "lego_baseset"."set_type" = 'Set')
 ORDER BY
"lego_baseset"."name" ASC
SELECT ••• FROM "lego_baseset" INNER JOIN "lego_inventory" ON ("lego_baseset"."id" = "lego_inventory"."set_id") INNER JOIN "lego_invset" ON ("lego_inventory"."id" = "lego_invset"."inventory_id") INNER JOIN "lego_theme" ON ("lego_baseset"."theme_id" = "lego_theme"."id") LEFT OUTER JOIN "lego_theme" T6 ON ("lego_theme"."parent_id" = T6."id") LEFT OUTER JOIN "lego_theme" T7 ON (T6."parent_id" = T7."id") LEFT OUTER JOIN "lego_setstatstotal" ON ("lego_baseset"."id" = "lego_setstatstotal"."set_id") WHERE ("lego_baseset"."is_active" AND "lego_inventory"."is_active" AND "lego_invset"."inv_set_id" = 78104 AND "lego_baseset"."set_type" = 'Set') ORDER BY "lego_baseset"."name" ASC
0.81

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(430)
  for s in context['parent_sets']:

SELECT "lego_setmap"."id",
       "lego_setmap"."set_id",
       "lego_setmap"."ext_system",
       "lego_setmap"."ext_id"
  FROM
"lego_setmap"
 WHERE
"lego_setmap"."set_id" = 78104
SELECT ••• FROM "lego_setmap" WHERE "lego_setmap"."set_id" = 78104
0.09

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(445)
  context['mappings'] = set.get_ext_mappings()

/home/nathan/rb/site/./lego/models/sets.py in get_ext_mappings(1988)
  for set_map in SetMap.objects.filter(set=self):

SELECT "lego_setphoto"."id",
       "lego_setphoto"."set_id",
       "lego_setphoto"."photo_type_id",
       "lego_setphoto"."submitted_by_id",
       "lego_setphoto"."timestamp",
       "lego_setphoto"."is_active",
       "lego_setphoto"."is_primary"
  FROM
"lego_setphoto"
 WHERE
"lego_setphoto"."id" = 75603
 LIMIT
21
SELECT ••• FROM "lego_setphoto" WHERE "lego_setphoto"."id" = 75603 LIMIT 21
0.25

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/models/sets.py in img_dir(751)
  file_dir = self.primary_photo.get_img_dir()

34 {% block meta_description %}LEGO Set {{ set.set_num }} {{ set.name }} - building instructions and parts inventory.{% endblock meta_description %}
35 {% block meta_og_description %}LEGO Set {{ set.set_num }} {{ set.name }} - building instructions and parts inventory.{% endblock meta_og_description %}
36 {% block meta_image %}{% spaceless %}
37 {% if set.img_dir %}
38 {% thumbs set.img_dir settings.THUMBS_OPTIONS_SET_MAIN as img %}{{ img.url }}
39 {% endif %}
40 {% endspaceless %}{% endblock meta_image %}
41

/home/nathan/rb/site/lego/templates/sets/set_details.html

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 78104
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 78104 LIMIT 21
2 similar queries. Duplicated 2 times.
0.12

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/models/sets.py in img_dir(751)
  file_dir = self.primary_photo.get_img_dir()

/home/nathan/rb/site/./lego/models/sets.py in get_img_dir(3133)
  return os.path.join('sets', self.set.set_num.lower(), str(self.id) + '.jpg')

34 {% block meta_description %}LEGO Set {{ set.set_num }} {{ set.name }} - building instructions and parts inventory.{% endblock meta_description %}
35 {% block meta_og_description %}LEGO Set {{ set.set_num }} {{ set.name }} - building instructions and parts inventory.{% endblock meta_og_description %}
36 {% block meta_image %}{% spaceless %}
37 {% if set.img_dir %}
38 {% thumbs set.img_dir settings.THUMBS_OPTIONS_SET_MAIN as img %}{{ img.url }}
39 {% endif %}
40 {% endspaceless %}{% endblock meta_image %}
41

/home/nathan/rb/site/lego/templates/sets/set_details.html

SELECT "rb_sitesettings"."id",
       "rb_sitesettings"."name",
       "rb_sitesettings"."value"
  FROM
"rb_sitesettings"
 WHERE
"rb_sitesettings"."name" = 'site_message'
 LIMIT
21
SELECT ••• FROM "rb_sitesettings" WHERE "rb_sitesettings"."name" = 'site_message' LIMIT 21
0.09

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./rb/templatetags/rb_settings.py in site_message(147)
  message = SiteSettings.get_site_message()

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

/home/nathan/rb/site/./rb/models/site.py in get_site_message(24)
  setting = cls.objects.get(name=SiteSettings.SITE_MESSAGE)

340
341 <body class="{% block body-class %}{{ request.user.get_body_classes }}{% endblock body-class %}">
342
343 {% site_message %}
344 <div id="wrapper" class="{% block wrapper_class %}{% endblock wrapper_class %} {% if request.user.is_anonymous %}{% else %}{{ request.user.get_personalisation_options.max_width }}{% endif %}">
345
346
347 <div id="topBar" class="hidden-sm hidden-xs">

/home/nathan/rb/site/rb/templates/rb/base_root.html

SELECT COUNT(*) AS "__count"
  FROM
"lego_setphoto"
 WHERE
("lego_setphoto"."is_active" AND "lego_setphoto"."set_id" = 78104)
SELECT ••• FROM "lego_setphoto" WHERE ("lego_setphoto"."is_active" AND "lego_setphoto"."set_id" = 78104)
0.16

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

73
74 {% else %}
75
76 {% if set.photos.count > 1 %}
77 {# Setup slider to move through multiple Set images #}
78 {# flexsliderX to avoid initialisation until we have loaded all images #}
79 <div class="row">
80 <div class="col-xs-12"> {# here so the nav arrows are positioned properly #}

/home/nathan/rb/site/lego/templates/sets/includes/render_set_main_top.html

SELECT "lego_setphoto"."id",
       "lego_setphoto"."set_id",
       "lego_setphoto"."photo_type_id",
       "lego_setphoto"."submitted_by_id",
       "lego_setphoto"."timestamp",
       "lego_setphoto"."is_active",
       "lego_setphoto"."is_primary"
  FROM
"lego_setphoto"
 WHERE
("lego_setphoto"."is_active" AND "lego_setphoto"."set_id" = 78104)
 ORDER BY
"lego_setphoto"."is_primary" DESC, "lego_setphoto"."is_active" DESC, "lego_setphoto"."timestamp" ASC
SELECT ••• FROM "lego_setphoto" WHERE ("lego_setphoto"."is_active" AND "lego_setphoto"."set_id" = 78104) ORDER BY "lego_setphoto"."is_primary" DESC, "lego_setphoto"."is_active" DESC, "lego_setphoto"."timestamp" ASC
2 similar queries. Duplicated 2 times.
0.11

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

82 <div class="flexslider text-center" data-controlNav="thumbnails" data-pauseOnHover="true"
83 data-directionNav="true" data-controlsContainer="#slider_controls">
84 <ul class="slides display-flex">
85 {% for photo in set.photos.all %} {# primary sorted first #}
86 {% thumbs photo.get_img_dir settings.THUMBS_OPTIONS_SET_MAIN_SM as tn_img %}
87 {% if forloop.counter == 1 %}
88 {% thumbs_encoded photo.get_img_dir settings.THUMBS_OPTIONS_SET_MAIN_PREVIEW as preview_img %}
89 {% thumbs photo.get_img_dir settings.THUMBS_OPTIONS_SET_MAIN get_real_dims=1 as first_image %}

/home/nathan/rb/site/lego/templates/sets/includes/render_set_main_top.html

SELECT "lego_setphototype"."id",
       "lego_setphototype"."name"
  FROM
"lego_setphototype"
 WHERE
"lego_setphototype"."id" = 3
 LIMIT
21
SELECT ••• FROM "lego_setphototype" WHERE "lego_setphototype"."id" = 3 LIMIT 21
0.10

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

91 <li data-thumb="{% cachebuster tn_img.url %}">
92 <a href="{{ merchant_store_costs.img_link|default:'' }}" target="_blank">
93 <img class="img-responsive" style="background-image:url('data:image;base64,{{ preview_img }}');background-size:contain;background-repeat:no-repeat"
94 title="LEGO Set {{ set }}{% if photo.photo_type %} ({{ photo.photo_type.name }}){% endif %}"
95 alt="LEGO Set {{ set }}{% if photo.photo_type %} ({{ photo.photo_type.name }}){% endif %}"
96 onload="this.style.backgroundImage=''" {# so transparent images dont have blurry bg #}
97 src="{% cachebuster first_image.url %}"
98 width="{{ first_image.width }}px" height="{{ first_image.height }}px">

/home/nathan/rb/site/lego/templates/sets/includes/render_set_main_top.html

SELECT "lego_setphoto"."id",
       "lego_setphoto"."set_id",
       "lego_setphoto"."photo_type_id",
       "lego_setphoto"."submitted_by_id",
       "lego_setphoto"."timestamp",
       "lego_setphoto"."is_active",
       "lego_setphoto"."is_primary"
  FROM
"lego_setphoto"
 WHERE
("lego_setphoto"."is_active" AND "lego_setphoto"."set_id" = 78104)
 ORDER BY
"lego_setphoto"."is_primary" DESC, "lego_setphoto"."is_active" DESC, "lego_setphoto"."timestamp" ASC
SELECT ••• FROM "lego_setphoto" WHERE ("lego_setphoto"."is_active" AND "lego_setphoto"."set_id" = 78104) ORDER BY "lego_setphoto"."is_primary" DESC, "lego_setphoto"."is_active" DESC, "lego_setphoto"."timestamp" ASC
2 similar queries. Duplicated 2 times.
0.13

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

115 </ul>
116 </div>
117 {# pre-create controls div so we can size column height without CLS impact and prevents flicker #}
118 <div class="flexslider-controls-container-sets {% if set.photos.all|length > 6 %}flexslider-controls-container-sets-2rows{% endif %}">
119 <div id="slider_controls" class="text-center"></div>
120 </div>
121 </div>
122 </div>

/home/nathan/rb/site/lego/templates/sets/includes/render_set_main_top.html

select prev_num,
       next_num
  from
(
        select set_num,
               lag(set_num) over (order by theme_id, set_num) as prev_num,
               lead(set_num) over (order by theme_id, set_num) as next_num
          from
(
                select set_num,
                       theme_id,
                       nullif(regexp_replace(substring(set_num, 0, position('-' in set_num)), '[^0-9]', '', 'g'), '')::bigint as int_num
                  from
lego_baseset
                 where
set_type in ('Set')
               ) x
       ) y
 where
set_num = '76384-1'
select prev_num, next_num from ( select set_num, lag(set_num) over (order by theme_id, set_num) as prev_num, lead(set_num) over (order by theme_id, set_num) as next_num from ( select set_num, theme_id, nullif(regexp_replace(substring(set_num, 0, position('-' in set_num)), '[^0-9]', '', 'g'), '')::bigint as int_num from lego_baseset where set_type in ('Set') ) x ) y where set_num = '76384-1'
75.43

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

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

/home/nathan/rb/site/./lego/models/sets.py in get_next_prev_sets(601)
  rows = run_sql(sql)

/home/nathan/rb/site/./rb/utils.py in run_sql(664)
  cursor.execute(sql, params)

12 <h3 class="text-center mb-0">
13 {{ set.set_num }}
14 </h3>
15 {% with set.get_next_prev_sets as next_prev_sets %}
16 <div class="flex-row mb-30">
17 {% if next_prev_sets.0 %}
18 <div class="flex-grow">
19 <span class="size-12x trunc" title="{{ next_prev_sets.0.set }}"><a href="{{ next_prev_sets.0.get_absolute_url }}"><i class="fa fa-chevron-left"></i> {{ next_prev_sets.0.set_num }}</a></span>

/home/nathan/rb/site/lego/templates/sets/includes/render_set_sidebar_top.html

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector",
       "lego_theme"."id",
       "lego_theme"."parent_id",
       "lego_theme"."name",
       "lego_theme"."slug",
       "lego_theme"."set_count",
       "lego_theme"."t1_id",
       "lego_theme"."t1_name",
       "lego_theme"."t2_name",
       "lego_theme"."t3_name",
       "lego_theme"."lego_blurb",
       "lego_theme"."banner_img",
       "lego_theme"."descr",
       T3."id",
       T3."parent_id",
       T3."name",
       T3."slug",
       T3."set_count",
       T3."t1_id",
       T3."t1_name",
       T3."t2_name",
       T3."t3_name",
       T3."lego_blurb",
       T3."banner_img",
       T3."descr",
       T4."id",
       T4."parent_id",
       T4."name",
       T4."slug",
       T4."set_count",
       T4."t1_id",
       T4."t1_name",
       T4."t2_name",
       T4."t3_name",
       T4."lego_blurb",
       T4."banner_img",
       T4."descr",
       "lego_setstatstotal"."set_id",
       "lego_setstatstotal"."hits",
       "lego_setstatstotal"."builds",
       "lego_setstatstotal"."likes",
       "lego_setstatstotal"."bi_downloads",
       "lego_setstatstotal"."featured_hits",
       "lego_setstatstotal"."user_hits"
  FROM
"lego_baseset"
 INNER JOIN
"lego_theme"
    ON
("lego_baseset"."theme_id" = "lego_theme"."id")
  LEFT OUTER JOIN
"lego_theme" T3
    ON
("lego_theme"."parent_id" = T3."id")
  LEFT OUTER JOIN
"lego_theme" T4
    ON
(T3."parent_id" = T4."id")
  LEFT OUTER JOIN
"lego_setstatstotal"
    ON
("lego_baseset"."id" = "lego_setstatstotal"."set_id")
 WHERE
("lego_baseset"."is_active" AND "lego_baseset"."set_num" = '76383-1')
 LIMIT
21
SELECT ••• FROM "lego_baseset" INNER JOIN "lego_theme" ON ("lego_baseset"."theme_id" = "lego_theme"."id") LEFT OUTER JOIN "lego_theme" T3 ON ("lego_theme"."parent_id" = T3."id") LEFT OUTER JOIN "lego_theme" T4 ON (T3."parent_id" = T4."id") LEFT OUTER JOIN "lego_setstatstotal" ON ("lego_baseset"."id" = "lego_setstatstotal"."set_id") WHERE ("lego_baseset"."is_active" AND "lego_baseset"."set_num" = '76383-1') LIMIT 21
2 similar queries.
0.55

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

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

/home/nathan/rb/site/./lego/models/sets.py in get_next_prev_sets(603)
  return get_or_none(BaseSet.objects, set_num=prev_num), get_or_none(BaseSet.objects, set_num=next_num)

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

12 <h3 class="text-center mb-0">
13 {{ set.set_num }}
14 </h3>
15 {% with set.get_next_prev_sets as next_prev_sets %}
16 <div class="flex-row mb-30">
17 {% if next_prev_sets.0 %}
18 <div class="flex-grow">
19 <span class="size-12x trunc" title="{{ next_prev_sets.0.set }}"><a href="{{ next_prev_sets.0.get_absolute_url }}"><i class="fa fa-chevron-left"></i> {{ next_prev_sets.0.set_num }}</a></span>

/home/nathan/rb/site/lego/templates/sets/includes/render_set_sidebar_top.html

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector",
       "lego_theme"."id",
       "lego_theme"."parent_id",
       "lego_theme"."name",
       "lego_theme"."slug",
       "lego_theme"."set_count",
       "lego_theme"."t1_id",
       "lego_theme"."t1_name",
       "lego_theme"."t2_name",
       "lego_theme"."t3_name",
       "lego_theme"."lego_blurb",
       "lego_theme"."banner_img",
       "lego_theme"."descr",
       T3."id",
       T3."parent_id",
       T3."name",
       T3."slug",
       T3."set_count",
       T3."t1_id",
       T3."t1_name",
       T3."t2_name",
       T3."t3_name",
       T3."lego_blurb",
       T3."banner_img",
       T3."descr",
       T4."id",
       T4."parent_id",
       T4."name",
       T4."slug",
       T4."set_count",
       T4."t1_id",
       T4."t1_name",
       T4."t2_name",
       T4."t3_name",
       T4."lego_blurb",
       T4."banner_img",
       T4."descr",
       "lego_setstatstotal"."set_id",
       "lego_setstatstotal"."hits",
       "lego_setstatstotal"."builds",
       "lego_setstatstotal"."likes",
       "lego_setstatstotal"."bi_downloads",
       "lego_setstatstotal"."featured_hits",
       "lego_setstatstotal"."user_hits"
  FROM
"lego_baseset"
 INNER JOIN
"lego_theme"
    ON
("lego_baseset"."theme_id" = "lego_theme"."id")
  LEFT OUTER JOIN
"lego_theme" T3
    ON
("lego_theme"."parent_id" = T3."id")
  LEFT OUTER JOIN
"lego_theme" T4
    ON
(T3."parent_id" = T4."id")
  LEFT OUTER JOIN
"lego_setstatstotal"
    ON
("lego_baseset"."id" = "lego_setstatstotal"."set_id")
 WHERE
("lego_baseset"."is_active" AND "lego_baseset"."set_num" = '76385-1')
 LIMIT
21
SELECT ••• FROM "lego_baseset" INNER JOIN "lego_theme" ON ("lego_baseset"."theme_id" = "lego_theme"."id") LEFT OUTER JOIN "lego_theme" T3 ON ("lego_theme"."parent_id" = T3."id") LEFT OUTER JOIN "lego_theme" T4 ON (T3."parent_id" = T4."id") LEFT OUTER JOIN "lego_setstatstotal" ON ("lego_baseset"."id" = "lego_setstatstotal"."set_id") WHERE ("lego_baseset"."is_active" AND "lego_baseset"."set_num" = '76385-1') LIMIT 21
2 similar queries.
0.52

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

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

/home/nathan/rb/site/./lego/models/sets.py in get_next_prev_sets(603)
  return get_or_none(BaseSet.objects, set_num=prev_num), get_or_none(BaseSet.objects, set_num=next_num)

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

12 <h3 class="text-center mb-0">
13 {{ set.set_num }}
14 </h3>
15 {% with set.get_next_prev_sets as next_prev_sets %}
16 <div class="flex-row mb-30">
17 {% if next_prev_sets.0 %}
18 <div class="flex-grow">
19 <span class="size-12x trunc" title="{{ next_prev_sets.0.set }}"><a href="{{ next_prev_sets.0.get_absolute_url }}"><i class="fa fa-chevron-left"></i> {{ next_prev_sets.0.set_num }}</a></span>

/home/nathan/rb/site/lego/templates/sets/includes/render_set_sidebar_top.html

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector",
       "lego_set"."baseset_ptr_id",
       "lego_set"."start_date",
       "lego_set"."end_date"
  FROM
"lego_set"
 INNER JOIN
"lego_baseset"
    ON
("lego_set"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
"lego_set"."baseset_ptr_id" = 78103
 LIMIT
21
SELECT ••• FROM "lego_set" INNER JOIN "lego_baseset" ON ("lego_set"."baseset_ptr_id" = "lego_baseset"."id") WHERE "lego_set"."baseset_ptr_id" = 78103 LIMIT 21
4 similar queries.
0.14

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

16 <div class="flex-row mb-30">
17 {% if next_prev_sets.0 %}
18 <div class="flex-grow">
19 <span class="size-12x trunc" title="{{ next_prev_sets.0.set }}"><a href="{{ next_prev_sets.0.get_absolute_url }}"><i class="fa fa-chevron-left"></i> {{ next_prev_sets.0.set_num }}</a></span>
20 </div>
21 {% endif %}
22 {% if next_prev_sets.1 %}
23 <div class="">

/home/nathan/rb/site/lego/templates/sets/includes/render_set_sidebar_top.html

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector",
       "lego_set"."baseset_ptr_id",
       "lego_set"."start_date",
       "lego_set"."end_date"
  FROM
"lego_set"
 INNER JOIN
"lego_baseset"
    ON
("lego_set"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
"lego_set"."baseset_ptr_id" = 78105
 LIMIT
21
SELECT ••• FROM "lego_set" INNER JOIN "lego_baseset" ON ("lego_set"."baseset_ptr_id" = "lego_baseset"."id") WHERE "lego_set"."baseset_ptr_id" = 78105 LIMIT 21
4 similar queries.
0.12

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

21 {% endif %}
22 {% if next_prev_sets.1 %}
23 <div class="">
24 <span class="size-12x pull-right trunc" title="{{ next_prev_sets.1.set }}"><a href="{{ next_prev_sets.1.get_absolute_url }}">{{ next_prev_sets.1.set_num }} <i class="fa fa-chevron-right"></i></a></span>
25 </div>
26 {% endif %}
27 </div>
28 {% endwith %}

/home/nathan/rb/site/lego/templates/sets/includes/render_set_sidebar_top.html

SELECT COUNT(*) AS "__count"
  FROM
"lego_inventory"
 WHERE
("lego_inventory"."is_active" AND "lego_inventory"."set_id" = 78104)
SELECT ••• FROM "lego_inventory" WHERE ("lego_inventory"."is_active" AND "lego_inventory"."set_id" = 78104)
0.11

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/models/sets.py in get_num_inventories(981)
  return Inventory.objects.filter(set=self).count()

67 {% endif %}
68 <tr>
69 <td>Inventory</td>
70 <td><a href="#parts_scroll">{{ set.num_parts }} parts{% if set.get_num_inventories > 1 %} <span class="label label-primary">v{{ inventory.version }}</span>{% endif %}</a></td>
71 </tr>
72 {% if set.is_figure %}
73 <tr>
74 <td>Found In</td>

/home/nathan/rb/site/lego/templates/sets/includes/render_set_sidebar_top.html

SELECT "blog_article"."id",
       "blog_article"."title",
       "blog_article"."author_id",
       "blog_article"."published_date",
       "blog_article"."is_active",
       "blog_article"."body",
       "blog_article"."meta_description",
       "blog_article"."meta_img",
       "blog_article"."slug",
       "blog_article"."category_id",
       "blog_article"."ads",
       "blog_article"."show_ads_for_set_num",
       "blog_article"."review_for_set_num",
       "blog_article"."status",
       "blog_article"."scheduled_net",
       "blog_article"."ready_for_review_date",
       "blog_article"."is_sensitive",
       "blog_article"."search_vector"
  FROM
"blog_article"
 WHERE
("blog_article"."is_active" AND "blog_article"."review_for_set_num"::text LIKE '%76384-1%')
 ORDER BY
"blog_article"."published_date" ASC
SELECT ••• FROM "blog_article" WHERE ("blog_article"."is_active" AND "blog_article"."review_for_set_num"::text LIKE '%76384-1%') ORDER BY "blog_article"."published_date" ASC
0.32

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/models/sets.py in get_set_review(1393)
  for review in reviews:

119 {% endif %}
120 </table>
121
122 {% with set.get_set_review as review %}
123 {% if review %}
124 <p>See our review:</p>
125 {% include 'blog/includes/render_posts_preview.html' with article=review %}
126 {% endif %}

/home/nathan/rb/site/lego/templates/sets/includes/render_set_sidebar_top.html

SELECT (width*height) AS "area",
       "ads_banner"."id",
       "ads_banner"."width",
       "ads_banner"."height",
       "ads_banner"."start_date",
       "ads_banner"."end_date",
       "ads_banner"."country_code",
       "ads_banner"."html"
  FROM
"ads_banner"
 WHERE
("ads_banner"."start_date" < '2026-01-22T19:45:23.100875+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T19:45:23.100948+00:00'::timestamptz OR "ads_banner"."end_date" IS NULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T19:45:23.100859+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" IS NULL OR "ads_banner"."end_date" > '2026-01-22T19:45:23.101080+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
SELECT ••• FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T19:45:23.100875+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T19:45:23.100948+00:00'::timestamptz OR "ads_banner"."end_date" IS NULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T19:45:23.100859+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" IS NULL OR "ads_banner"."end_date" > '2026-01-22T19:45:23.101080+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
3 similar queries.
2.78

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./ads/templatetags/ads/drawing.py in render_banner(291)
  if not banners:

192 {% endcache %}
193
194 {# cant include banner in cache as it's region specific #}
195 {% render_banner 262 350 0 %}
196
197 {% cache cache_timeout 'set_sidebar_top_other_bit' user.is_authenticated set.id %}
198 {% if request.user.is_authenticated and not set.is_pending %}
199 {% if not set.is_figure %}

/home/nathan/rb/site/lego/templates/sets/includes/render_set_sidebar_top.html

SELECT (width*height) AS "area",
       "ads_banner"."id",
       "ads_banner"."width",
       "ads_banner"."height",
       "ads_banner"."start_date",
       "ads_banner"."end_date",
       "ads_banner"."country_code",
       "ads_banner"."html"
  FROM
"ads_banner"
 WHERE
("ads_banner"."start_date" < '2026-01-22T19:45:23.100875+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T19:45:23.100948+00:00'::timestamptz OR "ads_banner"."end_date" IS NULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T19:45:23.100859+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" IS NULL OR "ads_banner"."end_date" > '2026-01-22T19:45:23.101080+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
 ORDER BY
1 DESC, RANDOM() ASC
 LIMIT
1
SELECT ••• FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T19:45:23.100875+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T19:45:23.100948+00:00'::timestamptz OR "ads_banner"."end_date" IS NULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T19:45:23.100859+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" IS NULL OR "ads_banner"."end_date" > '2026-01-22T19:45:23.101080+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US') ORDER BY 1 DESC, RANDOM() ASC LIMIT 1
3 similar queries.
1.58

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./ads/templatetags/ads/drawing.py in render_banner(298)
  banner = banners.order_by('-area', '?')[0]

192 {% endcache %}
193
194 {# cant include banner in cache as it's region specific #}
195 {% render_banner 262 350 0 %}
196
197 {% cache cache_timeout 'set_sidebar_top_other_bit' user.is_authenticated set.id %}
198 {% if request.user.is_authenticated and not set.is_pending %}
199 {% if not set.is_figure %}

/home/nathan/rb/site/lego/templates/sets/includes/render_set_sidebar_top.html

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector",
       "lego_set"."baseset_ptr_id",
       "lego_set"."start_date",
       "lego_set"."end_date"
  FROM
"lego_set"
 INNER JOIN
"lego_baseset"
    ON
("lego_set"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
"lego_set"."baseset_ptr_id" = 78104
 LIMIT
21
SELECT ••• FROM "lego_set" INNER JOIN "lego_baseset" ON ("lego_set"."baseset_ptr_id" = "lego_baseset"."id") WHERE "lego_set"."baseset_ptr_id" = 78104 LIMIT 21
4 similar queries. Duplicated 2 times.
0.14

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

267 <section class="padding-xxs">
268 <h4 class="text-center">External Sites</h4>
269 <table class="table">
270 <p>This {% if set.set %}Set{% else %}Minifig{% endif %} is known differently at other sites:</p>
271 {% for external_site, set_maps in mappings.items %}
272 <tr>
273 <td>{{ external_site }}</td>
274 <td>

/home/nathan/rb/site/lego/templates/sets/includes/render_set_sidebar_top.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" = 17788
 LIMIT
21
SELECT ••• FROM "auth_user" WHERE "auth_user"."id" = 17788 LIMIT 21
2 similar queries.
0.09

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

5 {% cache cache_timeout 'change_summary' user.is_authenticated set.id 'v3' %}
6 <div><small><i class="fa fa-fw fa-eye" title="Views"></i> {{ set.stats.hits|default:0|floor_100|intcomma }}</small></div>
7 <div><small><i class="fa fa-fw fa-plus" title="Added"></i> {{ changes.added.timestamp }}
8 {% if changes.added.user %}by
9 <a href="{% url 'user_profile' changes.added.user.get_username %}">{{ changes.added.user.get_username }}</a>
10 {% endif %}</small></div>
11 <div><small><i class="fa fa-fw fa-edit" title="Updated"></i> {{ changes.updated.timestamp }}
12 {% if changes.updated.user %}by

/home/nathan/rb/site/lego/templates/sets/includes/render_change_summary.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" = 1
 LIMIT
21
SELECT ••• FROM "auth_user" WHERE "auth_user"."id" = 1 LIMIT 21
2 similar queries.
0.07

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

9 <a href="{% url 'user_profile' changes.added.user.get_username %}">{{ changes.added.user.get_username }}</a>
10 {% endif %}</small></div>
11 <div><small><i class="fa fa-fw fa-edit" title="Updated"></i> {{ changes.updated.timestamp }}
12 {% if changes.updated.user %}by
13 <a href="{% url 'user_profile' changes.updated.user.get_username %}">{{ changes.updated.user.get_username }}</a>
14 {% endif %}</small></div>
15 <div class="mb-10"><small><a href="{% url 'change_log' %}?search_id={{ set.set_num }}">See Change Log for {{ set.set_num }}</a></small></div>
16 {% if user.is_authenticated %}

/home/nathan/rb/site/lego/templates/sets/includes/render_change_summary.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" = 'set')
 LIMIT
21
SELECT ••• FROM "django_content_type" WHERE ("django_content_type"."app_label" = 'lego' AND "django_content_type"."model" = 'set') LIMIT 21
0.12

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_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" = 63 AND "rb_comments_pagelocked"."object_id" = 78104)
 LIMIT
1
SELECT ••• FROM "rb_comments_pagelocked" WHERE ("rb_comments_pagelocked"."content_type_id" = 63 AND "rb_comments_pagelocked"."object_id" = 78104) LIMIT 1
0.08

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_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" = 63 AND "django_comments"."object_pk" = '78104' 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" = 63 AND "django_comments"."object_pk" = '78104' 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
9.34

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_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 ("auth_user_groups"."user_id") AS "_prefetch_related_val_user_id",
       "auth_group"."id",
       "auth_group"."name"
  FROM
"auth_group"
 INNER JOIN
"auth_user_groups"
    ON
("auth_group"."id" = "auth_user_groups"."group_id")
 WHERE
"auth_user_groups"."user_id" IN (322952, 211450)
SELECT ••• FROM "auth_group" INNER JOIN "auth_user_groups" ON ("auth_group"."id" = "auth_user_groups"."group_id") WHERE "auth_user_groups"."user_id" IN (322952, 211450)
2 similar queries. Duplicated 2 times.
0.13

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_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" = 63 AND "django_comments"."object_pk" = '78104' 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" = 63 AND "django_comments"."object_pk" = '78104' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" AND NOT "django_comments"."is_removed")
0.18

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_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" = 63 AND "django_comments"."object_pk" = '78104' 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" = 63 AND "django_comments"."object_pk" = '78104' 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
1.00

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_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 ("auth_user_groups"."user_id") AS "_prefetch_related_val_user_id",
       "auth_group"."id",
       "auth_group"."name"
  FROM
"auth_group"
 INNER JOIN
"auth_user_groups"
    ON
("auth_group"."id" = "auth_user_groups"."group_id")
 WHERE
"auth_user_groups"."user_id" IN (322952, 211450)
SELECT ••• FROM "auth_group" INNER JOIN "auth_user_groups" ON ("auth_group"."id" = "auth_user_groups"."group_id") WHERE "auth_user_groups"."user_id" IN (322952, 211450)
2 similar queries. Duplicated 2 times.
0.13

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_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 "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 322952
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 322952 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
2 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.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",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 322952
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 322952 LIMIT 21
12 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 211450
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 211450 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
2 similar queries.
0.12

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.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",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 211450
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 211450 LIMIT 21
12 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 211450)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 211450) LIMIT 1
2 similar queries. Duplicated 2 times.
0.17

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 211450)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 211450) LIMIT 1
2 similar queries. Duplicated 2 times.
0.13

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector",
       "lego_subset"."baseset_ptr_id",
       "lego_subset"."parent_set_id",
       "lego_theme"."id",
       "lego_theme"."parent_id",
       "lego_theme"."name",
       "lego_theme"."slug",
       "lego_theme"."set_count",
       "lego_theme"."t1_id",
       "lego_theme"."t1_name",
       "lego_theme"."t2_name",
       "lego_theme"."t3_name",
       "lego_theme"."lego_blurb",
       "lego_theme"."banner_img",
       "lego_theme"."descr",
       T5."id",
       T5."parent_id",
       T5."name",
       T5."slug",
       T5."set_count",
       T5."t1_id",
       T5."t1_name",
       T5."t2_name",
       T5."t3_name",
       T5."lego_blurb",
       T5."banner_img",
       T5."descr",
       T6."id",
       T6."parent_id",
       T6."name",
       T6."slug",
       T6."set_count",
       T6."t1_id",
       T6."t1_name",
       T6."t2_name",
       T6."t3_name",
       T6."lego_blurb",
       T6."banner_img",
       T6."descr",
       "lego_setstatstotal"."set_id",
       "lego_setstatstotal"."hits",
       "lego_setstatstotal"."builds",
       "lego_setstatstotal"."likes",
       "lego_setstatstotal"."bi_downloads",
       "lego_setstatstotal"."featured_hits",
       "lego_setstatstotal"."user_hits"
  FROM
"lego_subset"
 INNER JOIN
"lego_baseset"
    ON
("lego_subset"."baseset_ptr_id" = "lego_baseset"."id")
 INNER JOIN
"lego_theme"
    ON
("lego_baseset"."theme_id" = "lego_theme"."id")
  LEFT OUTER JOIN
"lego_theme" T5
    ON
("lego_theme"."parent_id" = T5."id")
  LEFT OUTER JOIN
"lego_theme" T6
    ON
(T5."parent_id" = T6."id")
  LEFT OUTER JOIN
"lego_setstatstotal"
    ON
("lego_baseset"."id" = "lego_setstatstotal"."set_id")
 WHERE
("lego_baseset"."is_active" AND "lego_subset"."parent_set_id" = 78104)
SELECT ••• FROM "lego_subset" INNER JOIN "lego_baseset" ON ("lego_subset"."baseset_ptr_id" = "lego_baseset"."id") INNER JOIN "lego_theme" ON ("lego_baseset"."theme_id" = "lego_theme"."id") LEFT OUTER JOIN "lego_theme" T5 ON ("lego_theme"."parent_id" = T5."id") LEFT OUTER JOIN "lego_theme" T6 ON (T5."parent_id" = T6."id") LEFT OUTER JOIN "lego_setstatstotal" ON ("lego_baseset"."id" = "lego_setstatstotal"."set_id") WHERE ("lego_baseset"."is_active" AND "lego_subset"."parent_set_id" = 78104)
2 similar queries. Duplicated 2 times.
0.50

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in get_alternate_builds_tab_html(283)
  return set.get_alternate_builds_tab_html(context['request'])[0]

/home/nathan/rb/site/./lego/models/sets.py in get_alternate_builds_tab_html(1814)
  alt_build = self.get_alternate_builds(include_subsets=True)

/home/nathan/rb/site/./lego/models/sets.py in get_alternate_builds(1413)
  sets = [self] + list(subsets)

85 <div class="tab-pane in" id="tab_alt_builds">
86 <div id="alt_builds_list">
87 {% if is_crawler %}
88 {% get_alternate_builds_tab_html set %}
89 {% endif %}
90 </div>
91 </div>
92 {% endif %}

/home/nathan/rb/site/lego/templates/sets/includes/render_set_main_tabs.html

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector",
       "lego_bmodel"."baseset_ptr_id",
       "lego_bmodel"."parent_set_id",
       "lego_theme"."id",
       "lego_theme"."parent_id",
       "lego_theme"."name",
       "lego_theme"."slug",
       "lego_theme"."set_count",
       "lego_theme"."t1_id",
       "lego_theme"."t1_name",
       "lego_theme"."t2_name",
       "lego_theme"."t3_name",
       "lego_theme"."lego_blurb",
       "lego_theme"."banner_img",
       "lego_theme"."descr",
       T5."id",
       T5."parent_id",
       T5."name",
       T5."slug",
       T5."set_count",
       T5."t1_id",
       T5."t1_name",
       T5."t2_name",
       T5."t3_name",
       T5."lego_blurb",
       T5."banner_img",
       T5."descr",
       T6."id",
       T6."parent_id",
       T6."name",
       T6."slug",
       T6."set_count",
       T6."t1_id",
       T6."t1_name",
       T6."t2_name",
       T6."t3_name",
       T6."lego_blurb",
       T6."banner_img",
       T6."descr",
       "lego_setstatstotal"."set_id",
       "lego_setstatstotal"."hits",
       "lego_setstatstotal"."builds",
       "lego_setstatstotal"."likes",
       "lego_setstatstotal"."bi_downloads",
       "lego_setstatstotal"."featured_hits",
       "lego_setstatstotal"."user_hits"
  FROM
"lego_bmodel"
 INNER JOIN
"lego_baseset"
    ON
("lego_bmodel"."baseset_ptr_id" = "lego_baseset"."id")
 INNER JOIN
"lego_theme"
    ON
("lego_baseset"."theme_id" = "lego_theme"."id")
  LEFT OUTER JOIN
"lego_theme" T5
    ON
("lego_theme"."parent_id" = T5."id")
  LEFT OUTER JOIN
"lego_theme" T6
    ON
(T5."parent_id" = T6."id")
  LEFT OUTER JOIN
"lego_setstatstotal"
    ON
("lego_baseset"."id" = "lego_setstatstotal"."set_id")
 WHERE
("lego_baseset"."is_active" AND "lego_bmodel"."parent_set_id" = 78104)
SELECT ••• FROM "lego_bmodel" INNER JOIN "lego_baseset" ON ("lego_bmodel"."baseset_ptr_id" = "lego_baseset"."id") INNER JOIN "lego_theme" ON ("lego_baseset"."theme_id" = "lego_theme"."id") LEFT OUTER JOIN "lego_theme" T5 ON ("lego_theme"."parent_id" = T5."id") LEFT OUTER JOIN "lego_theme" T6 ON (T5."parent_id" = T6."id") LEFT OUTER JOIN "lego_setstatstotal" ON ("lego_baseset"."id" = "lego_setstatstotal"."set_id") WHERE ("lego_baseset"."is_active" AND "lego_bmodel"."parent_set_id" = 78104)
0.76

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in get_alternate_builds_tab_html(283)
  return set.get_alternate_builds_tab_html(context['request'])[0]

/home/nathan/rb/site/./lego/models/sets.py in get_alternate_builds_tab_html(1817)
  b_models = self.get_b_models()

/home/nathan/rb/site/./lego/models/sets.py in get_b_models(1454)
  sets = sorted(sets, key=lambda x: x.set_num_sorted)

85 <div class="tab-pane in" id="tab_alt_builds">
86 <div id="alt_builds_list">
87 {% if is_crawler %}
88 {% get_alternate_builds_tab_html set %}
89 {% endif %}
90 </div>
91 </div>
92 {% endif %}

/home/nathan/rb/site/lego/templates/sets/includes/render_set_main_tabs.html

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector",
       "lego_subset"."baseset_ptr_id",
       "lego_subset"."parent_set_id",
       "lego_theme"."id",
       "lego_theme"."parent_id",
       "lego_theme"."name",
       "lego_theme"."slug",
       "lego_theme"."set_count",
       "lego_theme"."t1_id",
       "lego_theme"."t1_name",
       "lego_theme"."t2_name",
       "lego_theme"."t3_name",
       "lego_theme"."lego_blurb",
       "lego_theme"."banner_img",
       "lego_theme"."descr",
       T5."id",
       T5."parent_id",
       T5."name",
       T5."slug",
       T5."set_count",
       T5."t1_id",
       T5."t1_name",
       T5."t2_name",
       T5."t3_name",
       T5."lego_blurb",
       T5."banner_img",
       T5."descr",
       T6."id",
       T6."parent_id",
       T6."name",
       T6."slug",
       T6."set_count",
       T6."t1_id",
       T6."t1_name",
       T6."t2_name",
       T6."t3_name",
       T6."lego_blurb",
       T6."banner_img",
       T6."descr",
       "lego_setstatstotal"."set_id",
       "lego_setstatstotal"."hits",
       "lego_setstatstotal"."builds",
       "lego_setstatstotal"."likes",
       "lego_setstatstotal"."bi_downloads",
       "lego_setstatstotal"."featured_hits",
       "lego_setstatstotal"."user_hits"
  FROM
"lego_subset"
 INNER JOIN
"lego_baseset"
    ON
("lego_subset"."baseset_ptr_id" = "lego_baseset"."id")
 INNER JOIN
"lego_theme"
    ON
("lego_baseset"."theme_id" = "lego_theme"."id")
  LEFT OUTER JOIN
"lego_theme" T5
    ON
("lego_theme"."parent_id" = T5."id")
  LEFT OUTER JOIN
"lego_theme" T6
    ON
(T5."parent_id" = T6."id")
  LEFT OUTER JOIN
"lego_setstatstotal"
    ON
("lego_baseset"."id" = "lego_setstatstotal"."set_id")
 WHERE
("lego_baseset"."is_active" AND "lego_subset"."parent_set_id" = 78104)
SELECT ••• FROM "lego_subset" INNER JOIN "lego_baseset" ON ("lego_subset"."baseset_ptr_id" = "lego_baseset"."id") INNER JOIN "lego_theme" ON ("lego_baseset"."theme_id" = "lego_theme"."id") LEFT OUTER JOIN "lego_theme" T5 ON ("lego_theme"."parent_id" = T5."id") LEFT OUTER JOIN "lego_theme" T6 ON (T5."parent_id" = T6."id") LEFT OUTER JOIN "lego_setstatstotal" ON ("lego_baseset"."id" = "lego_setstatstotal"."set_id") WHERE ("lego_baseset"."is_active" AND "lego_subset"."parent_set_id" = 78104)
2 similar queries. Duplicated 2 times.
0.44

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in get_alternate_builds_tab_html(283)
  return set.get_alternate_builds_tab_html(context['request'])[0]

/home/nathan/rb/site/./lego/models/sets.py in get_alternate_builds_tab_html(1818)
  subsets = self.get_sub_sets()

/home/nathan/rb/site/./lego/models/sets.py in get_sub_sets(1459)
  sets = sorted(sets, key=lambda x: x.set_num_sorted)

85 <div class="tab-pane in" id="tab_alt_builds">
86 <div id="alt_builds_list">
87 {% if is_crawler %}
88 {% get_alternate_builds_tab_html set %}
89 {% endif %}
90 </div>
91 </div>
92 {% endif %}

/home/nathan/rb/site/lego/templates/sets/includes/render_set_main_tabs.html

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector",
       "lego_moc"."baseset_ptr_id",
       "lego_moc"."designer_id",
       "lego_moc"."detail_url",
       "lego_moc"."gallery_url",
       "lego_moc"."bi_url",
       "lego_moc"."cad_url",
       "lego_moc"."video",
       "lego_moc"."bi_type",
       "lego_moc"."is_for_sale",
       "lego_moc"."is_hosted",
       "lego_moc"."cost",
       "lego_moc"."currency_id",
       "lego_moc"."parent_set_1_id",
       "lego_moc"."parent_set_2_id",
       "lego_moc"."parent_set_3_id",
       "lego_moc"."parent_set_4_id",
       "lego_moc"."parent_set_5_id",
       "lego_moc"."parent_inv_1_id",
       "lego_moc"."parent_inv_2_id",
       "lego_moc"."parent_inv_3_id",
       "lego_moc"."parent_inv_4_id",
       "lego_moc"."parent_inv_5_id",
       "lego_moc"."parent_type",
       "lego_moc"."is_allowed_premium",
       "lego_moc"."is_locked",
       "lego_moc"."last_social_post",
       "lego_moc"."is_review_requested",
       EXISTS(
        SELECT 1 AS "a"
          FROM
"lego_mocswitherrors" U0
         WHERE
U0."moc_id" = ("lego_moc"."baseset_ptr_id")
         LIMIT
1
       ) AS "errors_exists",
       "lego_theme"."id",
       "lego_theme"."parent_id",
       "lego_theme"."name",
       "lego_theme"."slug",
       "lego_theme"."set_count",
       "lego_theme"."t1_id",
       "lego_theme"."t1_name",
       "lego_theme"."t2_name",
       "lego_theme"."t3_name",
       "lego_theme"."lego_blurb",
       "lego_theme"."banner_img",
       "lego_theme"."descr",
       T6."id",
       T6."parent_id",
       T6."name",
       T6."slug",
       T6."set_count",
       T6."t1_id",
       T6."t1_name",
       T6."t2_name",
       T6."t3_name",
       T6."lego_blurb",
       T6."banner_img",
       T6."descr",
       T7."id",
       T7."parent_id",
       T7."name",
       T7."slug",
       T7."set_count",
       T7."t1_id",
       T7."t1_name",
       T7."t2_name",
       T7."t3_name",
       T7."lego_blurb",
       T7."banner_img",
       T7."descr",
       "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",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors",
       "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",
       T3."id",
       T3."set_num",
       T3."name",
       T3."year",
       T3."theme_id",
       T3."set_type",
       T3."num_parts",
       T3."default_inventory_id",
       T3."is_active",
       T3."is_accessory",
       T3."added_dt",
       T3."added_by_id",
       T3."last_modified_dt",
       T3."last_modified_by_id",
       T3."last_checked_for_bi",
       T3."descr",
       T3."primary_photo_id",
       T3."is_gear",
       T3."is_book",
       T3."search_vector",
       T3."mfhash_vector",
       "lego_setstatstotal"."set_id",
       "lego_setstatstotal"."hits",
       "lego_setstatstotal"."builds",
       "lego_setstatstotal"."likes",
       "lego_setstatstotal"."bi_downloads",
       "lego_setstatstotal"."featured_hits",
       "lego_setstatstotal"."user_hits"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 INNER JOIN
"lego_baseset" T3
    ON
("lego_moc"."parent_set_1_id" = T3."id")
 INNER JOIN
"lego_theme"
    ON
("lego_baseset"."theme_id" = "lego_theme"."id")
  LEFT OUTER JOIN
"lego_theme" T6
    ON
("lego_theme"."parent_id" = T6."id")
  LEFT OUTER JOIN
"lego_theme" T7
    ON
(T6."parent_id" = T7."id")
 INNER JOIN
"lego_designer"
    ON
("lego_moc"."designer_id" = "lego_designer"."user_ptr_id")
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_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
"lego_setstatstotal"
    ON
("lego_baseset"."id" = "lego_setstatstotal"."set_id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."parent_set_1_id" IN (78104) AND "lego_moc"."parent_set_2_id" IS NULL AND "lego_moc"."parent_type" = 'A' AND NOT (EXISTS(SELECT 1 AS "a" FROM "lego_mocswitherrors" U0 WHERE U0."moc_id" = ("lego_moc"."baseset_ptr_id") LIMIT 1)))
 ORDER BY
"lego_setstatstotal"."likes" DESC
SELECT ••• FROM "lego_mocswitherrors" U0 WHERE U0."moc_id" = ("lego_moc"."baseset_ptr_id") LIMIT 1) AS "errors_exists", "lego_theme"."id", "lego_theme"."parent_id", "lego_theme"."name", "lego_theme"."slug", "lego_theme"."set_count", "lego_theme"."t1_id", "lego_theme"."t1_name", "lego_theme"."t2_name", "lego_theme"."t3_name", "lego_theme"."lego_blurb", "lego_theme"."banner_img", "lego_theme"."descr", T6."id", T6."parent_id", T6."name", T6."slug", T6."set_count", T6."t1_id", T6."t1_name", T6."t2_name", T6."t3_name", T6."lego_blurb", T6."banner_img", T6."descr", T7."id", T7."parent_id", T7."name", T7."slug", T7."set_count", T7."t1_id", T7."t1_name", T7."t2_name", T7."t3_name", T7."lego_blurb", T7."banner_img", T7."descr", "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", "lego_designer"."user_ptr_id", "lego_designer"."auto_approve", "lego_designer"."num_auto_approved", "lego_designer"."last_checked_for_moc_errors", "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", T3."id", T3."set_num", T3."name", T3."year", T3."theme_id", T3."set_type", T3."num_parts", T3."default_inventory_id", T3."is_active", T3."is_accessory", T3."added_dt", T3."added_by_id", T3."last_modified_dt", T3."last_modified_by_id", T3."last_checked_for_bi", T3."descr", T3."primary_photo_id", T3."is_gear", T3."is_book", T3."search_vector", T3."mfhash_vector", "lego_setstatstotal"."set_id", "lego_setstatstotal"."hits", "lego_setstatstotal"."builds", "lego_setstatstotal"."likes", "lego_setstatstotal"."bi_downloads", "lego_setstatstotal"."featured_hits", "lego_setstatstotal"."user_hits" FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") INNER JOIN "lego_baseset" T3 ON ("lego_moc"."parent_set_1_id" = T3."id") INNER JOIN "lego_theme" ON ("lego_baseset"."theme_id" = "lego_theme"."id") LEFT OUTER JOIN "lego_theme" T6 ON ("lego_theme"."parent_id" = T6."id") LEFT OUTER JOIN "lego_theme" T7 ON (T6."parent_id" = T7."id") INNER JOIN "lego_designer" ON ("lego_moc"."designer_id" = "lego_designer"."user_ptr_id") INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_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 "lego_setstatstotal" ON ("lego_baseset"."id" = "lego_setstatstotal"."set_id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."parent_set_1_id" IN (78104) AND "lego_moc"."parent_set_2_id" IS NULL AND "lego_moc"."parent_type" = 'A' AND NOT (EXISTS(SELECT ••• FROM "lego_mocswitherrors" U0 WHERE U0."moc_id" = ("lego_moc"."baseset_ptr_id") LIMIT 1))) ORDER BY "lego_setstatstotal"."likes" DESC
2.08

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in get_alternate_builds_tab_html(283)
  return set.get_alternate_builds_tab_html(context['request'])[0]

/home/nathan/rb/site/./lego/models/sets.py in get_alternate_builds_tab_html(1820)
  if len(alt_build) > 0:

85 <div class="tab-pane in" id="tab_alt_builds">
86 <div id="alt_builds_list">
87 {% if is_crawler %}
88 {% get_alternate_builds_tab_html set %}
89 {% endif %}
90 </div>
91 </div>
92 {% endif %}

/home/nathan/rb/site/lego/templates/sets/includes/render_set_main_tabs.html

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector",
       "lego_moc"."baseset_ptr_id",
       "lego_moc"."designer_id",
       "lego_moc"."detail_url",
       "lego_moc"."gallery_url",
       "lego_moc"."bi_url",
       "lego_moc"."cad_url",
       "lego_moc"."video",
       "lego_moc"."bi_type",
       "lego_moc"."is_for_sale",
       "lego_moc"."is_hosted",
       "lego_moc"."cost",
       "lego_moc"."currency_id",
       "lego_moc"."parent_set_1_id",
       "lego_moc"."parent_set_2_id",
       "lego_moc"."parent_set_3_id",
       "lego_moc"."parent_set_4_id",
       "lego_moc"."parent_set_5_id",
       "lego_moc"."parent_inv_1_id",
       "lego_moc"."parent_inv_2_id",
       "lego_moc"."parent_inv_3_id",
       "lego_moc"."parent_inv_4_id",
       "lego_moc"."parent_inv_5_id",
       "lego_moc"."parent_type",
       "lego_moc"."is_allowed_premium",
       "lego_moc"."is_locked",
       "lego_moc"."last_social_post",
       "lego_moc"."is_review_requested",
       "lego_theme"."id",
       "lego_theme"."parent_id",
       "lego_theme"."name",
       "lego_theme"."slug",
       "lego_theme"."set_count",
       "lego_theme"."t1_id",
       "lego_theme"."t1_name",
       "lego_theme"."t2_name",
       "lego_theme"."t3_name",
       "lego_theme"."lego_blurb",
       "lego_theme"."banner_img",
       "lego_theme"."descr",
       T9."id",
       T9."parent_id",
       T9."name",
       T9."slug",
       T9."set_count",
       T9."t1_id",
       T9."t1_name",
       T9."t2_name",
       T9."t3_name",
       T9."lego_blurb",
       T9."banner_img",
       T9."descr",
       T10."id",
       T10."parent_id",
       T10."name",
       T10."slug",
       T10."set_count",
       T10."t1_id",
       T10."t1_name",
       T10."t2_name",
       T10."t3_name",
       T10."lego_blurb",
       T10."banner_img",
       T10."descr",
       "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",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors",
       "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",
       T4."id",
       T4."set_num",
       T4."name",
       T4."year",
       T4."theme_id",
       T4."set_type",
       T4."num_parts",
       T4."default_inventory_id",
       T4."is_active",
       T4."is_accessory",
       T4."added_dt",
       T4."added_by_id",
       T4."last_modified_dt",
       T4."last_modified_by_id",
       T4."last_checked_for_bi",
       T4."descr",
       T4."primary_photo_id",
       T4."is_gear",
       T4."is_book",
       T4."search_vector",
       T4."mfhash_vector",
       "lego_setstatstotal"."set_id",
       "lego_setstatstotal"."hits",
       "lego_setstatstotal"."builds",
       "lego_setstatstotal"."likes",
       "lego_setstatstotal"."bi_downloads",
       "lego_setstatstotal"."featured_hits",
       "lego_setstatstotal"."user_hits"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
  LEFT OUTER JOIN
"lego_baseset" T4
    ON
("lego_moc"."parent_set_1_id" = T4."id")
 INNER JOIN
"lego_theme"
    ON
("lego_baseset"."theme_id" = "lego_theme"."id")
  LEFT OUTER JOIN
"lego_theme" T9
    ON
("lego_theme"."parent_id" = T9."id")
  LEFT OUTER JOIN
"lego_theme" T10
    ON
(T9."parent_id" = T10."id")
 INNER JOIN
"lego_designer"
    ON
("lego_moc"."designer_id" = "lego_designer"."user_ptr_id")
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_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
"lego_setstatstotal"
    ON
("lego_baseset"."id" = "lego_setstatstotal"."set_id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."parent_set_2_id" IS NOT NULL AND "lego_moc"."parent_type" = 'A' AND ("lego_moc"."parent_set_1_id" = 78104 OR "lego_moc"."parent_set_2_id" = 78104 OR "lego_moc"."parent_set_3_id" = 78104 OR "lego_moc"."parent_set_4_id" = 78104 OR "lego_moc"."parent_set_5_id" = 78104))
 ORDER BY
"lego_setstatstotal"."likes" DESC
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") LEFT OUTER JOIN "lego_baseset" T4 ON ("lego_moc"."parent_set_1_id" = T4."id") INNER JOIN "lego_theme" ON ("lego_baseset"."theme_id" = "lego_theme"."id") LEFT OUTER JOIN "lego_theme" T9 ON ("lego_theme"."parent_id" = T9."id") LEFT OUTER JOIN "lego_theme" T10 ON (T9."parent_id" = T10."id") INNER JOIN "lego_designer" ON ("lego_moc"."designer_id" = "lego_designer"."user_ptr_id") INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_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 "lego_setstatstotal" ON ("lego_baseset"."id" = "lego_setstatstotal"."set_id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."parent_set_2_id" IS NOT NULL AND "lego_moc"."parent_type" = 'A' AND ("lego_moc"."parent_set_1_id" = 78104 OR "lego_moc"."parent_set_2_id" = 78104 OR "lego_moc"."parent_set_3_id" = 78104 OR "lego_moc"."parent_set_4_id" = 78104 OR "lego_moc"."parent_set_5_id" = 78104)) ORDER BY "lego_setstatstotal"."likes" DESC
1.33

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in get_alternate_builds_tab_html(283)
  return set.get_alternate_builds_tab_html(context['request'])[0]

/home/nathan/rb/site/./lego/models/sets.py in get_alternate_builds_tab_html(1822)
  if len(partial_alt_build) > 0:

85 <div class="tab-pane in" id="tab_alt_builds">
86 <div id="alt_builds_list">
87 {% if is_crawler %}
88 {% get_alternate_builds_tab_html set %}
89 {% endif %}
90 </div>
91 </div>
92 {% endif %}

/home/nathan/rb/site/lego/templates/sets/includes/render_set_main_tabs.html

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector",
       "lego_moc"."baseset_ptr_id",
       "lego_moc"."designer_id",
       "lego_moc"."detail_url",
       "lego_moc"."gallery_url",
       "lego_moc"."bi_url",
       "lego_moc"."cad_url",
       "lego_moc"."video",
       "lego_moc"."bi_type",
       "lego_moc"."is_for_sale",
       "lego_moc"."is_hosted",
       "lego_moc"."cost",
       "lego_moc"."currency_id",
       "lego_moc"."parent_set_1_id",
       "lego_moc"."parent_set_2_id",
       "lego_moc"."parent_set_3_id",
       "lego_moc"."parent_set_4_id",
       "lego_moc"."parent_set_5_id",
       "lego_moc"."parent_inv_1_id",
       "lego_moc"."parent_inv_2_id",
       "lego_moc"."parent_inv_3_id",
       "lego_moc"."parent_inv_4_id",
       "lego_moc"."parent_inv_5_id",
       "lego_moc"."parent_type",
       "lego_moc"."is_allowed_premium",
       "lego_moc"."is_locked",
       "lego_moc"."last_social_post",
       "lego_moc"."is_review_requested",
       "lego_theme"."id",
       "lego_theme"."parent_id",
       "lego_theme"."name",
       "lego_theme"."slug",
       "lego_theme"."set_count",
       "lego_theme"."t1_id",
       "lego_theme"."t1_name",
       "lego_theme"."t2_name",
       "lego_theme"."t3_name",
       "lego_theme"."lego_blurb",
       "lego_theme"."banner_img",
       "lego_theme"."descr",
       T9."id",
       T9."parent_id",
       T9."name",
       T9."slug",
       T9."set_count",
       T9."t1_id",
       T9."t1_name",
       T9."t2_name",
       T9."t3_name",
       T9."lego_blurb",
       T9."banner_img",
       T9."descr",
       T10."id",
       T10."parent_id",
       T10."name",
       T10."slug",
       T10."set_count",
       T10."t1_id",
       T10."t1_name",
       T10."t2_name",
       T10."t3_name",
       T10."lego_blurb",
       T10."banner_img",
       T10."descr",
       "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",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors",
       "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",
       T3."id",
       T3."set_num",
       T3."name",
       T3."year",
       T3."theme_id",
       T3."set_type",
       T3."num_parts",
       T3."default_inventory_id",
       T3."is_active",
       T3."is_accessory",
       T3."added_dt",
       T3."added_by_id",
       T3."last_modified_dt",
       T3."last_modified_by_id",
       T3."last_checked_for_bi",
       T3."descr",
       T3."primary_photo_id",
       T3."is_gear",
       T3."is_book",
       T3."search_vector",
       T3."mfhash_vector",
       "lego_setstatstotal"."set_id",
       "lego_setstatstotal"."hits",
       "lego_setstatstotal"."builds",
       "lego_setstatstotal"."likes",
       "lego_setstatstotal"."bi_downloads",
       "lego_setstatstotal"."featured_hits",
       "lego_setstatstotal"."user_hits"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
  LEFT OUTER JOIN
"lego_baseset" T3
    ON
("lego_moc"."parent_set_1_id" = T3."id")
 INNER JOIN
"lego_theme"
    ON
("lego_baseset"."theme_id" = "lego_theme"."id")
  LEFT OUTER JOIN
"lego_theme" T9
    ON
("lego_theme"."parent_id" = T9."id")
  LEFT OUTER JOIN
"lego_theme" T10
    ON
(T9."parent_id" = T10."id")
 INNER JOIN
"lego_designer"
    ON
("lego_moc"."designer_id" = "lego_designer"."user_ptr_id")
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_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
"lego_setstatstotal"
    ON
("lego_baseset"."id" = "lego_setstatstotal"."set_id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."parent_type" = 'M' AND ("lego_moc"."parent_set_1_id" = 78104 OR "lego_moc"."parent_set_2_id" = 78104 OR "lego_moc"."parent_set_3_id" = 78104 OR "lego_moc"."parent_set_4_id" = 78104 OR "lego_moc"."parent_set_5_id" = 78104))
 ORDER BY
"lego_setstatstotal"."likes" DESC
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") LEFT OUTER JOIN "lego_baseset" T3 ON ("lego_moc"."parent_set_1_id" = T3."id") INNER JOIN "lego_theme" ON ("lego_baseset"."theme_id" = "lego_theme"."id") LEFT OUTER JOIN "lego_theme" T9 ON ("lego_theme"."parent_id" = T9."id") LEFT OUTER JOIN "lego_theme" T10 ON (T9."parent_id" = T10."id") INNER JOIN "lego_designer" ON ("lego_moc"."designer_id" = "lego_designer"."user_ptr_id") INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_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 "lego_setstatstotal" ON ("lego_baseset"."id" = "lego_setstatstotal"."set_id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."parent_type" = 'M' AND ("lego_moc"."parent_set_1_id" = 78104 OR "lego_moc"."parent_set_2_id" = 78104 OR "lego_moc"."parent_set_3_id" = 78104 OR "lego_moc"."parent_set_4_id" = 78104 OR "lego_moc"."parent_set_5_id" = 78104)) ORDER BY "lego_setstatstotal"."likes" DESC
2.24

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in get_alternate_builds_tab_html(283)
  return set.get_alternate_builds_tab_html(context['request'])[0]

/home/nathan/rb/site/./lego/models/sets.py in get_alternate_builds_tab_html(1824)
  if len(moc_mods) > 0:

85 <div class="tab-pane in" id="tab_alt_builds">
86 <div id="alt_builds_list">
87 {% if is_crawler %}
88 {% get_alternate_builds_tab_html set %}
89 {% endif %}
90 </div>
91 </div>
92 {% endif %}

/home/nathan/rb/site/lego/templates/sets/includes/render_set_main_tabs.html

SELECT DISTINCT ("taggit_taggeditem"."object_id") AS "_prefetch_related_val",
       "taggit_tag"."id",
       "taggit_tag"."name",
       "taggit_tag"."slug"
  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")
 WHERE
("django_content_type"."app_label" = 'lego' AND "django_content_type"."model" = 'moc' AND "taggit_taggeditem"."object_id" IN (168815, 141008, 189653, 97782, 93114, 248027))
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") WHERE ("django_content_type"."app_label" = 'lego' AND "django_content_type"."model" = 'moc' AND "taggit_taggeditem"."object_id" IN (168815, 141008, 189653, 97782, 93114, 248027))
0.53

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in get_alternate_builds_tab_html(283)
  return set.get_alternate_builds_tab_html(context['request'])[0]

/home/nathan/rb/site/./lego/models/sets.py in get_alternate_builds_tab_html(1824)
  if len(moc_mods) > 0:

85 <div class="tab-pane in" id="tab_alt_builds">
86 <div id="alt_builds_list">
87 {% if is_crawler %}
88 {% get_alternate_builds_tab_html set %}
89 {% endif %}
90 </div>
91 </div>
92 {% endif %}

/home/nathan/rb/site/lego/templates/sets/includes/render_set_main_tabs.html

SELECT 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 146468
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 146468 LIMIT 1
0.10

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in get_alternate_builds_tab_html(283)
  return set.get_alternate_builds_tab_html(context['request'])[0]

/home/nathan/rb/site/./lego/models/sets.py in get_alternate_builds_tab_html(1850)
  html = render_to_string('sets/render_alt_build_list.html', context, request=request)

/home/nathan/rb/site/./lego/models/mocs.py in is_alternate(204)
  if not self.is_pending and MocsWithErrors.objects.filter(moc=self).exists():

181 {% endwith %}
182 {% else %}
183 {# repeat alt label check here so dont have to recalculate discount #}
184 {% if set.is_moc and set.get_moc.is_alternate %}
185 <span class="label label-altbuild size-10" title="Alternate Build MOC{% if set.get_moc.parent_set_2 %}{% else %} - only uses parts from {{ set.get_moc.parent_set_1 }}{% endif %}"><i class="fa fa-fw fa-retweet text-white"></i> <span class="hidden-xs"> Alt</span></span>
186 {% endif %}
187 {% endif %}
188

/home/nathan/rb/site/lego/templates/sets/render_set.html

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 465134)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 465134) LIMIT 21
2 similar queries.
0.17

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in get_alternate_builds_tab_html(283)
  return set.get_alternate_builds_tab_html(context['request'])[0]

/home/nathan/rb/site/./lego/models/sets.py in get_alternate_builds_tab_html(1850)
  html = render_to_string('sets/render_alt_build_list.html', context, request=request)

/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
  return self.get_privacy_option('is_public_plan')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
  options = self.get_privacy_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
  options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)

87 <div class="clearfix trunc mb-6 size-12">
88 {% if set|get_class == 'Moc' %}
89 By <a href="{% url 'user_mocs' set.designer.username %}" class="js-hover-card" data-hover="{% url 'user_card' set.designer.username %}">{{ set.designer.username }}</a>
90 {% if not set.designer.plan.is_free and set.designer.to_proxy.is_public_plan %}{{ set.designer.to_proxy.get_plan_html }}{% endif %}
91 {% elif set|get_class == 'PendingMoc' and set.pendingmoc %}
92 By <a href="{% url 'user_mocs' set.pendingmoc.designer.username %}" class="js-hover-card" data-hover="{% url 'user_card' set.pendingmoc.designer.username %}">{{ set.pendingmoc.designer.username }}</a>
93 {% elif set.moc and set.moc.designer.username %}
94 By <a href="{% url 'user_mocs' set.moc.designer.username %}">{{ set.moc.designer.username }}</a>

/home/nathan/rb/site/lego/templates/sets/render_set.html

SELECT "lego_designerdiscount"."id",
       "lego_designerdiscount"."designer_id",
       "lego_designerdiscount"."name",
       "lego_designerdiscount"."start_date",
       "lego_designerdiscount"."end_date",
       "lego_designerdiscount"."discount_pct",
       "lego_designerdiscount"."mocs"
  FROM
"lego_designerdiscount"
 WHERE
("lego_designerdiscount"."end_date" > '2026-01-22T19:45:23.175595+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T19:45:23.175594+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '93114')
 ORDER BY
"lego_designerdiscount"."start_date" DESC, "lego_designerdiscount"."end_date" DESC
 LIMIT
1
SELECT ••• FROM "lego_designerdiscount" WHERE ("lego_designerdiscount"."end_date" > '2026-01-22T19:45:23.175595+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T19:45:23.175594+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '93114') ORDER BY "lego_designerdiscount"."start_date" DESC, "lego_designerdiscount"."end_date" DESC LIMIT 1
2 similar queries.
0.44

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in get_alternate_builds_tab_html(283)
  return set.get_alternate_builds_tab_html(context['request'])[0]

/home/nathan/rb/site/./lego/models/sets.py in get_alternate_builds_tab_html(1850)
  html = render_to_string('sets/render_alt_build_list.html', context, request=request)

/home/nathan/rb/site/./lego/models/mocs.py in get_discount_pct(362)
  discount = DesignerDiscount.get_moc_discount(self.id)

/home/nathan/rb/site/./lego/models/designers.py in get_moc_discount(440)
  return cls.get_active_discounts().filter(mocs__contains=int(moc_id)).first()

166
167 {# Premium MOCs #}
168 {% if set.is_moc and set.get_moc.is_for_sale %}
169 {% with set.get_discount_pct as discount_pct %}
170 {% if discount_pct %}
171 <span class="label-group">
172 <span class="label label-dark-blue size-10" title="Premium MOC"><i class="fa fa-fw fa-bolt text-yellow"></i><span class="hidden-xs hidden-sm"> Prem</span></span>
173 <span class="label label-danger size-10">{{ discount_pct }}</span>

/home/nathan/rb/site/lego/templates/sets/render_set.html

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 791975)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 791975) LIMIT 21
2 similar queries.
0.28

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in get_alternate_builds_tab_html(283)
  return set.get_alternate_builds_tab_html(context['request'])[0]

/home/nathan/rb/site/./lego/models/sets.py in get_alternate_builds_tab_html(1850)
  html = render_to_string('sets/render_alt_build_list.html', context, request=request)

/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
  return self.get_privacy_option('is_public_plan')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
  options = self.get_privacy_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
  options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)

87 <div class="clearfix trunc mb-6 size-12">
88 {% if set|get_class == 'Moc' %}
89 By <a href="{% url 'user_mocs' set.designer.username %}" class="js-hover-card" data-hover="{% url 'user_card' set.designer.username %}">{{ set.designer.username }}</a>
90 {% if not set.designer.plan.is_free and set.designer.to_proxy.is_public_plan %}{{ set.designer.to_proxy.get_plan_html }}{% endif %}
91 {% elif set|get_class == 'PendingMoc' and set.pendingmoc %}
92 By <a href="{% url 'user_mocs' set.pendingmoc.designer.username %}" class="js-hover-card" data-hover="{% url 'user_card' set.pendingmoc.designer.username %}">{{ set.pendingmoc.designer.username }}</a>
93 {% elif set.moc and set.moc.designer.username %}
94 By <a href="{% url 'user_mocs' set.moc.designer.username %}">{{ set.moc.designer.username }}</a>

/home/nathan/rb/site/lego/templates/sets/render_set.html

SELECT "lego_designerdiscount"."id",
       "lego_designerdiscount"."designer_id",
       "lego_designerdiscount"."name",
       "lego_designerdiscount"."start_date",
       "lego_designerdiscount"."end_date",
       "lego_designerdiscount"."discount_pct",
       "lego_designerdiscount"."mocs"
  FROM
"lego_designerdiscount"
 WHERE
("lego_designerdiscount"."end_date" > '2026-01-22T19:45:23.181569+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T19:45:23.181568+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '248027')
 ORDER BY
"lego_designerdiscount"."start_date" DESC, "lego_designerdiscount"."end_date" DESC
 LIMIT
1
SELECT ••• FROM "lego_designerdiscount" WHERE ("lego_designerdiscount"."end_date" > '2026-01-22T19:45:23.181569+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T19:45:23.181568+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '248027') ORDER BY "lego_designerdiscount"."start_date" DESC, "lego_designerdiscount"."end_date" DESC LIMIT 1
2 similar queries.
0.33

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in get_alternate_builds_tab_html(283)
  return set.get_alternate_builds_tab_html(context['request'])[0]

/home/nathan/rb/site/./lego/models/sets.py in get_alternate_builds_tab_html(1850)
  html = render_to_string('sets/render_alt_build_list.html', context, request=request)

/home/nathan/rb/site/./lego/models/mocs.py in get_discount_pct(362)
  discount = DesignerDiscount.get_moc_discount(self.id)

/home/nathan/rb/site/./lego/models/designers.py in get_moc_discount(440)
  return cls.get_active_discounts().filter(mocs__contains=int(moc_id)).first()

166
167 {# Premium MOCs #}
168 {% if set.is_moc and set.get_moc.is_for_sale %}
169 {% with set.get_discount_pct as discount_pct %}
170 {% if discount_pct %}
171 <span class="label-group">
172 <span class="label label-dark-blue size-10" title="Premium MOC"><i class="fa fa-fw fa-bolt text-yellow"></i><span class="hidden-xs hidden-sm"> Prem</span></span>
173 <span class="label label-danger size-10">{{ discount_pct }}</span>

/home/nathan/rb/site/lego/templates/sets/render_set.html

SELECT "lego_setinstructions"."id",
       "lego_setinstructions"."set_id",
       "lego_setinstructions"."timestamp",
       "lego_setinstructions"."descr",
       "lego_setinstructions"."file_size",
       "lego_setinstructions"."preview_img",
       "lego_setinstructions"."is_alt",
       "lego_setinstructions"."lego_url",
       "lego_setinstructions"."file_id"
  FROM
"lego_setinstructions"
 WHERE
"lego_setinstructions"."set_id" = 78104
 ORDER BY
"lego_setinstructions"."descr" ASC
SELECT ••• FROM "lego_setinstructions" WHERE "lego_setinstructions"."set_id" = 78104 ORDER BY "lego_setinstructions"."descr" ASC
0.18

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

7 <p>The known <a href="{% url 'set_instructions' set.set_num %}">building instruction files for {{ set }}</a> are listed below.</p>
8
9 <div class="display-flex">
10 {% for bi in set.instructions.all %}
11 <div class="xflex-1 xcol-sm-3 mb-10 min-height-250 p-10" style="width:25%">
12 <a href="{{ bi.get_download_url }}" target="_blank">
13 {% thumbs bi.get_preview_img settings.THUMBS_OPTIONS_SET_BI_TILE as img %}
14 <img class="img-responsive" {% if not part.no_lazy %}src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-{% endif %}src="{% cachebuster img.url %}" width="{{ img.width }}" height="{{ img.height }}" title="{{ bi.descr }}" alt="LEGO Building Instructions for {{ set }} - {{ bi.descr }}">

/home/nathan/rb/site/lego/templates/sets/includes/render_set_bi_list.html

SELECT "lego_files_s3file"."id",
       "lego_files_s3file"."file_size",
       "lego_files_s3file"."last_modified",
       "lego_files_s3file"."aws_mi_file",
       "lego_files_s3file"."linode_si_file",
       "lego_files_s3file"."linode_mi_file",
       "lego_files_s3file"."linode_media_file"
  FROM
"lego_files_s3file"
 WHERE
"lego_files_s3file"."id" = 88110
 LIMIT
21
SELECT ••• FROM "lego_files_s3file" WHERE "lego_files_s3file"."id" = 88110 LIMIT 21
2 similar queries.
0.22

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/models/sets.py in get_download_url(3084)
  if self.file:

9 <div class="display-flex">
10 {% for bi in set.instructions.all %}
11 <div class="xflex-1 xcol-sm-3 mb-10 min-height-250 p-10" style="width:25%">
12 <a href="{{ bi.get_download_url }}" target="_blank">
13 {% thumbs bi.get_preview_img settings.THUMBS_OPTIONS_SET_BI_TILE as img %}
14 <img class="img-responsive" {% if not part.no_lazy %}src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-{% endif %}src="{% cachebuster img.url %}" width="{{ img.width }}" height="{{ img.height }}" title="{{ bi.descr }}" alt="LEGO Building Instructions for {{ set }} - {{ bi.descr }}">
15 <br><span class="" title="{{ bi.descr }}">{{ bi.descr }}</span>
16 {% if bi.is_alt %}

/home/nathan/rb/site/lego/templates/sets/includes/render_set_bi_list.html

SELECT "lego_files_s3file"."id",
       "lego_files_s3file"."file_size",
       "lego_files_s3file"."last_modified",
       "lego_files_s3file"."aws_mi_file",
       "lego_files_s3file"."linode_si_file",
       "lego_files_s3file"."linode_mi_file",
       "lego_files_s3file"."linode_media_file"
  FROM
"lego_files_s3file"
 WHERE
"lego_files_s3file"."id" = 88111
 LIMIT
21
SELECT ••• FROM "lego_files_s3file" WHERE "lego_files_s3file"."id" = 88111 LIMIT 21
2 similar queries.
0.07

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/models/sets.py in get_download_url(3084)
  if self.file:

9 <div class="display-flex">
10 {% for bi in set.instructions.all %}
11 <div class="xflex-1 xcol-sm-3 mb-10 min-height-250 p-10" style="width:25%">
12 <a href="{{ bi.get_download_url }}" target="_blank">
13 {% thumbs bi.get_preview_img settings.THUMBS_OPTIONS_SET_BI_TILE as img %}
14 <img class="img-responsive" {% if not part.no_lazy %}src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-{% endif %}src="{% cachebuster img.url %}" width="{{ img.width }}" height="{{ img.height }}" title="{{ bi.descr }}" alt="LEGO Building Instructions for {{ set }} - {{ bi.descr }}">
15 <br><span class="" title="{{ bi.descr }}">{{ bi.descr }}</span>
16 {% if bi.is_alt %}

/home/nathan/rb/site/lego/templates/sets/includes/render_set_bi_list.html

SELECT (width*height) AS "area",
       "ads_banner"."id",
       "ads_banner"."width",
       "ads_banner"."height",
       "ads_banner"."start_date",
       "ads_banner"."end_date",
       "ads_banner"."country_code",
       "ads_banner"."html"
  FROM
"ads_banner"
 WHERE
("ads_banner"."start_date" < '2026-01-22T19:45:23.190467+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T19:45:23.190537+00:00'::timestamptz OR "ads_banner"."end_date" IS NULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T19:45:23.190453+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" IS NULL OR "ads_banner"."end_date" > '2026-01-22T19:45:23.190666+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
SELECT ••• FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T19:45:23.190467+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T19:45:23.190537+00:00'::timestamptz OR "ads_banner"."end_date" IS NULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T19:45:23.190453+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" IS NULL OR "ads_banner"."end_date" > '2026-01-22T19:45:23.190666+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
3 similar queries.
1.74

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./ads/templatetags/ads/drawing.py in render_banner(291)
  if not banners:

192 {% endcache %}
193
194 {# cant include banner in cache as it's region specific #}
195 {% render_banner 262 350 0 %}
196
197 {% cache cache_timeout 'set_sidebar_top_other_bit' user.is_authenticated set.id %}
198 {% if request.user.is_authenticated and not set.is_pending %}
199 {% if not set.is_figure %}

/home/nathan/rb/site/lego/templates/sets/includes/render_set_sidebar_top.html

SELECT (width*height) AS "area",
       "ads_banner"."id",
       "ads_banner"."width",
       "ads_banner"."height",
       "ads_banner"."start_date",
       "ads_banner"."end_date",
       "ads_banner"."country_code",
       "ads_banner"."html"
  FROM
"ads_banner"
 WHERE
("ads_banner"."start_date" < '2026-01-22T19:45:23.190467+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T19:45:23.190537+00:00'::timestamptz OR "ads_banner"."end_date" IS NULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T19:45:23.190453+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" IS NULL OR "ads_banner"."end_date" > '2026-01-22T19:45:23.190666+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
 ORDER BY
1 DESC, RANDOM() ASC
 LIMIT
1
SELECT ••• FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T19:45:23.190467+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T19:45:23.190537+00:00'::timestamptz OR "ads_banner"."end_date" IS NULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T19:45:23.190453+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" IS NULL OR "ads_banner"."end_date" > '2026-01-22T19:45:23.190666+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US') ORDER BY 1 DESC, RANDOM() ASC LIMIT 1
3 similar queries.
1.23

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./ads/templatetags/ads/drawing.py in render_banner(298)
  banner = banners.order_by('-area', '?')[0]

192 {% endcache %}
193
194 {# cant include banner in cache as it's region specific #}
195 {% render_banner 262 350 0 %}
196
197 {% cache cache_timeout 'set_sidebar_top_other_bit' user.is_authenticated set.id %}
198 {% if request.user.is_authenticated and not set.is_pending %}
199 {% if not set.is_figure %}

/home/nathan/rb/site/lego/templates/sets/includes/render_set_sidebar_top.html

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector",
       "lego_moc"."baseset_ptr_id",
       "lego_moc"."designer_id",
       "lego_moc"."detail_url",
       "lego_moc"."gallery_url",
       "lego_moc"."bi_url",
       "lego_moc"."cad_url",
       "lego_moc"."video",
       "lego_moc"."bi_type",
       "lego_moc"."is_for_sale",
       "lego_moc"."is_hosted",
       "lego_moc"."cost",
       "lego_moc"."currency_id",
       "lego_moc"."parent_set_1_id",
       "lego_moc"."parent_set_2_id",
       "lego_moc"."parent_set_3_id",
       "lego_moc"."parent_set_4_id",
       "lego_moc"."parent_set_5_id",
       "lego_moc"."parent_inv_1_id",
       "lego_moc"."parent_inv_2_id",
       "lego_moc"."parent_inv_3_id",
       "lego_moc"."parent_inv_4_id",
       "lego_moc"."parent_inv_5_id",
       "lego_moc"."parent_type",
       "lego_moc"."is_allowed_premium",
       "lego_moc"."is_locked",
       "lego_moc"."last_social_post",
       "lego_moc"."is_review_requested"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
"lego_moc"."baseset_ptr_id" = 131972
 LIMIT
21
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE "lego_moc"."baseset_ptr_id" = 131972 LIMIT 21
10 similar queries.
0.29

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in render_set(18)
  return render_to_string('sets/render_set_related.html',

/home/nathan/rb/site/./lego/models/sets.py in get_absolute_url(615)
  return self.get_moc().get_absolute_url()

/home/nathan/rb/site/./lego/models/sets.py in get_moc(830)
  elif hasattr(self, 'moc'):

2
3 <div class="mb-20">
4 <div class="text-center">
5 <a href="{{ set.get_absolute_url }}">
6 {% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=settings.THUMBS_OPTIONS_MOC_TILE %}
7 </a>
8 </div>
9 <h4 class="trunc mb-0" title="{{ set.name }}"><a href="{{ set.get_absolute_url }}">{{ set.name }}</a></h4>

/home/nathan/rb/site/lego/templates/sets/render_set_related.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",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 561137
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 561137 LIMIT 21
12 similar queries.
0.12

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in render_set(18)
  return render_to_string('sets/render_set_related.html',

/home/nathan/rb/site/./lego/models/sets.py in get_absolute_url(615)
  return self.get_moc().get_absolute_url()

/home/nathan/rb/site/./lego/models/mocs.py in get_absolute_url(765)
  url = "/mocs/{0}/{1}/{2}/".format(self.set_num, parse.quote(self.designer.username, safe=''), slug)

2
3 <div class="mb-20">
4 <div class="text-center">
5 <a href="{{ set.get_absolute_url }}">
6 {% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=settings.THUMBS_OPTIONS_MOC_TILE %}
7 </a>
8 </div>
9 <h4 class="trunc mb-0" title="{{ set.name }}"><a href="{{ set.get_absolute_url }}">{{ set.name }}</a></h4>

/home/nathan/rb/site/lego/templates/sets/render_set_related.html

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector",
       "lego_moc"."baseset_ptr_id",
       "lego_moc"."designer_id",
       "lego_moc"."detail_url",
       "lego_moc"."gallery_url",
       "lego_moc"."bi_url",
       "lego_moc"."cad_url",
       "lego_moc"."video",
       "lego_moc"."bi_type",
       "lego_moc"."is_for_sale",
       "lego_moc"."is_hosted",
       "lego_moc"."cost",
       "lego_moc"."currency_id",
       "lego_moc"."parent_set_1_id",
       "lego_moc"."parent_set_2_id",
       "lego_moc"."parent_set_3_id",
       "lego_moc"."parent_set_4_id",
       "lego_moc"."parent_set_5_id",
       "lego_moc"."parent_inv_1_id",
       "lego_moc"."parent_inv_2_id",
       "lego_moc"."parent_inv_3_id",
       "lego_moc"."parent_inv_4_id",
       "lego_moc"."parent_inv_5_id",
       "lego_moc"."parent_type",
       "lego_moc"."is_allowed_premium",
       "lego_moc"."is_locked",
       "lego_moc"."last_social_post",
       "lego_moc"."is_review_requested"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
"lego_moc"."baseset_ptr_id" = 161805
 LIMIT
21
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE "lego_moc"."baseset_ptr_id" = 161805 LIMIT 21
10 similar queries.
0.27

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in render_set(18)
  return render_to_string('sets/render_set_related.html',

/home/nathan/rb/site/./lego/models/sets.py in get_absolute_url(615)
  return self.get_moc().get_absolute_url()

/home/nathan/rb/site/./lego/models/sets.py in get_moc(830)
  elif hasattr(self, 'moc'):

2
3 <div class="mb-20">
4 <div class="text-center">
5 <a href="{{ set.get_absolute_url }}">
6 {% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=settings.THUMBS_OPTIONS_MOC_TILE %}
7 </a>
8 </div>
9 <h4 class="trunc mb-0" title="{{ set.name }}"><a href="{{ set.get_absolute_url }}">{{ set.name }}</a></h4>

/home/nathan/rb/site/lego/templates/sets/render_set_related.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",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 552018
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 552018 LIMIT 21
12 similar queries. Duplicated 5 times.
0.16

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in render_set(18)
  return render_to_string('sets/render_set_related.html',

/home/nathan/rb/site/./lego/models/sets.py in get_absolute_url(615)
  return self.get_moc().get_absolute_url()

/home/nathan/rb/site/./lego/models/mocs.py in get_absolute_url(765)
  url = "/mocs/{0}/{1}/{2}/".format(self.set_num, parse.quote(self.designer.username, safe=''), slug)

2
3 <div class="mb-20">
4 <div class="text-center">
5 <a href="{{ set.get_absolute_url }}">
6 {% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=settings.THUMBS_OPTIONS_MOC_TILE %}
7 </a>
8 </div>
9 <h4 class="trunc mb-0" title="{{ set.name }}"><a href="{{ set.get_absolute_url }}">{{ set.name }}</a></h4>

/home/nathan/rb/site/lego/templates/sets/render_set_related.html

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector",
       "lego_moc"."baseset_ptr_id",
       "lego_moc"."designer_id",
       "lego_moc"."detail_url",
       "lego_moc"."gallery_url",
       "lego_moc"."bi_url",
       "lego_moc"."cad_url",
       "lego_moc"."video",
       "lego_moc"."bi_type",
       "lego_moc"."is_for_sale",
       "lego_moc"."is_hosted",
       "lego_moc"."cost",
       "lego_moc"."currency_id",
       "lego_moc"."parent_set_1_id",
       "lego_moc"."parent_set_2_id",
       "lego_moc"."parent_set_3_id",
       "lego_moc"."parent_set_4_id",
       "lego_moc"."parent_set_5_id",
       "lego_moc"."parent_inv_1_id",
       "lego_moc"."parent_inv_2_id",
       "lego_moc"."parent_inv_3_id",
       "lego_moc"."parent_inv_4_id",
       "lego_moc"."parent_inv_5_id",
       "lego_moc"."parent_type",
       "lego_moc"."is_allowed_premium",
       "lego_moc"."is_locked",
       "lego_moc"."last_social_post",
       "lego_moc"."is_review_requested"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
"lego_moc"."baseset_ptr_id" = 248078
 LIMIT
21
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE "lego_moc"."baseset_ptr_id" = 248078 LIMIT 21
10 similar queries.
0.17

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in render_set(18)
  return render_to_string('sets/render_set_related.html',

/home/nathan/rb/site/./lego/models/sets.py in get_absolute_url(615)
  return self.get_moc().get_absolute_url()

/home/nathan/rb/site/./lego/models/sets.py in get_moc(830)
  elif hasattr(self, 'moc'):

2
3 <div class="mb-20">
4 <div class="text-center">
5 <a href="{{ set.get_absolute_url }}">
6 {% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=settings.THUMBS_OPTIONS_MOC_TILE %}
7 </a>
8 </div>
9 <h4 class="trunc mb-0" title="{{ set.name }}"><a href="{{ set.get_absolute_url }}">{{ set.name }}</a></h4>

/home/nathan/rb/site/lego/templates/sets/render_set_related.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",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 1178626
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 1178626 LIMIT 21
12 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in render_set(18)
  return render_to_string('sets/render_set_related.html',

/home/nathan/rb/site/./lego/models/sets.py in get_absolute_url(615)
  return self.get_moc().get_absolute_url()

/home/nathan/rb/site/./lego/models/mocs.py in get_absolute_url(765)
  url = "/mocs/{0}/{1}/{2}/".format(self.set_num, parse.quote(self.designer.username, safe=''), slug)

2
3 <div class="mb-20">
4 <div class="text-center">
5 <a href="{{ set.get_absolute_url }}">
6 {% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=settings.THUMBS_OPTIONS_MOC_TILE %}
7 </a>
8 </div>
9 <h4 class="trunc mb-0" title="{{ set.name }}"><a href="{{ set.get_absolute_url }}">{{ set.name }}</a></h4>

/home/nathan/rb/site/lego/templates/sets/render_set_related.html

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector",
       "lego_moc"."baseset_ptr_id",
       "lego_moc"."designer_id",
       "lego_moc"."detail_url",
       "lego_moc"."gallery_url",
       "lego_moc"."bi_url",
       "lego_moc"."cad_url",
       "lego_moc"."video",
       "lego_moc"."bi_type",
       "lego_moc"."is_for_sale",
       "lego_moc"."is_hosted",
       "lego_moc"."cost",
       "lego_moc"."currency_id",
       "lego_moc"."parent_set_1_id",
       "lego_moc"."parent_set_2_id",
       "lego_moc"."parent_set_3_id",
       "lego_moc"."parent_set_4_id",
       "lego_moc"."parent_set_5_id",
       "lego_moc"."parent_inv_1_id",
       "lego_moc"."parent_inv_2_id",
       "lego_moc"."parent_inv_3_id",
       "lego_moc"."parent_inv_4_id",
       "lego_moc"."parent_inv_5_id",
       "lego_moc"."parent_type",
       "lego_moc"."is_allowed_premium",
       "lego_moc"."is_locked",
       "lego_moc"."last_social_post",
       "lego_moc"."is_review_requested"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
"lego_moc"."baseset_ptr_id" = 168815
 LIMIT
21
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE "lego_moc"."baseset_ptr_id" = 168815 LIMIT 21
10 similar queries.
0.15

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in render_set(18)
  return render_to_string('sets/render_set_related.html',

/home/nathan/rb/site/./lego/models/sets.py in get_absolute_url(615)
  return self.get_moc().get_absolute_url()

/home/nathan/rb/site/./lego/models/sets.py in get_moc(830)
  elif hasattr(self, 'moc'):

2
3 <div class="mb-20">
4 <div class="text-center">
5 <a href="{{ set.get_absolute_url }}">
6 {% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=settings.THUMBS_OPTIONS_MOC_TILE %}
7 </a>
8 </div>
9 <h4 class="trunc mb-0" title="{{ set.name }}"><a href="{{ set.get_absolute_url }}">{{ set.name }}</a></h4>

/home/nathan/rb/site/lego/templates/sets/render_set_related.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",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 552018
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 552018 LIMIT 21
12 similar queries. Duplicated 5 times.
0.12

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in render_set(18)
  return render_to_string('sets/render_set_related.html',

/home/nathan/rb/site/./lego/models/sets.py in get_absolute_url(615)
  return self.get_moc().get_absolute_url()

/home/nathan/rb/site/./lego/models/mocs.py in get_absolute_url(765)
  url = "/mocs/{0}/{1}/{2}/".format(self.set_num, parse.quote(self.designer.username, safe=''), slug)

2
3 <div class="mb-20">
4 <div class="text-center">
5 <a href="{{ set.get_absolute_url }}">
6 {% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=settings.THUMBS_OPTIONS_MOC_TILE %}
7 </a>
8 </div>
9 <h4 class="trunc mb-0" title="{{ set.name }}"><a href="{{ set.get_absolute_url }}">{{ set.name }}</a></h4>

/home/nathan/rb/site/lego/templates/sets/render_set_related.html

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector",
       "lego_moc"."baseset_ptr_id",
       "lego_moc"."designer_id",
       "lego_moc"."detail_url",
       "lego_moc"."gallery_url",
       "lego_moc"."bi_url",
       "lego_moc"."cad_url",
       "lego_moc"."video",
       "lego_moc"."bi_type",
       "lego_moc"."is_for_sale",
       "lego_moc"."is_hosted",
       "lego_moc"."cost",
       "lego_moc"."currency_id",
       "lego_moc"."parent_set_1_id",
       "lego_moc"."parent_set_2_id",
       "lego_moc"."parent_set_3_id",
       "lego_moc"."parent_set_4_id",
       "lego_moc"."parent_set_5_id",
       "lego_moc"."parent_inv_1_id",
       "lego_moc"."parent_inv_2_id",
       "lego_moc"."parent_inv_3_id",
       "lego_moc"."parent_inv_4_id",
       "lego_moc"."parent_inv_5_id",
       "lego_moc"."parent_type",
       "lego_moc"."is_allowed_premium",
       "lego_moc"."is_locked",
       "lego_moc"."last_social_post",
       "lego_moc"."is_review_requested"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
"lego_moc"."baseset_ptr_id" = 141008
 LIMIT
21
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE "lego_moc"."baseset_ptr_id" = 141008 LIMIT 21
10 similar queries.
0.17

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in render_set(18)
  return render_to_string('sets/render_set_related.html',

/home/nathan/rb/site/./lego/models/sets.py in get_absolute_url(615)
  return self.get_moc().get_absolute_url()

/home/nathan/rb/site/./lego/models/sets.py in get_moc(830)
  elif hasattr(self, 'moc'):

2
3 <div class="mb-20">
4 <div class="text-center">
5 <a href="{{ set.get_absolute_url }}">
6 {% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=settings.THUMBS_OPTIONS_MOC_TILE %}
7 </a>
8 </div>
9 <h4 class="trunc mb-0" title="{{ set.name }}"><a href="{{ set.get_absolute_url }}">{{ set.name }}</a></h4>

/home/nathan/rb/site/lego/templates/sets/render_set_related.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",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 701093
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 701093 LIMIT 21
12 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in render_set(18)
  return render_to_string('sets/render_set_related.html',

/home/nathan/rb/site/./lego/models/sets.py in get_absolute_url(615)
  return self.get_moc().get_absolute_url()

/home/nathan/rb/site/./lego/models/mocs.py in get_absolute_url(765)
  url = "/mocs/{0}/{1}/{2}/".format(self.set_num, parse.quote(self.designer.username, safe=''), slug)

2
3 <div class="mb-20">
4 <div class="text-center">
5 <a href="{{ set.get_absolute_url }}">
6 {% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=settings.THUMBS_OPTIONS_MOC_TILE %}
7 </a>
8 </div>
9 <h4 class="trunc mb-0" title="{{ set.name }}"><a href="{{ set.get_absolute_url }}">{{ set.name }}</a></h4>

/home/nathan/rb/site/lego/templates/sets/render_set_related.html

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector",
       "lego_moc"."baseset_ptr_id",
       "lego_moc"."designer_id",
       "lego_moc"."detail_url",
       "lego_moc"."gallery_url",
       "lego_moc"."bi_url",
       "lego_moc"."cad_url",
       "lego_moc"."video",
       "lego_moc"."bi_type",
       "lego_moc"."is_for_sale",
       "lego_moc"."is_hosted",
       "lego_moc"."cost",
       "lego_moc"."currency_id",
       "lego_moc"."parent_set_1_id",
       "lego_moc"."parent_set_2_id",
       "lego_moc"."parent_set_3_id",
       "lego_moc"."parent_set_4_id",
       "lego_moc"."parent_set_5_id",
       "lego_moc"."parent_inv_1_id",
       "lego_moc"."parent_inv_2_id",
       "lego_moc"."parent_inv_3_id",
       "lego_moc"."parent_inv_4_id",
       "lego_moc"."parent_inv_5_id",
       "lego_moc"."parent_type",
       "lego_moc"."is_allowed_premium",
       "lego_moc"."is_locked",
       "lego_moc"."last_social_post",
       "lego_moc"."is_review_requested"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
"lego_moc"."baseset_ptr_id" = 163859
 LIMIT
21
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE "lego_moc"."baseset_ptr_id" = 163859 LIMIT 21
10 similar queries.
0.17

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in render_set(18)
  return render_to_string('sets/render_set_related.html',

/home/nathan/rb/site/./lego/models/sets.py in get_absolute_url(615)
  return self.get_moc().get_absolute_url()

/home/nathan/rb/site/./lego/models/sets.py in get_moc(830)
  elif hasattr(self, 'moc'):

2
3 <div class="mb-20">
4 <div class="text-center">
5 <a href="{{ set.get_absolute_url }}">
6 {% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=settings.THUMBS_OPTIONS_MOC_TILE %}
7 </a>
8 </div>
9 <h4 class="trunc mb-0" title="{{ set.name }}"><a href="{{ set.get_absolute_url }}">{{ set.name }}</a></h4>

/home/nathan/rb/site/lego/templates/sets/render_set_related.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",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 552018
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 552018 LIMIT 21
12 similar queries. Duplicated 5 times.
0.14

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in render_set(18)
  return render_to_string('sets/render_set_related.html',

/home/nathan/rb/site/./lego/models/sets.py in get_absolute_url(615)
  return self.get_moc().get_absolute_url()

/home/nathan/rb/site/./lego/models/mocs.py in get_absolute_url(765)
  url = "/mocs/{0}/{1}/{2}/".format(self.set_num, parse.quote(self.designer.username, safe=''), slug)

2
3 <div class="mb-20">
4 <div class="text-center">
5 <a href="{{ set.get_absolute_url }}">
6 {% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=settings.THUMBS_OPTIONS_MOC_TILE %}
7 </a>
8 </div>
9 <h4 class="trunc mb-0" title="{{ set.name }}"><a href="{{ set.get_absolute_url }}">{{ set.name }}</a></h4>

/home/nathan/rb/site/lego/templates/sets/render_set_related.html

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector",
       "lego_moc"."baseset_ptr_id",
       "lego_moc"."designer_id",
       "lego_moc"."detail_url",
       "lego_moc"."gallery_url",
       "lego_moc"."bi_url",
       "lego_moc"."cad_url",
       "lego_moc"."video",
       "lego_moc"."bi_type",
       "lego_moc"."is_for_sale",
       "lego_moc"."is_hosted",
       "lego_moc"."cost",
       "lego_moc"."currency_id",
       "lego_moc"."parent_set_1_id",
       "lego_moc"."parent_set_2_id",
       "lego_moc"."parent_set_3_id",
       "lego_moc"."parent_set_4_id",
       "lego_moc"."parent_set_5_id",
       "lego_moc"."parent_inv_1_id",
       "lego_moc"."parent_inv_2_id",
       "lego_moc"."parent_inv_3_id",
       "lego_moc"."parent_inv_4_id",
       "lego_moc"."parent_inv_5_id",
       "lego_moc"."parent_type",
       "lego_moc"."is_allowed_premium",
       "lego_moc"."is_locked",
       "lego_moc"."last_social_post",
       "lego_moc"."is_review_requested"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
"lego_moc"."baseset_ptr_id" = 189653
 LIMIT
21
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE "lego_moc"."baseset_ptr_id" = 189653 LIMIT 21
10 similar queries.
0.17

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in render_set(18)
  return render_to_string('sets/render_set_related.html',

/home/nathan/rb/site/./lego/models/sets.py in get_absolute_url(615)
  return self.get_moc().get_absolute_url()

/home/nathan/rb/site/./lego/models/sets.py in get_moc(830)
  elif hasattr(self, 'moc'):

2
3 <div class="mb-20">
4 <div class="text-center">
5 <a href="{{ set.get_absolute_url }}">
6 {% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=settings.THUMBS_OPTIONS_MOC_TILE %}
7 </a>
8 </div>
9 <h4 class="trunc mb-0" title="{{ set.name }}"><a href="{{ set.get_absolute_url }}">{{ set.name }}</a></h4>

/home/nathan/rb/site/lego/templates/sets/render_set_related.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",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 791975
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 791975 LIMIT 21
12 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in render_set(18)
  return render_to_string('sets/render_set_related.html',

/home/nathan/rb/site/./lego/models/sets.py in get_absolute_url(615)
  return self.get_moc().get_absolute_url()

/home/nathan/rb/site/./lego/models/mocs.py in get_absolute_url(765)
  url = "/mocs/{0}/{1}/{2}/".format(self.set_num, parse.quote(self.designer.username, safe=''), slug)

2
3 <div class="mb-20">
4 <div class="text-center">
5 <a href="{{ set.get_absolute_url }}">
6 {% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=settings.THUMBS_OPTIONS_MOC_TILE %}
7 </a>
8 </div>
9 <h4 class="trunc mb-0" title="{{ set.name }}"><a href="{{ set.get_absolute_url }}">{{ set.name }}</a></h4>

/home/nathan/rb/site/lego/templates/sets/render_set_related.html

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector",
       "lego_moc"."baseset_ptr_id",
       "lego_moc"."designer_id",
       "lego_moc"."detail_url",
       "lego_moc"."gallery_url",
       "lego_moc"."bi_url",
       "lego_moc"."cad_url",
       "lego_moc"."video",
       "lego_moc"."bi_type",
       "lego_moc"."is_for_sale",
       "lego_moc"."is_hosted",
       "lego_moc"."cost",
       "lego_moc"."currency_id",
       "lego_moc"."parent_set_1_id",
       "lego_moc"."parent_set_2_id",
       "lego_moc"."parent_set_3_id",
       "lego_moc"."parent_set_4_id",
       "lego_moc"."parent_set_5_id",
       "lego_moc"."parent_inv_1_id",
       "lego_moc"."parent_inv_2_id",
       "lego_moc"."parent_inv_3_id",
       "lego_moc"."parent_inv_4_id",
       "lego_moc"."parent_inv_5_id",
       "lego_moc"."parent_type",
       "lego_moc"."is_allowed_premium",
       "lego_moc"."is_locked",
       "lego_moc"."last_social_post",
       "lego_moc"."is_review_requested"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
"lego_moc"."baseset_ptr_id" = 172024
 LIMIT
21
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE "lego_moc"."baseset_ptr_id" = 172024 LIMIT 21
10 similar queries.
0.15

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in render_set(18)
  return render_to_string('sets/render_set_related.html',

/home/nathan/rb/site/./lego/models/sets.py in get_absolute_url(615)
  return self.get_moc().get_absolute_url()

/home/nathan/rb/site/./lego/models/sets.py in get_moc(830)
  elif hasattr(self, 'moc'):

2
3 <div class="mb-20">
4 <div class="text-center">
5 <a href="{{ set.get_absolute_url }}">
6 {% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=settings.THUMBS_OPTIONS_MOC_TILE %}
7 </a>
8 </div>
9 <h4 class="trunc mb-0" title="{{ set.name }}"><a href="{{ set.get_absolute_url }}">{{ set.name }}</a></h4>

/home/nathan/rb/site/lego/templates/sets/render_set_related.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",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 552018
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 552018 LIMIT 21
12 similar queries. Duplicated 5 times.
0.09

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in render_set(18)
  return render_to_string('sets/render_set_related.html',

/home/nathan/rb/site/./lego/models/sets.py in get_absolute_url(615)
  return self.get_moc().get_absolute_url()

/home/nathan/rb/site/./lego/models/mocs.py in get_absolute_url(765)
  url = "/mocs/{0}/{1}/{2}/".format(self.set_num, parse.quote(self.designer.username, safe=''), slug)

2
3 <div class="mb-20">
4 <div class="text-center">
5 <a href="{{ set.get_absolute_url }}">
6 {% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=settings.THUMBS_OPTIONS_MOC_TILE %}
7 </a>
8 </div>
9 <h4 class="trunc mb-0" title="{{ set.name }}"><a href="{{ set.get_absolute_url }}">{{ set.name }}</a></h4>

/home/nathan/rb/site/lego/templates/sets/render_set_related.html

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector",
       "lego_moc"."baseset_ptr_id",
       "lego_moc"."designer_id",
       "lego_moc"."detail_url",
       "lego_moc"."gallery_url",
       "lego_moc"."bi_url",
       "lego_moc"."cad_url",
       "lego_moc"."video",
       "lego_moc"."bi_type",
       "lego_moc"."is_for_sale",
       "lego_moc"."is_hosted",
       "lego_moc"."cost",
       "lego_moc"."currency_id",
       "lego_moc"."parent_set_1_id",
       "lego_moc"."parent_set_2_id",
       "lego_moc"."parent_set_3_id",
       "lego_moc"."parent_set_4_id",
       "lego_moc"."parent_set_5_id",
       "lego_moc"."parent_inv_1_id",
       "lego_moc"."parent_inv_2_id",
       "lego_moc"."parent_inv_3_id",
       "lego_moc"."parent_inv_4_id",
       "lego_moc"."parent_inv_5_id",
       "lego_moc"."parent_type",
       "lego_moc"."is_allowed_premium",
       "lego_moc"."is_locked",
       "lego_moc"."last_social_post",
       "lego_moc"."is_review_requested"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
"lego_moc"."baseset_ptr_id" = 184315
 LIMIT
21
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE "lego_moc"."baseset_ptr_id" = 184315 LIMIT 21
10 similar queries.
0.16

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in render_set(18)
  return render_to_string('sets/render_set_related.html',

/home/nathan/rb/site/./lego/models/sets.py in get_absolute_url(615)
  return self.get_moc().get_absolute_url()

/home/nathan/rb/site/./lego/models/sets.py in get_moc(830)
  elif hasattr(self, 'moc'):

2
3 <div class="mb-20">
4 <div class="text-center">
5 <a href="{{ set.get_absolute_url }}">
6 {% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=settings.THUMBS_OPTIONS_MOC_TILE %}
7 </a>
8 </div>
9 <h4 class="trunc mb-0" title="{{ set.name }}"><a href="{{ set.get_absolute_url }}">{{ set.name }}</a></h4>

/home/nathan/rb/site/lego/templates/sets/render_set_related.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",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 552018
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 552018 LIMIT 21
12 similar queries. Duplicated 5 times.
0.09

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in render_set(18)
  return render_to_string('sets/render_set_related.html',

/home/nathan/rb/site/./lego/models/sets.py in get_absolute_url(615)
  return self.get_moc().get_absolute_url()

/home/nathan/rb/site/./lego/models/mocs.py in get_absolute_url(765)
  url = "/mocs/{0}/{1}/{2}/".format(self.set_num, parse.quote(self.designer.username, safe=''), slug)

2
3 <div class="mb-20">
4 <div class="text-center">
5 <a href="{{ set.get_absolute_url }}">
6 {% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=settings.THUMBS_OPTIONS_MOC_TILE %}
7 </a>
8 </div>
9 <h4 class="trunc mb-0" title="{{ set.name }}"><a href="{{ set.get_absolute_url }}">{{ set.name }}</a></h4>

/home/nathan/rb/site/lego/templates/sets/render_set_related.html

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector",
       "lego_moc"."baseset_ptr_id",
       "lego_moc"."designer_id",
       "lego_moc"."detail_url",
       "lego_moc"."gallery_url",
       "lego_moc"."bi_url",
       "lego_moc"."cad_url",
       "lego_moc"."video",
       "lego_moc"."bi_type",
       "lego_moc"."is_for_sale",
       "lego_moc"."is_hosted",
       "lego_moc"."cost",
       "lego_moc"."currency_id",
       "lego_moc"."parent_set_1_id",
       "lego_moc"."parent_set_2_id",
       "lego_moc"."parent_set_3_id",
       "lego_moc"."parent_set_4_id",
       "lego_moc"."parent_set_5_id",
       "lego_moc"."parent_inv_1_id",
       "lego_moc"."parent_inv_2_id",
       "lego_moc"."parent_inv_3_id",
       "lego_moc"."parent_inv_4_id",
       "lego_moc"."parent_inv_5_id",
       "lego_moc"."parent_type",
       "lego_moc"."is_allowed_premium",
       "lego_moc"."is_locked",
       "lego_moc"."last_social_post",
       "lego_moc"."is_review_requested"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
"lego_moc"."baseset_ptr_id" = 130621
 LIMIT
21
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE "lego_moc"."baseset_ptr_id" = 130621 LIMIT 21
10 similar queries.
0.25

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in render_set(18)
  return render_to_string('sets/render_set_related.html',

/home/nathan/rb/site/./lego/models/sets.py in get_absolute_url(615)
  return self.get_moc().get_absolute_url()

/home/nathan/rb/site/./lego/models/sets.py in get_moc(830)
  elif hasattr(self, 'moc'):

2
3 <div class="mb-20">
4 <div class="text-center">
5 <a href="{{ set.get_absolute_url }}">
6 {% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=settings.THUMBS_OPTIONS_MOC_TILE %}
7 </a>
8 </div>
9 <h4 class="trunc mb-0" title="{{ set.name }}"><a href="{{ set.get_absolute_url }}">{{ set.name }}</a></h4>

/home/nathan/rb/site/lego/templates/sets/render_set_related.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",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 576380
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 576380 LIMIT 21
12 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in render_set(18)
  return render_to_string('sets/render_set_related.html',

/home/nathan/rb/site/./lego/models/sets.py in get_absolute_url(615)
  return self.get_moc().get_absolute_url()

/home/nathan/rb/site/./lego/models/mocs.py in get_absolute_url(765)
  url = "/mocs/{0}/{1}/{2}/".format(self.set_num, parse.quote(self.designer.username, safe=''), slug)

2
3 <div class="mb-20">
4 <div class="text-center">
5 <a href="{{ set.get_absolute_url }}">
6 {% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=settings.THUMBS_OPTIONS_MOC_TILE %}
7 </a>
8 </div>
9 <h4 class="trunc mb-0" title="{{ set.name }}"><a href="{{ set.get_absolute_url }}">{{ set.name }}</a></h4>

/home/nathan/rb/site/lego/templates/sets/render_set_related.html

SELECT (width*height) AS "area",
       "ads_banner"."id",
       "ads_banner"."width",
       "ads_banner"."height",
       "ads_banner"."start_date",
       "ads_banner"."end_date",
       "ads_banner"."country_code",
       "ads_banner"."html"
  FROM
"ads_banner"
 WHERE
("ads_banner"."start_date" < '2026-01-22T19:45:23.217892+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T19:45:23.217954+00:00'::timestamptz OR "ads_banner"."end_date" IS NULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T19:45:23.217881+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" IS NULL OR "ads_banner"."end_date" > '2026-01-22T19:45:23.218077+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
SELECT ••• FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T19:45:23.217892+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T19:45:23.217954+00:00'::timestamptz OR "ads_banner"."end_date" IS NULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T19:45:23.217881+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" IS NULL OR "ads_banner"."end_date" > '2026-01-22T19:45:23.218077+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
3 similar queries.
1.22

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./ads/templatetags/ads/drawing.py in render_banner(291)
  if not banners:

20 {% render_set related_set related=True %}
21 {% endfor %}
22 {% render_ad 'med_rect_btf' %}
23 {% render_banner 262 350 %}
24 <a href="{% url 'browse_mocs' %}"><button class="btn btn-default btn-block mt-10">Discover more MOCs!</button></a>
25 </section>
26

/home/nathan/rb/site/lego/templates/sets/includes/render_set_sidebar_bottom.html

SELECT (width*height) AS "area",
       "ads_banner"."id",
       "ads_banner"."width",
       "ads_banner"."height",
       "ads_banner"."start_date",
       "ads_banner"."end_date",
       "ads_banner"."country_code",
       "ads_banner"."html"
  FROM
"ads_banner"
 WHERE
("ads_banner"."start_date" < '2026-01-22T19:45:23.217892+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T19:45:23.217954+00:00'::timestamptz OR "ads_banner"."end_date" IS NULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T19:45:23.217881+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" IS NULL OR "ads_banner"."end_date" > '2026-01-22T19:45:23.218077+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
 ORDER BY
1 DESC, RANDOM() ASC
 LIMIT
1
SELECT ••• FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T19:45:23.217892+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T19:45:23.217954+00:00'::timestamptz OR "ads_banner"."end_date" IS NULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T19:45:23.217881+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" IS NULL OR "ads_banner"."end_date" > '2026-01-22T19:45:23.218077+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US') ORDER BY 1 DESC, RANDOM() ASC LIMIT 1
3 similar queries.
1.17

Connection: default

Transaction status: Idle

/home/nathan/rb/site/./lego/views/sets.py in find_sets(114)
  return set_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/sets.py in set_details(449)
  return render(request, 'sets/set_details.html', context)

/home/nathan/rb/site/./ads/templatetags/ads/drawing.py in render_banner(298)
  banner = banners.order_by('-area', '?')[0]

20 {% render_set related_set related=True %}
21 {% endfor %}
22 {% render_ad 'med_rect_btf' %}
23 {% render_banner 262 350 %}
24 <a href="{% url 'browse_mocs' %}"><button class="btn btn-default btn-block mt-10">Discover more MOCs!</button></a>
25 </section>
26

/home/nathan/rb/site/lego/templates/sets/includes/render_set_sidebar_bottom.html

Log messages

No messages logged.