Re: [Django] #35673: ExceptionReporter.get_traceback_data() does not handle when request.GET data exceeds DATA_UPLOAD_MAX_NUMBER_FIELDS

20 views
Skip to first unread message

Django

unread,
Aug 16, 2024, 12:09:19 PM8/16/24
to django-...@googlegroups.com
#35673: ExceptionReporter.get_traceback_data() does not handle when request.GET
data exceeds DATA_UPLOAD_MAX_NUMBER_FIELDS
---------------------------------+------------------------------------
Reporter: Pēteris Caune | Owner: (none)
Type: Bug | Status: new
Component: Error reporting | Version: 5.1
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
---------------------------------+------------------------------------
Comment (by Mohammad Salehi):

Hello, I would like to work on this issue if you’re okay with it?
--
Ticket URL: <https://code.djangoproject.com/ticket/35673#comment:2>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

Django

unread,
Aug 17, 2024, 12:05:15 PM8/17/24
to django-...@googlegroups.com
#35673: ExceptionReporter.get_traceback_data() does not handle when request.GET
data exceeds DATA_UPLOAD_MAX_NUMBER_FIELDS
-------------------------------------+-------------------------------------
Reporter: Pēteris Caune | Owner: Mohammad
| Salehi
Type: Bug | Status: assigned
Component: Error reporting | Version: 5.1
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Mohammad Salehi):

* owner: (none) => Mohammad Salehi
* status: new => assigned

--
Ticket URL: <https://code.djangoproject.com/ticket/35673#comment:3>

Django

unread,
Aug 24, 2024, 4:50:51 PM8/24/24
to django-...@googlegroups.com
#35673: ExceptionReporter.get_traceback_data() does not handle when request.GET
data exceeds DATA_UPLOAD_MAX_NUMBER_FIELDS
-------------------------------------+-------------------------------------
Reporter: Pēteris Caune | Owner: Mohammad
| Salehi
Type: Bug | Status: assigned
Component: Error reporting | Version: 5.1
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Comment (by Mohammad Salehi):

Hello,

I have worked on this issue and tested some possible solutions. These are
the results:

1_ Adding a flag in `QueryDict` class:
This does not work because `QueryDict` is recreated with each request so
the flag state is not kept requests.

2_ Changing return value of `GET` and `POST` methods in `WSGIRequest`
class:
Changing how `GET` and `POST` methods return values will only stop the
`TooManyFieldsSent` error from showing. This will make `GET` and `POST`
methods not work at all. Request processing will not work correctly and
important data will be lost. This approach only hides the error message
and does not fix the real problem with handling data.

3_ Removing all `GET` data:
If we set `request.GET` to an empt dict in foo method, it shows the error
and the problem got fixed but it doesn't make sense to alter GET data.
--
Ticket URL: <https://code.djangoproject.com/ticket/35673#comment:4>

Django

unread,
Aug 29, 2024, 1:58:01 PM8/29/24
to django-...@googlegroups.com
#35673: ExceptionReporter.get_traceback_data() does not handle when request.GET
data exceeds DATA_UPLOAD_MAX_NUMBER_FIELDS
-------------------------------------+-------------------------------------
Reporter: Pēteris Caune | Owner: Mohammad
| Salehi
Type: Bug | Status: assigned
Component: Error reporting | Version: 5.1
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Comment (by Mohammad Salehi):

We are encountering a very specific and complex error in the lower layers
of the framework. Currently, we use `request.GET` to retrieve GET
parameters. However, if `request.GET` encounters an error for any reason,
how can the higher layers of the framework access these values and display
the necessary information on the error page?

which this issue's scenario has exactly the very same problem.

What is your opinion on this?
--
Ticket URL: <https://code.djangoproject.com/ticket/35673#comment:5>

Django

unread,
Apr 21, 2025, 11:30:27 AMApr 21
to django-...@googlegroups.com
#35673: ExceptionReporter.get_traceback_data() does not handle when request.GET
data exceeds DATA_UPLOAD_MAX_NUMBER_FIELDS
---------------------------------+----------------------------------------
Reporter: Pēteris Caune | Owner: Ahmed Nassar
Type: Bug | Status: assigned
Component: Error reporting | Version: 5.1
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
---------------------------------+----------------------------------------
Changes (by Ahmed Nassar):

* owner: Mohammad Salehi => Ahmed Nassar

Comment:

I'll be happy to work on this ticket and submit my PR soon.
--
Ticket URL: <https://code.djangoproject.com/ticket/35673#comment:6>

Django

unread,
Aug 4, 2025, 7:14:48 AMAug 4
to django-...@googlegroups.com
#35673: ExceptionReporter.get_traceback_data() does not handle when request.GET
data exceeds DATA_UPLOAD_MAX_NUMBER_FIELDS
---------------------------------+----------------------------------------
Reporter: Pēteris Caune | Owner: Ahmed Nassar
Type: Bug | Status: assigned
Component: Error reporting | Version: 5.1
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
---------------------------------+----------------------------------------
Changes (by Ahmed Nassar):

* has_patch: 0 => 1

--
Ticket URL: <https://code.djangoproject.com/ticket/35673#comment:7>

Django

unread,
Aug 6, 2025, 8:34:03 AMAug 6
to django-...@googlegroups.com
#35673: ExceptionReporter.get_traceback_data() does not handle when request.GET
data exceeds DATA_UPLOAD_MAX_NUMBER_FIELDS
---------------------------------+----------------------------------------
Reporter: Pēteris Caune | Owner: Ahmed Nassar
Type: Bug | Status: assigned
Component: Error reporting | Version: 5.1
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 1
Easy pickings: 0 | UI/UX: 0
---------------------------------+----------------------------------------
Changes (by Sarah Boyce):

* needs_better_patch: 0 => 1

--
Ticket URL: <https://code.djangoproject.com/ticket/35673#comment:8>

Django

unread,
Aug 8, 2025, 8:59:02 PMAug 8
to django-...@googlegroups.com
#35673: ExceptionReporter.get_traceback_data() does not handle when request.GET
data exceeds DATA_UPLOAD_MAX_NUMBER_FIELDS
---------------------------------+----------------------------------------
Reporter: Pēteris Caune | Owner: Ahmed Nassar
Type: Bug | Status: assigned
Component: Error reporting | Version: 5.1
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
---------------------------------+----------------------------------------
Changes (by Ahmed Nassar):

* needs_better_patch: 1 => 0

--
Ticket URL: <https://code.djangoproject.com/ticket/35673#comment:9>

Django

unread,
Aug 11, 2025, 3:53:18 AMAug 11
to django-...@googlegroups.com
#35673: ExceptionReporter.get_traceback_data() does not handle when request.GET
data exceeds DATA_UPLOAD_MAX_NUMBER_FIELDS
---------------------------------+----------------------------------------
Reporter: Pēteris Caune | Owner: Ahmed Nassar
Type: Bug | Status: assigned
Component: Error reporting | Version: 5.1
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 1
Easy pickings: 0 | UI/UX: 0
---------------------------------+----------------------------------------
Changes (by Sarah Boyce):

* needs_better_patch: 0 => 1

--
Ticket URL: <https://code.djangoproject.com/ticket/35673#comment:10>
Reply all
Reply to author
Forward
0 new messages