mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
mysql-5.5.18 merge
This commit is contained in:
@ -1,4 +1,4 @@
|
||||
/* Copyright 2000-2008 MySQL AB, 2008 Sun Microsystems, Inc.
|
||||
/* Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
@ -11,7 +11,7 @@
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
|
||||
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */
|
||||
|
||||
|
||||
/* A lexical scanner on a temporary buffer with a yacc interface */
|
||||
@ -60,6 +60,12 @@ Query_tables_list::binlog_stmt_unsafe_errcode[BINLOG_STMT_UNSAFE_COUNT] =
|
||||
ER_BINLOG_UNSAFE_NONTRANS_AFTER_TRANS,
|
||||
ER_BINLOG_UNSAFE_MULTIPLE_ENGINES_AND_SELF_LOGGING_ENGINE,
|
||||
ER_BINLOG_UNSAFE_MIXED_STATEMENT,
|
||||
ER_BINLOG_UNSAFE_INSERT_IGNORE_SELECT,
|
||||
ER_BINLOG_UNSAFE_INSERT_SELECT_UPDATE,
|
||||
ER_BINLOG_UNSAFE_REPLACE_SELECT,
|
||||
ER_BINLOG_UNSAFE_CREATE_IGNORE_SELECT,
|
||||
ER_BINLOG_UNSAFE_CREATE_REPLACE_SELECT,
|
||||
ER_BINLOG_UNSAFE_UPDATE_IGNORE
|
||||
};
|
||||
|
||||
|
||||
@ -516,6 +522,8 @@ void lex_start(THD *thd)
|
||||
lex->server_options.port= -1;
|
||||
|
||||
lex->is_lex_started= TRUE;
|
||||
lex->used_tables= 0;
|
||||
lex->reset_slave_info.all= false;
|
||||
DBUG_VOID_RETURN;
|
||||
}
|
||||
|
||||
@ -1856,8 +1864,9 @@ void st_select_lex::init_query()
|
||||
exclude_from_table_unique_test= no_wrap_view_item= FALSE;
|
||||
nest_level= 0;
|
||||
link_next= 0;
|
||||
m_non_agg_field_used= false;
|
||||
m_agg_func_used= false;
|
||||
is_prep_leaf_list_saved= FALSE;
|
||||
|
||||
bzero((char*) expr_cache_may_be_used, sizeof(expr_cache_may_be_used));
|
||||
}
|
||||
|
||||
@ -1891,7 +1900,8 @@ void st_select_lex::init_select()
|
||||
non_agg_fields.empty();
|
||||
cond_value= having_value= Item::COND_UNDEF;
|
||||
inner_refs_list.empty();
|
||||
full_group_by_flag= 0;
|
||||
m_non_agg_field_used= false;
|
||||
m_agg_func_used= false;
|
||||
insert_tables= 0;
|
||||
merged_into= 0;
|
||||
}
|
||||
@ -2275,6 +2285,9 @@ bool st_select_lex::setup_ref_array(THD *thd, uint order_group_num)
|
||||
if (ref_pointer_array)
|
||||
DBUG_RETURN(0);
|
||||
|
||||
// find_order_in_list() may need some extra space, so multiply by two.
|
||||
order_group_num*= 2;
|
||||
|
||||
/*
|
||||
We have to create array in prepared statement memory if it is a
|
||||
prepared statement
|
||||
|
Reference in New Issue
Block a user