Loading sql/ha_ndbcluster.cc +2 −2 Original line number Diff line number Diff line Loading @@ -416,9 +416,9 @@ void ha_ndbcluster::invalidateDictionaryCache() NDBDICT *dict= get_ndb()->getDictionary(); DBUG_PRINT("info", ("invalidating %s", m_tabname)); dict->invalidateTable(m_tabname); table->version=0L; /* Free when thread is ready */ table->s->version=0L; /* Free when thread is ready */ /* Invalidate indexes */ for (uint i= 0; i < table->keys; i++) for (uint i= 0; i < table->s->keys; i++) { NDBINDEX *index = (NDBINDEX *) m_index[i].index; NDBINDEX *unique_index = (NDBINDEX *) m_index[i].unique_index; Loading sql/item_func.cc +19 −19 Original line number Diff line number Diff line Loading @@ -4368,33 +4368,19 @@ longlong Item_func_row_count::val_int() Item_func_sp::Item_func_sp(sp_name *name) :Item_func(), m_name(name), m_sp(NULL) { char *empty_name= (char *) ""; maybe_null= 1; m_name->init_qname(current_thd); bzero(&dummy_table, sizeof(dummy_table)); dummy_table.share.table_cache_key = empty_name; dummy_table.share.table_name = empty_name; dummy_table.table.alias = empty_name; dummy_table.share.table_name = empty_name; dummy_table.table.maybe_null = maybe_null; dummy_table.table.in_use= current_thd; dummy_table.table.s = &dummy_table.share; dummy_table= (TABLE *)sql_alloc(sizeof(TABLE)); bzero(dummy_table, sizeof(TABLE)); } Item_func_sp::Item_func_sp(sp_name *name, List<Item> &list) :Item_func(list), m_name(name), m_sp(NULL) { char *empty_name= (char *) ""; maybe_null= 1; m_name->init_qname(current_thd); bzero(&dummy_table, sizeof(dummy_table)); dummy_table.share.table_cache_key = empty_name; dummy_table.share.table_name = empty_name; dummy_table.table.alias = empty_name; dummy_table.share.table_name = empty_name; dummy_table.table.maybe_null = maybe_null; dummy_table.table.in_use= current_thd; dummy_table.table.s = &dummy_table.share; dummy_table= (TABLE *)sql_alloc(sizeof(TABLE)); bzero(dummy_table, sizeof(TABLE)); } const char * Loading Loading @@ -4426,7 +4412,21 @@ Item_func_sp::sp_result_field(void) const THD *thd= current_thd; DBUG_ENTER("Item_func_sp::sp_result_field"); if (m_sp) field= m_sp->make_field(max_length, name, &dummy_table.table); { if (dummy_table->s == NULL) { char *empty_name= (char *) ""; TABLE_SHARE *share; dummy_table->s= share= &dummy_table->share_not_to_be_used; dummy_table->alias = empty_name; dummy_table->maybe_null = maybe_null; dummy_table->in_use= current_thd; share->table_cache_key = empty_name; share->table_name = empty_name; share->table_name = empty_name; } field= m_sp->make_field(max_length, name, dummy_table); } DBUG_RETURN(field); } Loading sql/item_func.h +1 −4 Original line number Diff line number Diff line Loading @@ -1252,10 +1252,7 @@ class Item_func_sp :public Item_func private: sp_name *m_name; mutable sp_head *m_sp; mutable struct { TABLE table; TABLE_SHARE share; } dummy_table; TABLE *dummy_table; int execute(Item **itp); Field *sp_result_field(void) const; Loading sql/sql_lex.h +1 −1 Original line number Diff line number Diff line Loading @@ -860,7 +860,7 @@ typedef struct st_lex inline bool requires_prelocking() { return query_tables_own_last; return test(query_tables_own_last); } inline void mark_as_requiring_prelocking(TABLE_LIST **tables_own_last) { Loading Loading
sql/ha_ndbcluster.cc +2 −2 Original line number Diff line number Diff line Loading @@ -416,9 +416,9 @@ void ha_ndbcluster::invalidateDictionaryCache() NDBDICT *dict= get_ndb()->getDictionary(); DBUG_PRINT("info", ("invalidating %s", m_tabname)); dict->invalidateTable(m_tabname); table->version=0L; /* Free when thread is ready */ table->s->version=0L; /* Free when thread is ready */ /* Invalidate indexes */ for (uint i= 0; i < table->keys; i++) for (uint i= 0; i < table->s->keys; i++) { NDBINDEX *index = (NDBINDEX *) m_index[i].index; NDBINDEX *unique_index = (NDBINDEX *) m_index[i].unique_index; Loading
sql/item_func.cc +19 −19 Original line number Diff line number Diff line Loading @@ -4368,33 +4368,19 @@ longlong Item_func_row_count::val_int() Item_func_sp::Item_func_sp(sp_name *name) :Item_func(), m_name(name), m_sp(NULL) { char *empty_name= (char *) ""; maybe_null= 1; m_name->init_qname(current_thd); bzero(&dummy_table, sizeof(dummy_table)); dummy_table.share.table_cache_key = empty_name; dummy_table.share.table_name = empty_name; dummy_table.table.alias = empty_name; dummy_table.share.table_name = empty_name; dummy_table.table.maybe_null = maybe_null; dummy_table.table.in_use= current_thd; dummy_table.table.s = &dummy_table.share; dummy_table= (TABLE *)sql_alloc(sizeof(TABLE)); bzero(dummy_table, sizeof(TABLE)); } Item_func_sp::Item_func_sp(sp_name *name, List<Item> &list) :Item_func(list), m_name(name), m_sp(NULL) { char *empty_name= (char *) ""; maybe_null= 1; m_name->init_qname(current_thd); bzero(&dummy_table, sizeof(dummy_table)); dummy_table.share.table_cache_key = empty_name; dummy_table.share.table_name = empty_name; dummy_table.table.alias = empty_name; dummy_table.share.table_name = empty_name; dummy_table.table.maybe_null = maybe_null; dummy_table.table.in_use= current_thd; dummy_table.table.s = &dummy_table.share; dummy_table= (TABLE *)sql_alloc(sizeof(TABLE)); bzero(dummy_table, sizeof(TABLE)); } const char * Loading Loading @@ -4426,7 +4412,21 @@ Item_func_sp::sp_result_field(void) const THD *thd= current_thd; DBUG_ENTER("Item_func_sp::sp_result_field"); if (m_sp) field= m_sp->make_field(max_length, name, &dummy_table.table); { if (dummy_table->s == NULL) { char *empty_name= (char *) ""; TABLE_SHARE *share; dummy_table->s= share= &dummy_table->share_not_to_be_used; dummy_table->alias = empty_name; dummy_table->maybe_null = maybe_null; dummy_table->in_use= current_thd; share->table_cache_key = empty_name; share->table_name = empty_name; share->table_name = empty_name; } field= m_sp->make_field(max_length, name, dummy_table); } DBUG_RETURN(field); } Loading
sql/item_func.h +1 −4 Original line number Diff line number Diff line Loading @@ -1252,10 +1252,7 @@ class Item_func_sp :public Item_func private: sp_name *m_name; mutable sp_head *m_sp; mutable struct { TABLE table; TABLE_SHARE share; } dummy_table; TABLE *dummy_table; int execute(Item **itp); Field *sp_result_field(void) const; Loading
sql/sql_lex.h +1 −1 Original line number Diff line number Diff line Loading @@ -860,7 +860,7 @@ typedef struct st_lex inline bool requires_prelocking() { return query_tables_own_last; return test(query_tables_own_last); } inline void mark_as_requiring_prelocking(TABLE_LIST **tables_own_last) { Loading