mirror of
https://github.com/MariaDB/server.git
synced 2026-01-06 05:22:24 +03:00
Merge perch.ndb.mysql.com:/home/jonas/src/51-ndb
into perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new
This commit is contained in:
@@ -765,16 +765,6 @@ static int ndbcluster_create_schema_table(THD *thd)
|
||||
void ndbcluster_setup_binlog_table_shares(THD *thd)
|
||||
{
|
||||
int done_find_all_files= 0;
|
||||
if (!apply_status_share &&
|
||||
ndbcluster_check_apply_status_share() == 0)
|
||||
{
|
||||
if (!done_find_all_files)
|
||||
{
|
||||
ndbcluster_find_all_files(thd);
|
||||
done_find_all_files= 1;
|
||||
}
|
||||
ndbcluster_create_apply_status_table(thd);
|
||||
}
|
||||
if (!schema_share &&
|
||||
ndbcluster_check_schema_share() == 0)
|
||||
{
|
||||
@@ -784,6 +774,19 @@ void ndbcluster_setup_binlog_table_shares(THD *thd)
|
||||
done_find_all_files= 1;
|
||||
}
|
||||
ndbcluster_create_schema_table(thd);
|
||||
// always make sure we create the 'schema' first
|
||||
if (!schema_share)
|
||||
return;
|
||||
}
|
||||
if (!apply_status_share &&
|
||||
ndbcluster_check_apply_status_share() == 0)
|
||||
{
|
||||
if (!done_find_all_files)
|
||||
{
|
||||
ndbcluster_find_all_files(thd);
|
||||
done_find_all_files= 1;
|
||||
}
|
||||
ndbcluster_create_apply_status_table(thd);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -312,15 +312,16 @@ inline
|
||||
void
|
||||
DLFifoListImpl<P,T,U>::release()
|
||||
{
|
||||
Ptr<T> p;
|
||||
while(head.firstItem != RNIL)
|
||||
Ptr<T> ptr;
|
||||
Uint32 curr = head.firstItem;
|
||||
while(curr != RNIL)
|
||||
{
|
||||
p.i = head.firstItem;
|
||||
p.p = thePool.getPtr(head.firstItem);
|
||||
T * t = p.p;
|
||||
head.firstItem = t->U::nextList;
|
||||
release(p);
|
||||
thePool.getPtr(ptr, curr);
|
||||
curr = ptr.p->U::nextList;
|
||||
thePool.release(ptr);
|
||||
}
|
||||
head.firstItem = RNIL;
|
||||
head.lastItem = RNIL;
|
||||
}
|
||||
|
||||
template <typename P, typename T, typename U>
|
||||
|
||||
@@ -332,13 +332,15 @@ void
|
||||
DLListImpl<P,T,U>::release()
|
||||
{
|
||||
Ptr<T> ptr;
|
||||
while((ptr.i = head.firstItem) != RNIL)
|
||||
Uint32 curr = head.firstItem;
|
||||
while(curr != RNIL)
|
||||
{
|
||||
thePool.getPtr(ptr);
|
||||
head.firstItem = ptr.p->U::nextList;
|
||||
thePool.getPtr(ptr, curr);
|
||||
curr = ptr.p->U::nextList;
|
||||
thePool.release(ptr);
|
||||
}
|
||||
}
|
||||
head.firstItem = RNIL;
|
||||
}
|
||||
|
||||
template <typename P, typename T, typename U>
|
||||
inline
|
||||
|
||||
@@ -302,13 +302,15 @@ void
|
||||
SLListImpl<P, T, U>::release()
|
||||
{
|
||||
Ptr<T> ptr;
|
||||
while((ptr.i = head.firstItem) != RNIL)
|
||||
Uint32 curr = head.firstItem;
|
||||
while(curr != RNIL)
|
||||
{
|
||||
thePool.getPtr(ptr);
|
||||
head.firstItem = ptr.p->U::nextList;
|
||||
thePool.getPtr(ptr, curr);
|
||||
curr = ptr.p->U::nextList;
|
||||
thePool.release(ptr);
|
||||
}
|
||||
}
|
||||
head.firstItem = RNIL;
|
||||
}
|
||||
|
||||
template <typename P, typename T, typename U>
|
||||
inline
|
||||
|
||||
@@ -1303,7 +1303,7 @@ NdbDictionaryImpl::fetchGlobalTableImpl(const BaseString& internalTableName)
|
||||
int ret = getBlobTables(*impl);
|
||||
if (ret != 0) {
|
||||
delete impl;
|
||||
return 0;
|
||||
impl = 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user