[openstreetmap/openstreetmap-website] Preload element tags when showing changesets (PR #4569)
Anton Khorev
notifications at github.com
Sat Mar 9 13:59:07 UTC 2024
Changeset show action generates a sql query for each element to get its tags:
```
OldWayTag Load (0.5ms) SELECT "way_tags".* FROM "way_tags" WHERE "way_tags"."way_id" = $1 AND "way_tags"."version" = $2 [["way_id", 52], ["version", 1]]
↳ app/models/old_way.rb:82:in `to_h'
OldWayTag Load (0.4ms) SELECT "way_tags".* FROM "way_tags" WHERE "way_tags"."way_id" = $1 AND "way_tags"."version" = $2 [["way_id", 53], ["version", 1]]
↳ app/models/old_way.rb:82:in `to_h'
OldWayTag Load (0.3ms) SELECT "way_tags".* FROM "way_tags" WHERE "way_tags"."way_id" = $1 AND "way_tags"."version" = $2 [["way_id", 54], ["version", 1]]
↳ app/models/old_way.rb:82:in `to_h'
OldWayTag Load (0.3ms) SELECT "way_tags".* FROM "way_tags" WHERE "way_tags"."way_id" = $1 AND "way_tags"."version" = $2 [["way_id", 55], ["version", 1]]
↳ app/models/old_way.rb:82:in `to_h'
OldWayTag Load (0.4ms) SELECT "way_tags".* FROM "way_tags" WHERE "way_tags"."way_id" = $1 AND "way_tags"."version" = $2 [["way_id", 56], ["version", 1]]
↳ app/models/old_way.rb:82:in `to_h'
OldWayTag Load (0.3ms) SELECT "way_tags".* FROM "way_tags" WHERE "way_tags"."way_id" = $1 AND "way_tags"."version" = $2 [["way_id", 57], ["version", 1]]
↳ app/models/old_way.rb:82:in `to_h'
OldWayTag Load (0.3ms) SELECT "way_tags".* FROM "way_tags" WHERE "way_tags"."way_id" = $1 AND "way_tags"."version" = $2 [["way_id", 58], ["version", 1]]
↳ app/models/old_way.rb:82:in `to_h'
```
It's possible to roll them into one query. Classic pagination has a parameter for that.
```
OldWayTag Load (0.3ms) SELECT "way_tags".* FROM "way_tags" WHERE "way_tags"."way_id" IN ($1, $2, $3, $4, $5, $6, $7) AND "way_tags"."version" = $8 [["way_id", 52], ["way_id", 53], ["way_id", 54], ["way_id", 55], ["way_id", 56], ["way_id", 57], ["way_id", 58], ["version", 1]]
↳ app/views/changesets/show.html.erb:82
```
You can view, comment on, or merge this pull request online at:
https://github.com/openstreetmap/openstreetmap-website/pull/4569
-- Commit Summary --
* Preload element tags when showing changesets
-- File Changes --
M app/controllers/changesets_controller.rb (6)
-- Patch Links --
https://github.com/openstreetmap/openstreetmap-website/pull/4569.patch
https://github.com/openstreetmap/openstreetmap-website/pull/4569.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/openstreetmap/openstreetmap-website/pull/4569
You are receiving this because you are subscribed to this thread.
Message ID: <openstreetmap/openstreetmap-website/pull/4569 at github.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstreetmap.org/pipermail/rails-dev/attachments/20240309/76ef24d5/attachment.htm>
More information about the rails-dev
mailing list