• unknown's avatar
    BUG#16002: Make partition functions that are unsigned work properly · faa5f3e0
    unknown authored
    
    mysql-test/r/partition.result:
      A number of new test cases for unsigned partition functions
    mysql-test/r/partition_error.result:
      A number of new test cases for unsigned partition functions
    mysql-test/r/partition_range.result:
      A number of new test cases for unsigned partition functions
    mysql-test/t/partition.test:
      A number of new test cases for unsigned partition functions
    mysql-test/t/partition_error.test:
      A number of new test cases for unsigned partition functions
    mysql-test/t/partition_range.test:
      A number of new test cases for unsigned partition functions
    sql/ha_partition.cc:
      Error message for no partition found needs to take signed/unsigned into account when printing erroneus value
    sql/partition_element.h:
      Introduced signed_flag and max_value flag on partition elements
      Also list is now a list of a struct rather than simply longlong values
      Small rearranges of order
    sql/partition_info.cc:
      Introduced signed_flag and max_value flag on partition elements
      Also list is now a list of a struct rather than simply longlong values
      Small rearranges of order
      Lots of new code to handle checks of proper definition of table when
      partition function is unsigned
    sql/partition_info.h:
      Mostly rearrangement of code and some addition of a THD object in check_partition_info call
      plus a new method for comparing unsigned values
    sql/share/errmsg.txt:
      Negative values not ok for unsigned partition functions
    sql/sql_partition.cc:
      Fixed a multi-thread bug (when defining several partitioned tables in parallel)
      New code to generate partition syntax that takes into account sign of constants.
      Made function fix_fields_part_func more reusable.
      Fixed a number of get_partition_id functions for range and list and similar functions
      for partition pruning code.
      Unfortunately fairly much duplication of code with just small changes.
    sql/sql_partition.h:
      New function headers
    sql/sql_show.cc:
      Changed list of values for LIST partitioned tables
      Also fixed printing of unsigned values in INFORMATION SCHEMA for partitioned table
    sql/sql_table.cc:
      Fixed for new interface
    sql/sql_yacc.yy:
      Moved definition of struct to partition_element.h
      Added code to keep track of sign of constants in
      RANGE and LIST partitions
    sql/table.cc:
      Fixed for new interface
    faa5f3e0
partition_info.cc 22.4 KB