• Nayuta Yanagisawa's avatar
    MDEV-5271 Support engine-defined attributes per partition · c5d09f73
    Nayuta Yanagisawa authored
    Make it possible to specify engine-defined attributes on partitions
    as well as tables.
    
    If an engine-defined attribute is only specified at the table level,
    it applies to all the partitions in the table.
    This is a backward-compatible behavior.
    
    If the same attribute is specified both at the table level and the
    partition level, the per-partition one takes precedence.
    So, we can consider per-table attributes as default values.
    
    One cannot specify engine-defined attributes on subpartitions.
    
    Implementation details:
    
    * We store per-partition attributes in the partition_element class
      because we already have the part_comment field, which is for
      per-partition comments.
    
    * In the case of ALTER TABLE statements, the partition_elements in
      table->part_info is set up by mysql_unpack_partition().
      So, we parse per-partition attributes after the call of the function.
    c5d09f73
sql_partition.cc 305 KB