[asterisk-bugs] [Asterisk 0015170]: [patch] MySQL ENUM Type Not Detected

Asterisk Bug Tracker noreply at bugs.digium.com
Thu Aug 20 15:59:00 CDT 2009


A NOTE has been added to this issue. 
====================================================================== 
https://issues.asterisk.org/view.php?id=15170 
====================================================================== 
Reported By:                leobrown
Assigned To:                tilghman
====================================================================== 
Project:                    Asterisk
Issue ID:                   15170
Category:                   Addons/cdr_addon_mysql
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     assigned
Asterisk Version:           SVN 
Regression:                 No 
SVN Branch (only for SVN checkouts, not tarball releases): N/A 
SVN Revision (number only!):  
Request Review:              
====================================================================== 
Date Submitted:             2009-05-21 07:45 CDT
Last Modified:              2009-08-20 15:59 CDT
====================================================================== 
Summary:                    [patch] MySQL ENUM Type Not Detected
Description: 
The raw values for the AMAFLAGS column are detected by a switch case that
checks all numeric types. Unfortunately ENUM is not in the list. ENUM is
technically a numeric type. So if you have the column definition:

  amaflags ENUM('DOCUMENTATION','BILLING','OMIT')

This will work. However, if you have the definition:

  amaflags ENUM('info','outbound','inbound')

This will *not* work and the column will be set to NULL due to an
unparsable value. By adding the ENUM column type instead, both syntaxes
will work!

====================================================================== 

---------------------------------------------------------------------- 
 (0109405) tilghman (administrator) - 2009-08-20 15:59
 https://issues.asterisk.org/view.php?id=15170#c109405 
---------------------------------------------------------------------- 
While enum may be implemented internally as a numeric type, I am
uncomfortable with this change.  Enumerated columns are supposed to enforce
specific values, and this change subverts that.  For example, if the enum
specifies the possible values out of order, then this change could cause
the incorrect enumerated type to be used, when a number is inserted, and
the corresponding column is picked.

My vote on this is down. 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2009-08-20 15:59 tilghman       Note Added: 0109405                          
======================================================================




More information about the asterisk-bugs mailing list