Skip to content

Conversation

moumoutte
Copy link
Contributor

@moumoutte moumoutte commented Jan 15, 2017

  • Introduce django-perf-rec inside django-formidable
  • Deduplicate any queries on the view
  • Able to use the ContexFormSerializer without manupulating queryset in each context.

Comparison: render a form on "padawan" context with three different fields.

In Master

- db: 'SELECT ... FROM "django_session" WHERE ("django_session"."expire_date" > # AND "django_session"."session_key" = #)'
- db: 'SELECT ... FROM "formidable_formidable" WHERE "formidable_formidable"."id" = #'
- db: 'SELECT ... FROM "formidable_field" WHERE "formidable_field"."form_id" IN (#) ORDER BY "formidable_field"."order" ASC
- db: 'SELECT ... FROM "formidable_field" WHERE "formidable_field"."form_id" = # ORDER BY "formidable_field"."order" ASC'
- db: 'SELECT ... FROM "formidable_access" WHERE ("formidable_access"."access_id" = # AND NOT ("formidable_access"."level" = #) AND "formidable_access"."field_id" IN (...))'
- db: 'SELECT ... FROM "formidable_validation" WHERE "formidable_validation"."field_id" = #'
- db: 'SELECT ... FROM "formidable_access" WHERE ("formidable_access"."field_id" = # AND "formidable_access"."access_id" = #)'
- db: 'SELECT ... FROM "formidable_access" WHERE ("formidable_access"."field_id" = # AND "formidable_access"."access_id" = #)'
- db: 'SELECT ... FROM "formidable_item" WHERE "formidable_item"."field_id" = # ORDER BY "formidable_item"."order" ASC'
- db: 'SELECT ... FROM "formidable_default" WHERE "formidable_default"."field_id" = #'
- db: 'SELECT ... FROM "formidable_validation" WHERE "formidable_validation"."field_id" = #'
- db: 'SELECT ... FROM "formidable_access" WHERE ("formidable_access"."field_id" = # AND "formidable_access"."access_id" = #)'
- db: 'SELECT ... FROM "formidable_access" WHERE ("formidable_access"."field_id" = # AND "formidable_access"."access_id" = #)'
- db: 'SELECT ... FROM "formidable_item" WHERE "formidable_item"."field_id" = # ORDER BY "formidable_item"."order" ASC'
- db: 'SELECT ... FROM "formidable_default" WHERE "formidable_default"."field_id" = #'

In current branch

- db: 'SELECT ... FROM "django_session" WHERE ("django_session"."expire_date" > # AND "django_session"."session_key" = #)'
- db: 'SELECT ... FROM "formidable_formidable" WHERE "formidable_formidable"."id" = #'
- db: 'SELECT ... FROM "formidable_field" WHERE "formidable_field"."form_id" = # ORDER BY "formidable_field"."order" ASC'
- db: 'SELECT ... FROM "formidable_access" WHERE ("formidable_access"."access_id" = # AND NOT ("formidable_access"."level" = #) AND "formidable_access"."field_id" IN (...))'
- db: SELECT ... FROM "formidable_item" WHERE "formidable_item"."field_id" IN (...) ORDER BY "formidable_item"."order" ASC
- db: SELECT ... FROM "formidable_validation" WHERE "formidable_validation"."field_id" IN (...)
- db: SELECT ... FROM "formidable_default" WHERE "formidable_default"."field_id" IN (...)

@moumoutte moumoutte force-pushed the 54_review_hidden_fields_queryset branch from 3abea2f to 9acab5d Compare January 15, 2017 14:54
@moumoutte moumoutte force-pushed the 54_review_hidden_fields_queryset branch from 9acab5d to f1097ad Compare January 15, 2017 15:02
@moumoutte moumoutte force-pushed the 54_review_hidden_fields_queryset branch from dcb2e23 to de92bf9 Compare January 15, 2017 15:28
@moumoutte moumoutte force-pushed the 54_review_hidden_fields_queryset branch from de92bf9 to b152027 Compare January 15, 2017 15:29
@brunobord
Copy link
Contributor

superseded by #160

@brunobord brunobord closed this Jan 16, 2017
brunobord added a commit that referenced this pull request Jan 17, 2017
Changelog

* Added a make target to install the demo site (#152).
* Added django-perf-rec module for tests and improved SQL queries in `ContextFormDetailView` (#54, #154, #160).
* Added test to count queries on dynamic form queryset + improve performances (#155, #156, #162).
* Added test to count queries on retrieve builder view + improve performances by removing duplicate queries (#157, #158, #163).
@brunobord brunobord mentioned this pull request Jan 17, 2017
@moumoutte moumoutte deleted the 54_review_hidden_fields_queryset branch February 20, 2017 10:53
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