← Back to team overview

maria-developers team mailing list archive

Re: [Commits] 22f532c: MDEV-4260 Don't create frm files for temporary tables

 

Hi Sergei,

ok to push. One note inline.

On Fri, Jun 20, 2014 at 11:29:36AM +0200, serg@xxxxxxxxxxx wrote:
> revision-id: 22f532cfb2f40132e2f7b079a3aafb109af92c26
> parent(s): fb8818c1aff9ce67b74f965c019cad93addd811e
> committer: Sergei Golubchik
> branch nick: maria
> timestamp: 2014-06-20 11:29:12 +0200
> message:
> 
> MDEV-4260 Don't create frm files for temporary tables
> 
> * Don't write frm for tmp tables
> * pass frm image down to open_table_uncached, when possible
> * don't use truncate-by-recreate for temp tables - cannot recreate
>   without frm, and delete_all_rows is faster anyway
> * remove HTON_FLUSH_AFTER_RENAME (BDB-ism, unused for years)
> 
> ---
>  mysql-test/r/temp_table_frm.result | 20 +++++++++++
>  mysql-test/t/temp_table_frm.test   | 13 ++++++++
>  sql/handler.h                      |  2 +-
>  sql/sql_base.cc                    | 14 +++++++-
>  sql/sql_base.h                     |  3 +-
>  sql/sql_table.cc                   | 27 +++------------
>  sql/sql_truncate.cc                | 68 +-------------------------------------
>  sql/unireg.cc                      |  3 +-
>  8 files changed, 56 insertions(+), 94 deletions(-)
> 
...skip...

> diff --git a/sql/sql_base.cc b/sql/sql_base.cc
> index 0558066..7d69ccb 100644
> --- a/sql/sql_base.cc
> +++ b/sql/sql_base.cc
> @@ -5561,7 +5563,17 @@ TABLE *open_table_uncached(THD *thd, handlerton *hton,
>                         strend(saved_cache_key)+1, tmp_path);
>    share->db_plugin= ha_lock_engine(thd, hton);
>  
> -  if (open_table_def(thd, share, GTS_TABLE | GTS_USE_DISCOVERY))
> +  /*
> +    Use the frm image, if possible, open the file otherwise.
> +
> +    The image might be unavailable in ALTER TABLE, when the discovering
> +    engine took over the ownership (see TABLE::read_frm_image).
> +  */
> +  int res= frm->str
> +    ? res= share->init_from_binary_frm_image(thd, false, frm->str, frm->length)
Excessive "res="?

Regards,
Sergey


Follow ups