mirror of
https://github.com/MariaDB/server.git
synced 2025-09-03 20:43:11 +03:00
Merge perch.ndb.mysql.com:/home/jonas/src/50-ndb
into perch.ndb.mysql.com:/home/jonas/src/51-ndb
This commit is contained in:
@@ -326,15 +326,17 @@ Backup::execCONTINUEB(Signal* signal)
|
|||||||
ptr.p->files.getPtr(filePtr, ptr.p->ctlFilePtr);
|
ptr.p->files.getPtr(filePtr, ptr.p->ctlFilePtr);
|
||||||
FsBuffer & buf = filePtr.p->operation.dataBuffer;
|
FsBuffer & buf = filePtr.p->operation.dataBuffer;
|
||||||
|
|
||||||
if(buf.getFreeSize() + buf.getMinRead() < buf.getUsableSize()) {
|
if(buf.getFreeSize() < buf.getMaxWrite()) {
|
||||||
jam();
|
jam();
|
||||||
TablePtr tabPtr LINT_SET_PTR;
|
TablePtr tabPtr LINT_SET_PTR;
|
||||||
c_tablePool.getPtr(tabPtr, Tdata2);
|
c_tablePool.getPtr(tabPtr, Tdata2);
|
||||||
|
|
||||||
DEBUG_OUT("Backup - Buffer full - " << buf.getFreeSize()
|
DEBUG_OUT("Backup - Buffer full - "
|
||||||
<< " + " << buf.getMinRead()
|
<< buf.getFreeSize()
|
||||||
<< " < " << buf.getUsableSize()
|
<< " < " << buf.getMaxWrite()
|
||||||
<< " - tableId = " << tabPtr.p->tableId);
|
<< " (sz: " << buf.getUsableSize()
|
||||||
|
<< " getMinRead: " << buf.getMinRead()
|
||||||
|
<< ") - tableId = " << tabPtr.p->tableId);
|
||||||
|
|
||||||
signal->theData[0] = BackupContinueB::BUFFER_FULL_META;
|
signal->theData[0] = BackupContinueB::BUFFER_FULL_META;
|
||||||
signal->theData[1] = Tdata1;
|
signal->theData[1] = Tdata1;
|
||||||
|
@@ -558,7 +558,7 @@ public:
|
|||||||
static const int DISK_SPEED_CHECK_DELAY = 100;
|
static const int DISK_SPEED_CHECK_DELAY = 100;
|
||||||
|
|
||||||
STATIC_CONST(NO_OF_PAGES_META_FILE =
|
STATIC_CONST(NO_OF_PAGES_META_FILE =
|
||||||
(MAX_WORDS_META_FILE + BACKUP_WORDS_PER_PAGE - 1) /
|
(2*MAX_WORDS_META_FILE + BACKUP_WORDS_PER_PAGE - 1) /
|
||||||
BACKUP_WORDS_PER_PAGE);
|
BACKUP_WORDS_PER_PAGE);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -46,8 +46,8 @@ public:
|
|||||||
/**
|
/**
|
||||||
* Seize element from pool - return i
|
* Seize element from pool - return i
|
||||||
*
|
*
|
||||||
* Note must be either added using <b>add</b> or released
|
* Note *must* be added using <b>add</b> (even before hash.release)
|
||||||
* using <b>release</b>
|
* or be released using pool
|
||||||
*/
|
*/
|
||||||
bool seize(Ptr<T> &);
|
bool seize(Ptr<T> &);
|
||||||
|
|
||||||
@@ -360,8 +360,15 @@ DLHashTableImpl<P, T, U>::remove(Ptr<T> & ptr)
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
const Uint32 hv = ptr.p->hashValue() & mask;
|
const Uint32 hv = ptr.p->hashValue() & mask;
|
||||||
|
if (hashValues[hv] == ptr.i)
|
||||||
|
{
|
||||||
hashValues[hv] = next;
|
hashValues[hv] = next;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// Will add assert in 5.1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if(next != RNIL)
|
if(next != RNIL)
|
||||||
{
|
{
|
||||||
@@ -386,8 +393,15 @@ DLHashTableImpl<P, T, U>::release(Ptr<T> & ptr)
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
const Uint32 hv = ptr.p->hashValue() & mask;
|
const Uint32 hv = ptr.p->hashValue() & mask;
|
||||||
|
if (hashValues[hv] == ptr.i)
|
||||||
|
{
|
||||||
hashValues[hv] = next;
|
hashValues[hv] = next;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// Will add assert in 5.1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if(next != RNIL)
|
if(next != RNIL)
|
||||||
{
|
{
|
||||||
|
@@ -42,8 +42,8 @@ public:
|
|||||||
/**
|
/**
|
||||||
* Seize element from pool - return i
|
* Seize element from pool - return i
|
||||||
*
|
*
|
||||||
* Note must be either added using <b>add</b> or released
|
* Note *must* be added using <b>add</b> (even before hash.release)
|
||||||
* using <b>release</b>
|
* or be released using pool
|
||||||
*/
|
*/
|
||||||
bool seize(Ptr<T> &);
|
bool seize(Ptr<T> &);
|
||||||
|
|
||||||
@@ -374,8 +374,15 @@ DLHashTable2<T, U>::remove(Ptr<T> & ptr){
|
|||||||
prevP->nextHash = next;
|
prevP->nextHash = next;
|
||||||
} else {
|
} else {
|
||||||
const Uint32 hv = ptr.p->hashValue() & mask;
|
const Uint32 hv = ptr.p->hashValue() & mask;
|
||||||
|
if (hashValues[hv] == ptr.i)
|
||||||
|
{
|
||||||
hashValues[hv] = next;
|
hashValues[hv] = next;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// Will add assert in 5.1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if(next != RNIL){
|
if(next != RNIL){
|
||||||
T * nextP = (T*)thePool.getPtr(next); // cast
|
T * nextP = (T*)thePool.getPtr(next); // cast
|
||||||
@@ -395,8 +402,15 @@ DLHashTable2<T, U>::release(Ptr<T> & ptr){
|
|||||||
prevP->nextHash = next;
|
prevP->nextHash = next;
|
||||||
} else {
|
} else {
|
||||||
const Uint32 hv = ptr.p->hashValue() & mask;
|
const Uint32 hv = ptr.p->hashValue() & mask;
|
||||||
|
if (hashValues[hv] == ptr.i)
|
||||||
|
{
|
||||||
hashValues[hv] = next;
|
hashValues[hv] = next;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// Will add assert in 5.1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if(next != RNIL){
|
if(next != RNIL){
|
||||||
T * nextP = (T*)thePool.getPtr(next); // cast
|
T * nextP = (T*)thePool.getPtr(next); // cast
|
||||||
|
Reference in New Issue
Block a user