31108-1

Name Caravan Family Holiday
Released 2020
(June 1, 2020 to Dec. 31, 2022)
Inventory 766 parts v2
Theme Creator > Creator 3-in-1

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.
LOTR Rivendell

External Sites

This Set is known differently at other sites:

BrickLink 31108-1
BrickOwl 811725
Brickset 31108-1
22,500
April 23, 2020, 1:45 p.m. by TobyMac
Jan. 19, 2026, 7:55 a.m. by Rebrickable
to your account to add or reply to comments.

Alternate Builds (MOCs)

These MOCs can be built using only the parts in 31108-1 Caravan Family Holiday.

Partial Alternate Builds (MOCs)

These MOCs can be built using only the parts in this set as well as one or more other sets.

Modifications (MOCs)

These MOCs are modifications of 31108-1 Caravan Family Holiday, they typically use most of the parts plus some extra ones.

B-Models

These are official B-Models of 31108-1 Caravan Family Holiday.

RV
31108-1-b1
(401 parts)
Creator > Creator 3-in-1 2020
Lighthouse
31108-1-b2
(464 parts)
Creator > Creator 3-in-1 2020
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 996.266 msec
System CPU time 7.347 msec
Total CPU time 1003.613 msec
Elapsed time 1257.393 msec
Context switches 314 voluntary, 12 involuntary

Browser timing

Timing attribute Timeline Milliseconds since navigation start (+length)

SQL queries from 1 connection

  • default 253.63 ms (162 queries including 132 similar and 26 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" = '31108-1'
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."set_num" = '31108-1' LIMIT 21
2 similar queries. Duplicated 2 times.
0.29

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" = '31108-1'
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."set_num" = '31108-1' 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(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" = 55564
 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" = 55564 LIMIT 21
4 similar queries. Duplicated 2 times.
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(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" = 116147
 LIMIT
21
SELECT ••• FROM "lego_inventory" WHERE "lego_inventory"."id" = 116147 LIMIT 21
3 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(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" = '31108-1'
 ORDER BY
"lego_changelog"."timestamp" DESC
SELECT ••• FROM "lego_changelog" WHERE "lego_changelog"."set_num" = '31108-1' ORDER BY "lego_changelog"."timestamp" DESC
10.93

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" = 55564
 LIMIT
21
SELECT ••• FROM "lego_setstatstotal" WHERE "lego_setstatstotal"."set_id" = 55564 LIMIT 21
0.14

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" = 22577,
       "builds" = 307,
       "likes" = 0,
       "bi_downloads" = 0,
       "featured_hits" = 0,
       "user_hits" = 0
 WHERE
"lego_setstatstotal"."set_id" = 55564
UPDATE "lego_setstatstotal" SET "hits" = 22577, "builds" = 307, "likes" = 0, "bi_downloads" = 0, "featured_hits" = 0, "user_hits" = 0 WHERE "lego_setstatstotal"."set_id" = 55564
0.12

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" = 55564)
 LIMIT
21
SELECT ••• FROM "lego_setstatshistory" WHERE ("lego_setstatshistory"."day" = '2026-01-22'::date AND "lego_setstatshistory"."set_id" = 55564) LIMIT 21
0.20

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_x25"SAVEPOINT "s135227521288000_x25"
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
(55564, '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 (55564, '2026-01-22'::date, 0, 0, 0, 0, 0, 0) RETURNING "lego_setstatshistory"."id"
0.13

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_x25"RELEASE SAVEPOINT "s135227521288000_x25"
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" = 55564,
       "day" = '2026-01-22'::date,
       "hits" = 1,
       "builds" = 0,
       "likes" = 0,
       "bi_downloads" = 0,
       "featured_hits" = 0,
       "user_hits" = 0
 WHERE
"lego_setstatshistory"."id" = 140924494
UPDATE "lego_setstatshistory" SET "set_id" = 55564, "day" = '2026-01-22'::date, "hits" = 1, "builds" = 0, "likes" = 0, "bi_downloads" = 0, "featured_hits" = 0, "user_hits" = 0 WHERE "lego_setstatshistory"."id" = 140924494
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" = 672
 LIMIT
21
SELECT ••• FROM "lego_theme" WHERE "lego_theme"."id" = 672 LIMIT 21
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(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" = 55564)
 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" = 55564) GROUP BY "taggit_tag"."id"
42.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(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", 'Caravan Family Holiday')*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 ),''), '51 305 430 579 1479 1898 2589 2672 3392 3435 3822 4503 7826 9774 14879 15247 15351')*5 + similarity("lego_theme"."name", 'Creator 3-in-1')/3 + similarity(coalesce("lego_theme"."parent_id",0)::text, '22')/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) % 'Caravan Family Holiday 672')
 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", 'Caravan Family Holiday')*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 ),''), '51 305 430 579 1479 1898 2589 2672 3392 3435 3822 4503 7826 9774 14879 15247 15351')*5 + similarity("lego_theme"."name", 'Creator 3-in-1')/3 + similarity(coalesce("lego_theme"."parent_id",0)::text, '22')/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) % 'Caravan Family Holiday 672') ORDER BY "similarity" DESC, "lego_setstatstotal"."likes" DESC, "lego_baseset"."num_parts" DESC LIMIT 10
56.41

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" = 55564 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" = 55564 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.60

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" = 55564 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" = 55564 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.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(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.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(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" = 55564
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 55564 LIMIT 21
5 similar queries. Duplicated 2 times.
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(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" = 55564 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" = 55564 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.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(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" = 55564 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" = 55564 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.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(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.
11.20

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" = 55564 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" = 55564 AND "lego_storesetitem"."store_id" = 17) ORDER BY "lego_storesetitem"."id" ASC LIMIT 1
2 similar queries. Duplicated 2 times.
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(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.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(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" = 55564 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" = 55564 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_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" = 55564 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" = 55564 AND "lego_baseset"."set_type" = 'Set') ORDER BY "lego_baseset"."name" ASC
0.88

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" = 55564
SELECT ••• FROM "lego_setmap" WHERE "lego_setmap"."set_id" = 55564
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_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" = 22
 LIMIT
21
SELECT ••• FROM "lego_theme" WHERE "lego_theme"."id" = 22 LIMIT 21
2 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/models/sets.py in __str__(153)
  if self.parent:

8 {% load static %}
9 {% load thumbs %}
10
11 {% block pagetitle %}LEGO Set {{ set.set_num }} {{ set.name }}{% if not set.is_figure %} ({{ set.year }} {{ set.theme }}){% endif %}{% endblock pagetitle %}
12 {% block page-header %}LEGO SET {{ set.set_num }} - {{ set.name }}{% endblock page-header %}
13 {% block canonical_url %}{% build_absolute_uri set.get_absolute_url %}{% endblock %}
14
15 {% block breadcrumbs %}

/home/nathan/rb/site/lego/templates/sets/set_details.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"."id" = 64481
 LIMIT
21
SELECT ••• FROM "lego_setphoto" WHERE "lego_setphoto"."id" = 64481 LIMIT 21
3 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)

/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" = 55564
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 55564 LIMIT 21
5 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(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 COUNT(*) AS "__count"
  FROM
"lego_setphoto"
 WHERE
("lego_setphoto"."is_active" AND "lego_setphoto"."set_id" = 55564)
SELECT ••• FROM "lego_setphoto" WHERE ("lego_setphoto"."is_active" AND "lego_setphoto"."set_id" = 55564)
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" = 55564)
 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" = 55564) 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)

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

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" = 55564)
 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" = 55564) ORDER BY "lego_setphoto"."is_primary" DESC, "lego_setphoto"."is_active" DESC, "lego_setphoto"."timestamp" ASC
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(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 = '31108-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 = '31108-1'
75.01

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" = '31107-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" = '31107-1') LIMIT 21
2 similar queries.
0.57

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" = '31109-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" = '31109-1') LIMIT 21
2 similar queries.
0.37

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" = 55563
 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" = 55563 LIMIT 21
4 similar queries.
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)

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" = 55565
 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" = 55565 LIMIT 21
4 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)

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" = 55564)
SELECT ••• FROM "lego_inventory" WHERE ("lego_inventory"."is_active" AND "lego_inventory"."set_id" = 55564)
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 '%31108-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 '%31108-1%') ORDER BY "blog_article"."published_date" ASC
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(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-22T15:01:37.409996+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T15:01:37.410072+00:00'::timestamptz OR "ads_banner"."end_date" IS NULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T15:01:37.409982+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" IS NULL OR "ads_banner"."end_date" > '2026-01-22T15:01:37.410193+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
SELECT ••• FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T15:01:37.409996+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T15:01:37.410072+00:00'::timestamptz OR "ads_banner"."end_date" IS NULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T15:01:37.409982+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" IS NULL OR "ads_banner"."end_date" > '2026-01-22T15:01:37.410193+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
3 similar queries.
2.56

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-22T15:01:37.409996+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T15:01:37.410072+00:00'::timestamptz OR "ads_banner"."end_date" IS NULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T15:01:37.409982+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" IS NULL OR "ads_banner"."end_date" > '2026-01-22T15:01:37.410193+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-22T15:01:37.409996+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T15:01:37.410072+00:00'::timestamptz OR "ads_banner"."end_date" IS NULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T15:01:37.409982+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" IS NULL OR "ads_banner"."end_date" > '2026-01-22T15:01:37.410193+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US') ORDER BY 1 DESC, RANDOM() ASC LIMIT 1
3 similar queries.
1.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/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" = 55564
 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" = 55564 LIMIT 21
4 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)

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

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

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.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/./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" = 55564)
 LIMIT
1
SELECT ••• FROM "rb_comments_pagelocked" WHERE ("rb_comments_pagelocked"."content_type_id" = 63 AND "rb_comments_pagelocked"."object_id" = 55564) LIMIT 1
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/./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" = '55564' 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" = '55564' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" AND NOT "django_comments"."is_removed") ORDER BY 1 DESC, "threadedcomments_comment"."tree_path" ASC
0.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(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 (1695830)
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 (1695830)
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/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" = '55564' 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" = '55564' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" AND NOT "django_comments"."is_removed")
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/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" = '55564' 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" = '55564' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" AND NOT "django_comments"."is_removed") ORDER BY 1 DESC, "threadedcomments_comment"."tree_path" ASC LIMIT 50
0.62

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 (1695830)
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 (1695830)
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(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" = 1695830
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 1695830 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
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/./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" = 1695830
 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" = 1695830 LIMIT 21
11 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/./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" = 55564)
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" = 55564)
2 similar queries. Duplicated 2 times.
0.51

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" = 55564)
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" = 55564)
0.86

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" = 55564)
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" = 55564)
2 similar queries. Duplicated 2 times.
0.56

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 (55564) 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 (55564) 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
3.41

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" = 55564 OR "lego_moc"."parent_set_2_id" = 55564 OR "lego_moc"."parent_set_3_id" = 55564 OR "lego_moc"."parent_set_4_id" = 55564 OR "lego_moc"."parent_set_5_id" = 55564))
 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" = 55564 OR "lego_moc"."parent_set_2_id" = 55564 OR "lego_moc"."parent_set_3_id" = 55564 OR "lego_moc"."parent_set_4_id" = 55564 OR "lego_moc"."parent_set_5_id" = 55564)) ORDER BY "lego_setstatstotal"."likes" DESC
1.46

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" = 55564 OR "lego_moc"."parent_set_2_id" = 55564 OR "lego_moc"."parent_set_3_id" = 55564 OR "lego_moc"."parent_set_4_id" = 55564 OR "lego_moc"."parent_set_5_id" = 55564))
 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" = 55564 OR "lego_moc"."parent_set_2_id" = 55564 OR "lego_moc"."parent_set_3_id" = 55564 OR "lego_moc"."parent_set_4_id" = 55564 OR "lego_moc"."parent_set_5_id" = 55564)) ORDER BY "lego_setstatstotal"."likes" DESC
10.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/./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 (158499, 69115, 221581))
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 (158499, 69115, 221581))
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(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 "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" = 3084)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 3084) LIMIT 21
8 similar queries. Duplicated 7 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 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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 79268
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 79268 LIMIT 1
45 similar queries.
0.21

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" = 3084)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 3084) LIMIT 21
8 similar queries. Duplicated 7 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/./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-22T15:01:37.538649+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.538647+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '79895')
 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-22T15:01:37.538649+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.538647+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '79895') ORDER BY "lego_designerdiscount"."start_date" DESC, "lego_designerdiscount"."end_date" DESC LIMIT 1
13 similar queries.
0.36

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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 79895
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 79895 LIMIT 1
45 similar queries.
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/./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():

173 <span class="label label-danger size-10">{{ discount_pct }}</span>
174 </span>
175 {% else %}
176 <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"> {% if set.get_moc.is_alternate %}Prem{% else %}Premium{% endif %}</span></span>
177 {% endif %}
178 {% if set.is_moc and set.get_moc.is_alternate %}
179 <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"></span> {% if not discount_pct %}Alt{% endif %}</span>
180 {% endif %}

/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" = 3084)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 3084) LIMIT 21
8 similar queries. Duplicated 7 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(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-22T15:01:37.542495+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.542494+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '113825')
 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-22T15:01:37.542495+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.542494+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '113825') ORDER BY "lego_designerdiscount"."start_date" DESC, "lego_designerdiscount"."end_date" DESC LIMIT 1
13 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 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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 113825
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 113825 LIMIT 1
45 similar queries.
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/./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():

173 <span class="label label-danger size-10">{{ discount_pct }}</span>
174 </span>
175 {% else %}
176 <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"> {% if set.get_moc.is_alternate %}Prem{% else %}Premium{% endif %}</span></span>
177 {% endif %}
178 {% if set.is_moc and set.get_moc.is_alternate %}
179 <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"></span> {% if not discount_pct %}Alt{% endif %}</span>
180 {% endif %}

/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" = 3084)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 3084) LIMIT 21
8 similar queries. Duplicated 7 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)

/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-22T15:01:37.546093+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.546091+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '80694')
 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-22T15:01:37.546093+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.546091+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '80694') ORDER BY "lego_designerdiscount"."start_date" DESC, "lego_designerdiscount"."end_date" DESC LIMIT 1
13 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 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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 80694
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 80694 LIMIT 1
45 similar queries.
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/./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():

173 <span class="label label-danger size-10">{{ discount_pct }}</span>
174 </span>
175 {% else %}
176 <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"> {% if set.get_moc.is_alternate %}Prem{% else %}Premium{% endif %}</span></span>
177 {% endif %}
178 {% if set.is_moc and set.get_moc.is_alternate %}
179 <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"></span> {% if not discount_pct %}Alt{% endif %}</span>
180 {% endif %}

/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-22T15:01:37.548758+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.548757+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '185608')
 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-22T15:01:37.548758+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.548757+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '185608') ORDER BY "lego_designerdiscount"."start_date" DESC, "lego_designerdiscount"."end_date" DESC LIMIT 1
13 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 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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 185608
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 185608 LIMIT 1
45 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 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():

173 <span class="label label-danger size-10">{{ discount_pct }}</span>
174 </span>
175 {% else %}
176 <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"> {% if set.get_moc.is_alternate %}Prem{% else %}Premium{% endif %}</span></span>
177 {% endif %}
178 {% if set.is_moc and set.get_moc.is_alternate %}
179 <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"></span> {% if not discount_pct %}Alt{% endif %}</span>
180 {% endif %}

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

SELECT 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 99055
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 99055 LIMIT 1
45 similar queries.
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/./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" = 3084)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 3084) LIMIT 21
8 similar queries. Duplicated 7 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(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-22T15:01:37.553871+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.553870+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '113780')
 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-22T15:01:37.553871+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.553870+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '113780') ORDER BY "lego_designerdiscount"."start_date" DESC, "lego_designerdiscount"."end_date" DESC LIMIT 1
13 similar queries.
0.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(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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 113780
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 113780 LIMIT 1
45 similar queries.
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/./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():

173 <span class="label label-danger size-10">{{ discount_pct }}</span>
174 </span>
175 {% else %}
176 <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"> {% if set.get_moc.is_alternate %}Prem{% else %}Premium{% endif %}</span></span>
177 {% endif %}
178 {% if set.is_moc and set.get_moc.is_alternate %}
179 <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"></span> {% if not discount_pct %}Alt{% endif %}</span>
180 {% endif %}

/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-22T15:01:37.556482+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.556481+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '71554')
 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-22T15:01:37.556482+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.556481+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '71554') ORDER BY "lego_designerdiscount"."start_date" DESC, "lego_designerdiscount"."end_date" DESC LIMIT 1
13 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 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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 71554
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 71554 LIMIT 1
45 similar queries.
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/./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():

173 <span class="label label-danger size-10">{{ discount_pct }}</span>
174 </span>
175 {% else %}
176 <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"> {% if set.get_moc.is_alternate %}Prem{% else %}Premium{% endif %}</span></span>
177 {% endif %}
178 {% if set.is_moc and set.get_moc.is_alternate %}
179 <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"></span> {% if not discount_pct %}Alt{% endif %}</span>
180 {% endif %}

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

SELECT 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 289214
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 289214 LIMIT 1
45 similar queries.
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/./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 "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-22T15:01:37.560664+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.560662+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '71761')
 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-22T15:01:37.560664+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.560662+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '71761') ORDER BY "lego_designerdiscount"."start_date" DESC, "lego_designerdiscount"."end_date" DESC LIMIT 1
13 similar queries.
0.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(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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 71761
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 71761 LIMIT 1
45 similar queries.
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/./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():

173 <span class="label label-danger size-10">{{ discount_pct }}</span>
174 </span>
175 {% else %}
176 <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"> {% if set.get_moc.is_alternate %}Prem{% else %}Premium{% endif %}</span></span>
177 {% endif %}
178 {% if set.is_moc and set.get_moc.is_alternate %}
179 <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"></span> {% if not discount_pct %}Alt{% endif %}</span>
180 {% endif %}

/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" = 3084)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 3084) LIMIT 21
8 similar queries. Duplicated 7 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(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-22T15:01:37.564333+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.564332+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '113842')
 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-22T15:01:37.564333+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.564332+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '113842') ORDER BY "lego_designerdiscount"."start_date" DESC, "lego_designerdiscount"."end_date" DESC LIMIT 1
13 similar queries.
0.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(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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 113842
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 113842 LIMIT 1
45 similar queries.
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/./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():

173 <span class="label label-danger size-10">{{ discount_pct }}</span>
174 </span>
175 {% else %}
176 <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"> {% if set.get_moc.is_alternate %}Prem{% else %}Premium{% endif %}</span></span>
177 {% endif %}
178 {% if set.is_moc and set.get_moc.is_alternate %}
179 <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"></span> {% if not discount_pct %}Alt{% endif %}</span>
180 {% endif %}

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

SELECT 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 105501
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 105501 LIMIT 1
45 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)

/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" = 3084)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 3084) LIMIT 21
8 similar queries. Duplicated 7 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(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-22T15:01:37.569491+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.569490+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '114129')
 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-22T15:01:37.569491+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.569490+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '114129') ORDER BY "lego_designerdiscount"."start_date" DESC, "lego_designerdiscount"."end_date" DESC LIMIT 1
13 similar queries.
0.26

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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 114129
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 114129 LIMIT 1
45 similar queries.
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/./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():

173 <span class="label label-danger size-10">{{ discount_pct }}</span>
174 </span>
175 {% else %}
176 <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"> {% if set.get_moc.is_alternate %}Prem{% else %}Premium{% endif %}</span></span>
177 {% endif %}
178 {% if set.is_moc and set.get_moc.is_alternate %}
179 <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"></span> {% if not discount_pct %}Alt{% endif %}</span>
180 {% endif %}

/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-22T15:01:37.572104+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.572102+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '89336')
 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-22T15:01:37.572104+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.572102+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '89336') ORDER BY "lego_designerdiscount"."start_date" DESC, "lego_designerdiscount"."end_date" DESC LIMIT 1
13 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 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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 89336
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 89336 LIMIT 1
45 similar queries.
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/./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():

173 <span class="label label-danger size-10">{{ discount_pct }}</span>
174 </span>
175 {% else %}
176 <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"> {% if set.get_moc.is_alternate %}Prem{% else %}Premium{% endif %}</span></span>
177 {% endif %}
178 {% if set.is_moc and set.get_moc.is_alternate %}
179 <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"></span> {% if not discount_pct %}Alt{% endif %}</span>
180 {% endif %}

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

SELECT 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 225034
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 225034 LIMIT 1
45 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)

/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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 124166
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 124166 LIMIT 1
45 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)

/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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 301444
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 301444 LIMIT 1
45 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)

/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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 243983
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 243983 LIMIT 1
45 similar queries.
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/./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 "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-22T15:01:37.580740+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.580739+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '160489')
 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-22T15:01:37.580740+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.580739+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '160489') ORDER BY "lego_designerdiscount"."start_date" DESC, "lego_designerdiscount"."end_date" DESC LIMIT 1
13 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 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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 160489
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 160489 LIMIT 1
45 similar queries.
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/./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():

173 <span class="label label-danger size-10">{{ discount_pct }}</span>
174 </span>
175 {% else %}
176 <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"> {% if set.get_moc.is_alternate %}Prem{% else %}Premium{% endif %}</span></span>
177 {% endif %}
178 {% if set.is_moc and set.get_moc.is_alternate %}
179 <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"></span> {% if not discount_pct %}Alt{% endif %}</span>
180 {% endif %}

/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-22T15:01:37.583401+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.583400+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '160356')
 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-22T15:01:37.583401+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.583400+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '160356') ORDER BY "lego_designerdiscount"."start_date" DESC, "lego_designerdiscount"."end_date" DESC LIMIT 1
13 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 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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 160356
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 160356 LIMIT 1
45 similar queries.
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/./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():

173 <span class="label label-danger size-10">{{ discount_pct }}</span>
174 </span>
175 {% else %}
176 <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"> {% if set.get_moc.is_alternate %}Prem{% else %}Premium{% endif %}</span></span>
177 {% endif %}
178 {% if set.is_moc and set.get_moc.is_alternate %}
179 <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"></span> {% if not discount_pct %}Alt{% endif %}</span>
180 {% endif %}

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

SELECT 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 153397
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 153397 LIMIT 1
45 similar queries.
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/./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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 165343
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 165343 LIMIT 1
45 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)

/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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 160625
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 160625 LIMIT 1
45 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)

/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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 152843
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 152843 LIMIT 1
45 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)

/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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 138808
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 138808 LIMIT 1
45 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)

/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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 166281
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 166281 LIMIT 1
45 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)

/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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 166245
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 166245 LIMIT 1
45 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)

/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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 160457
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 160457 LIMIT 1
45 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)

/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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 185739
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 185739 LIMIT 1
45 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)

/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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 192453
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 192453 LIMIT 1
45 similar queries.
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/./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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 160484
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 160484 LIMIT 1
45 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)

/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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 248736
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 248736 LIMIT 1
45 similar queries.
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/./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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 166066
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 166066 LIMIT 1
45 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)

/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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 165931
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 165931 LIMIT 1
45 similar queries.
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/./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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 152383
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 152383 LIMIT 1
45 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)

/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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 239507
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 239507 LIMIT 1
45 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)

/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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 225724
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 225724 LIMIT 1
45 similar queries.
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/./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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 185568
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 185568 LIMIT 1
45 similar queries.
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/./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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 191490
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 191490 LIMIT 1
45 similar queries.
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/./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 "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-22T15:01:37.614366+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.614365+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '178304')
 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-22T15:01:37.614366+00:00'::timestamptz AND "lego_designerdiscount"."start_date" <= '2026-01-22T15:01:37.614365+00:00'::timestamptz AND "lego_designerdiscount"."mocs" @> '178304') ORDER BY "lego_designerdiscount"."start_date" DESC, "lego_designerdiscount"."end_date" DESC LIMIT 1
13 similar queries.
0.41

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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 178304
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 178304 LIMIT 1
45 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)

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

173 <span class="label label-danger size-10">{{ discount_pct }}</span>
174 </span>
175 {% else %}
176 <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"> {% if set.get_moc.is_alternate %}Prem{% else %}Premium{% endif %}</span></span>
177 {% endif %}
178 {% if set.is_moc and set.get_moc.is_alternate %}
179 <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"></span> {% if not discount_pct %}Alt{% endif %}</span>
180 {% endif %}

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

SELECT 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 228679
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 228679 LIMIT 1
45 similar queries.
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/./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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 187615
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 187615 LIMIT 1
45 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)

/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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 185628
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 185628 LIMIT 1
45 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)

/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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 193778
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 193778 LIMIT 1
45 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 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 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 154451
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 154451 LIMIT 1
45 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 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 "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" = 21447
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 21447 LIMIT 21
5 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 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)

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
189 {% if sub_text %}

/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" = 630769)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 630769) LIMIT 21
8 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_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" = 67207
 LIMIT
21
SELECT ••• FROM "lego_inventory" WHERE "lego_inventory"."id" = 67207 LIMIT 21
3 similar queries.
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/./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/templatetags/sets/drawing.py in render_set(24)
  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:

14 {% include 'sets/render_set.html' with set=set title=set.name hide_details=True tn_options=settings.THUMBS_OPTIONS_MOC_TILE %}
15 </div>
16 {% else %}
17 <div class="col-xs-6 col-sm-4 col-md-3 col-condensed">{% render_set set tn_options=settings.THUMBS_OPTIONS_SET_TILE %}</div>
18 {% endif %}
19 {% endfor %}
20 </div>
21 {% endif %}

/home/nathan/rb/site/lego/templates/sets/render_alt_build_list.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"."id" = 67434
 LIMIT
21
SELECT ••• FROM "lego_setphoto" WHERE "lego_setphoto"."id" = 67434 LIMIT 21
3 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 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/templatetags/sets/drawing.py in render_set(32)
  return render_to_string('sets/render_set.html',

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

42 {# Image #}
43 <div class="clearfix {% if set.is_figure %} js-hover-card{% endif %}" {% if set.is_figure %}data-hover="{% url 'minfig_hover' set.set_num %}"{% endif %}>
44 <a href="{{ set.get_absolute_url }}{% if inventory and not set.is_moc %}?inventory={{ inventory.version }}{% endif %}">
45 {% if not set.img_dir and set.is_figure %}
46 {% include 'lego/includes/render_set_img.html' with img_file='nil_mf.jpg' tn_options=tn_options %}
47 {% else %}
48 {% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=tn_options %}
49 {% endif %}

/home/nathan/rb/site/lego/templates/sets/render_set.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" = 66104
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 66104 LIMIT 21
5 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/./lego/templatetags/sets/drawing.py in render_set(32)
  return render_to_string('sets/render_set.html',

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

42 {# Image #}
43 <div class="clearfix {% if set.is_figure %} js-hover-card{% endif %}" {% if set.is_figure %}data-hover="{% url 'minfig_hover' set.set_num %}"{% endif %}>
44 <a href="{{ set.get_absolute_url }}{% if inventory and not set.is_moc %}?inventory={{ inventory.version }}{% endif %}">
45 {% if not set.img_dir and set.is_figure %}
46 {% include 'lego/includes/render_set_img.html' with img_file='nil_mf.jpg' tn_options=tn_options %}
47 {% else %}
48 {% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=tn_options %}
49 {% endif %}

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

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" = 70700
 LIMIT
21
SELECT ••• FROM "lego_inventory" WHERE "lego_inventory"."id" = 70700 LIMIT 21
3 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 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/templatetags/sets/drawing.py in render_set(24)
  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:

14 {% include 'sets/render_set.html' with set=set title=set.name hide_details=True tn_options=settings.THUMBS_OPTIONS_MOC_TILE %}
15 </div>
16 {% else %}
17 <div class="col-xs-6 col-sm-4 col-md-3 col-condensed">{% render_set set tn_options=settings.THUMBS_OPTIONS_SET_TILE %}</div>
18 {% endif %}
19 {% endfor %}
20 </div>
21 {% endif %}

/home/nathan/rb/site/lego/templates/sets/render_alt_build_list.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"."id" = 70121
 LIMIT
21
SELECT ••• FROM "lego_setphoto" WHERE "lego_setphoto"."id" = 70121 LIMIT 21
3 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)

/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/templatetags/sets/drawing.py in render_set(32)
  return render_to_string('sets/render_set.html',

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

42 {# Image #}
43 <div class="clearfix {% if set.is_figure %} js-hover-card{% endif %}" {% if set.is_figure %}data-hover="{% url 'minfig_hover' set.set_num %}"{% endif %}>
44 <a href="{{ set.get_absolute_url }}{% if inventory and not set.is_moc %}?inventory={{ inventory.version }}{% endif %}">
45 {% if not set.img_dir and set.is_figure %}
46 {% include 'lego/includes/render_set_img.html' with img_file='nil_mf.jpg' tn_options=tn_options %}
47 {% else %}
48 {% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=tn_options %}
49 {% endif %}

/home/nathan/rb/site/lego/templates/sets/render_set.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" = 69519
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 69519 LIMIT 21
5 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/./lego/templatetags/sets/drawing.py in render_set(32)
  return render_to_string('sets/render_set.html',

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

42 {# Image #}
43 <div class="clearfix {% if set.is_figure %} js-hover-card{% endif %}" {% if set.is_figure %}data-hover="{% url 'minfig_hover' set.set_num %}"{% endif %}>
44 <a href="{{ set.get_absolute_url }}{% if inventory and not set.is_moc %}?inventory={{ inventory.version }}{% endif %}">
45 {% if not set.img_dir and set.is_figure %}
46 {% include 'lego/includes/render_set_img.html' with img_file='nil_mf.jpg' tn_options=tn_options %}
47 {% else %}
48 {% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=tn_options %}
49 {% endif %}

/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" = 55564
 ORDER BY
"lego_setinstructions"."descr" ASC
SELECT ••• FROM "lego_setinstructions" WHERE "lego_setinstructions"."set_id" = 55564 ORDER BY "lego_setinstructions"."descr" ASC
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)

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" = 63851
 LIMIT
21
SELECT ••• FROM "lego_files_s3file" WHERE "lego_files_s3file"."id" = 63851 LIMIT 21
2 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/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" = 63850
 LIMIT
21
SELECT ••• FROM "lego_files_s3file" WHERE "lego_files_s3file"."id" = 63850 LIMIT 21
2 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/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-22T15:01:37.646921+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T15:01:37.647004+00:00'::timestamptz OR "ads_banner"."end_date" IS NULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T15:01:37.646907+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" IS NULL OR "ads_banner"."end_date" > '2026-01-22T15:01:37.647124+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
SELECT ••• FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T15:01:37.646921+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T15:01:37.647004+00:00'::timestamptz OR "ads_banner"."end_date" IS NULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T15:01:37.646907+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" IS NULL OR "ads_banner"."end_date" > '2026-01-22T15:01:37.647124+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
3 similar queries.
2.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/./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-22T15:01:37.646921+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T15:01:37.647004+00:00'::timestamptz OR "ads_banner"."end_date" IS NULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T15:01:37.646907+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" IS NULL OR "ads_banner"."end_date" > '2026-01-22T15:01:37.647124+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-22T15:01:37.646921+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T15:01:37.647004+00:00'::timestamptz OR "ads_banner"."end_date" IS NULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T15:01:37.646907+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" IS NULL OR "ads_banner"."end_date" > '2026-01-22T15:01:37.647124+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US') ORDER BY 1 DESC, RANDOM() ASC LIMIT 1
3 similar queries.
1.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/./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" = 113825
 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" = 113825 LIMIT 21
10 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/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" = 3084
 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" = 3084 LIMIT 21
11 similar queries. Duplicated 3 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" = 45893
 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" = 45893 LIMIT 21
10 similar queries.
0.20

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" = 296747
 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" = 296747 LIMIT 21
11 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/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" = 182185
 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" = 182185 LIMIT 21
10 similar queries.
0.20

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" = 719307
 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" = 719307 LIMIT 21
11 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/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" = 99055
 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" = 99055 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" = 516172
 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" = 516172 LIMIT 21
11 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/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" = 294800
 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" = 294800 LIMIT 21
10 similar queries.
0.20

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" = 26393
 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" = 26393 LIMIT 21
11 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" = 113842
 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" = 113842 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" = 3084
 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" = 3084 LIMIT 21
11 similar queries. Duplicated 3 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(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" = 81301
 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" = 81301 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" = 351255
 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" = 351255 LIMIT 21
11 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" = 80694
 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" = 80694 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" = 3084
 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" = 3084 LIMIT 21
11 similar queries. Duplicated 3 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/./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" = 260791
 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" = 260791 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" = 617657
 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" = 617657 LIMIT 21
11 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" = 69115
 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" = 69115 LIMIT 21
10 similar queries.
0.21

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" = 6878
 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" = 6878 LIMIT 21
11 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 (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-22T15:01:37.675646+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T15:01:37.675706+00:00'::timestamptz OR "ads_banner"."end_date" IS NULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T15:01:37.675635+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" IS NULL OR "ads_banner"."end_date" > '2026-01-22T15:01:37.675818+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
SELECT ••• FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T15:01:37.675646+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T15:01:37.675706+00:00'::timestamptz OR "ads_banner"."end_date" IS NULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T15:01:37.675635+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" IS NULL OR "ads_banner"."end_date" > '2026-01-22T15:01:37.675818+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
3 similar queries.
1.45

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-22T15:01:37.675646+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T15:01:37.675706+00:00'::timestamptz OR "ads_banner"."end_date" IS NULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T15:01:37.675635+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" IS NULL OR "ads_banner"."end_date" > '2026-01-22T15:01:37.675818+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-22T15:01:37.675646+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T15:01:37.675706+00:00'::timestamptz OR "ads_banner"."end_date" IS NULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T15:01:37.675635+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" IS NULL OR "ads_banner"."end_date" > '2026-01-22T15:01:37.675818+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US') ORDER BY 1 DESC, RANDOM() ASC LIMIT 1
3 similar queries.
1.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/./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.