Opened 6 weeks ago

Last modified 42 hours ago

#36913 assigned Cleanup/optimization

Optimise ChoiceField / MultipleChoiceField handling of duplicate submissions — at Initial Version

Reported by: Jake Howard Owned by: Sarah Boyce
Component: Forms Version: 6.0
Severity: Normal Keywords:
Cc: Triage Stage: Accepted
Has patch: yes Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description

When a ChoiceField / MultipleChoiceField has 5 possible choices, but the form submits 25 values, the choices values are compared once per submitted value. If the submitted values are duplicates, the validation doesn't terminate early, but can still spend a lot of time unnecessarily validating values. This can be very slow when large (~30k) numbers of values are submitted.

A suggested fix is to only validate the unique submitted values (for example for val in set(value)).

This issue was reported to the Security Team, but deemed not a security issue due to the minimal impact when given reasonable input (in the bounds of the security policy).

Change History (0)

Note: See TracTickets for help on using tickets.
Back to Top