• Michael Widenius's avatar
    New status variables: Rows_tmp_read, Handler_tmp_update and Handler_tmp_write · ba9a890f
    Michael Widenius authored
    Split status variable Rows_read to Rows_read and Rows_tmp_read so that one can see how much real data is read.
    Same was done with with Handler_update and Handler_write.
    Fixed bug in MEMORY tables where some variables was counted twice.
    Added new internal handler call 'ha_close()' to have one place to gather statistics.
    Fixed bug where thd->open_options was set to wrong value when doing admin_recreate_table()
    
    
    mysql-test/r/status.result:
      Updated test results and added new tests
    mysql-test/r/status_user.result:
      Udated test results
    mysql-test/t/status.test:
      Added new test for temporary table status variables
    sql/ha_partition.cc:
      Changed to call ha_close() instead of close()
    sql/handler.cc:
      Added internal_tmp_table variable for easy checking of temporary tables.
      Added new internal handler call 'ha_close()' to have one place to gather statistics.
      Gather statistics for internal temporary tables.
    sql/handler.h:
      Added handler variables internal_tmp_table, rows_tmp_read.
      Split function update_index_statistics() to two.
      Added ha_update_tmp_row() for faster tmp table handling with more statistics.
    sql/item_sum.cc:
      ha_write_row() -> ha_write_tmp_row()
    sql/multi_range_read.cc:
      close() -> ha_close()
    sql/mysqld.cc:
      New status variables: Rows_tmp_read, Handler_tmp_update and Handler_tmp_write
    sql/opt_range.cc:
      close() -> ha_close()
    sql/sql_base.cc:
      close() -> ha_close()
    sql/sql_class.cc:
      Added handling of rows_tmp_read
    sql/sql_class.h:
      Added new satistics variables.
      rows_read++  ->  update_rows_read() to be able to correctly count reads to internal temp tables.
      Added handler::ha_update_tmp_row()
    sql/sql_connect.cc:
      Added comment
    sql/sql_expression_cache.cc:
      ha_write_row() -> ha_write_tmp_row()
    sql/sql_select.cc:
      close() -> ha_close()
      ha_update_row() -> ha_update_tmp_row()
    sql/sql_show.cc:
      ha_write_row() -> ha_write_tmp_row()
    sql/sql_table.cc:
      Fixed bug where thd->open_options was set to wrong value when doing admin_recreate_table()
    sql/sql_union.cc:
      ha_write_row() -> ha_write_tmp_row()
    sql/sql_update.cc:
      ha_write_row() -> ha_write_tmp_row()
    sql/table.cc:
      close() -> ha_close()
    storage/heap/ha_heap.cc:
      Removed double counting of statistic variables.
      close -> ha_close() to get tmp table statistics.
    storage/maria/ha_maria.cc:
      close -> ha_close() to get tmp table statistics.
    ba9a890f
sql_select.cc 691 KB