Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Optimize a query in Decidim::ResourceVersionsHelper.resource_version #289

Merged

Conversation

takahashim
Copy link
Collaborator

🎩 What? Why?

ディベートのコメント一覧画面において、versions テーブルに対する不要な(重い)クエリを発行しないようにするための修正です。

ディベートのコメント一覧画面ではversionsテーブルは件数しか使用していないのですが、現状SELECT "versions".* FROM "versions" WHERE ...というクエリを発行するようになっています。そのため、これをSELECT count(*) ...にするものです。

ちなみに現状は上記クエリを発行した直後で SELECT count(*) ... を再度発行するのですが、2回目以降はキャッシュが使われる(のでDBアクセスそのものが1回分省ける)ようでした。

Use `select count(*) from versions ...` instead of `select versions.* from versions ...`
@ayuki-joto ayuki-joto merged commit ed3fdeb into codeforjapan:develop Oct 12, 2021
@takahashim takahashim deleted the fix-debates-versions-performance branch October 12, 2021 11:01
@takahashim
Copy link
Collaborator Author

I made a PR to upstream to fix this issue. decidim/decidim#8393

@takahashim takahashim changed the title Decidim::ResourceVersionsHelper.resource_version でのクエリを最適化する Optimize a query in Decidim::ResourceVersionsHelper.resource_version Oct 12, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants