# File lib/innodb/data_dictionary.rb, line 642
  def record_describer_by_index_name(table_name, index_name)
    if data_dictionary_index?(table_name, index_name)
      return data_dictionary_index_describer(table_name, index_name)
    end

    unless index = index_by_name(table_name, index_name)
      raise "Index #{index_name} for table #{table_name} not found"
    end

    describer = Innodb::RecordDescriber.new

    if index["TYPE"] & INDEX_TYPE_FLAG[:CLUSTERED] != 0
      describer.type :clustered
    else
      describer.type :secondary
    end

    each_column_description_by_index_name(table_name, index_name) do |column|
      case column[:type]
      when :key
        describer.key column[:name], *column[:description]
      when :row
        describer.row column[:name], *column[:description]
      end
    end

    describer
  end