Opened 14 years ago

Closed 11 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 by francis.giraldeau@…, 14 years ago

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

comment:2 by Alex Gaynor, 14 years ago

Description: modified (diff)

Please use preview.

comment:3 by Thejaswi Puthraya, 14 years ago

Component: UncategorizedDatabase layer (models, ORM)

comment:4 by Tobias McNulty, 14 years ago

Owner: changed from nobody to Tobias McNulty
Status: newassigned

comment:5 by Tobias McNulty, 14 years ago

Resolution: duplicate
Status: assignedclosed

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

comment:6 by Jacob, 12 years ago

milestone: 1.2

Milestone 1.2 deleted

comment:7 by anonymous, 11 years ago

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

Problem persists in 1.4.1

comment:8 by anonymous, 11 years ago

Resolution: duplicate
Status: closedreopened
Type: UncategorizedBug

Problem persists in 1.4.2

Following fields also raise same exception.

  • BigIntegerField
  • PositiveIntegerField
  • PositiveSmallIntegerField
  • SmallIntegerField

comment:9 by baltazarfo@…, 11 years ago

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

in reply to:  9 comment:10 by amcharg@…, 11 years ago

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 by Tim Graham, 11 years ago

Resolution: duplicate
Status: newclosed

Duplicate of #12030

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