Opened 7 years ago

Closed 3 years ago

#11998 closed Bug (duplicate)

IntegerField not validated for overflow

Reported by: francis.giraldeau@… Owned by: Tobias McNulty
Component: Database layer (models, ORM) Version: 1.4
Severity: Normal Keywords:
Cc: Triage Stage: Unreviewed
Has patch: no Needs documentation: yes
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description (last modified by Alex Gaynor)

Let be this small model :

class IntegerOverflowTest(models.Model):
    someint = models.IntegerField()

For mysql, maximum values for signed integer is 2147483647 [1]

In admin interface, defining a value more than the maximum raises this exception :

    Warning : Out of range value for column 'someint' at row 1

I would have expected that the form to be validated and prompt the error gracefully.

[1] http://dev.mysql.com/doc/refman/5.0/en/numeric-types.html

Change History (11)

comment:1 Changed 7 years ago by francis.giraldeau@…

A small note : this warning is not raised while using sqlite3. It's reproducible under at least mysql.

comment:2 Changed 7 years ago by Alex Gaynor

Description: modified (diff)

Please use preview.

comment:3 Changed 7 years ago by Thejaswi Puthraya

Component: UncategorizedDatabase layer (models, ORM)

comment:4 Changed 7 years ago by Tobias McNulty

Owner: changed from nobody to Tobias McNulty
Status: newassigned

comment:5 Changed 7 years ago by Tobias McNulty

Resolution: duplicate
Status: assignedclosed

This sounds like model validation to me.. closing as duplicate of #6845

comment:6 Changed 5 years ago by Jacob

milestone: 1.2

Milestone 1.2 deleted

comment:7 Changed 4 years ago by anonymous

Easy pickings: unset
Severity: Normal
Type: Uncategorized
UI/UX: unset
Version: 1.11.4

Problem persists in 1.4.1

comment:8 Changed 4 years ago by anonymous

Resolution: duplicate
Status: closedreopened
Type: UncategorizedBug

Problem persists in 1.4.2

Following fields also raise same exception.

  • BigIntegerField
  • PositiveIntegerField
  • PositiveSmallIntegerField
  • SmallIntegerField

comment:9 Changed 4 years ago by baltazarfo@…

Needs documentation: set
Resolution: fixed
Status: reopenedclosed
Triage Stage: UnreviewedAccepted

comment:10 in reply to:  9 Changed 3 years ago by amcharg@…

Resolution: fixed
Status: closednew
Triage Stage: AcceptedUnreviewed

Replying to baltazarfo@…:
Just checked with 1.4.6 and this seems to still be an issue with postgresql at least. Checked the code and I don't see any validators being added. I assume any fix for this would raise a ValidationError or like BigIntegerField pass min_value or max_value to the form field.

I can write a failing test if that helps.

comment:11 Changed 3 years ago by Tim Graham

Resolution: duplicate
Status: newclosed

Duplicate of #12030

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