mirror of
https://github.com/MariaDB/server.git
synced 2025-09-02 09:41:40 +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,16 +326,18 @@ Backup::execCONTINUEB(Signal* signal)
|
||||
ptr.p->files.getPtr(filePtr, ptr.p->ctlFilePtr);
|
||||
FsBuffer & buf = filePtr.p->operation.dataBuffer;
|
||||
|
||||
if(buf.getFreeSize() + buf.getMinRead() < buf.getUsableSize()) {
|
||||
if(buf.getFreeSize() < buf.getMaxWrite()) {
|
||||
jam();
|
||||
TablePtr tabPtr LINT_SET_PTR;
|
||||
c_tablePool.getPtr(tabPtr, Tdata2);
|
||||
|
||||
DEBUG_OUT("Backup - Buffer full - " << buf.getFreeSize()
|
||||
<< " + " << buf.getMinRead()
|
||||
<< " < " << buf.getUsableSize()
|
||||
<< " - tableId = " << tabPtr.p->tableId);
|
||||
|
||||
DEBUG_OUT("Backup - Buffer full - "
|
||||
<< buf.getFreeSize()
|
||||
<< " < " << buf.getMaxWrite()
|
||||
<< " (sz: " << buf.getUsableSize()
|
||||
<< " getMinRead: " << buf.getMinRead()
|
||||
<< ") - tableId = " << tabPtr.p->tableId);
|
||||
|
||||
signal->theData[0] = BackupContinueB::BUFFER_FULL_META;
|
||||
signal->theData[1] = Tdata1;
|
||||
signal->theData[2] = Tdata2;
|
||||
|
@@ -557,8 +557,8 @@ public:
|
||||
NDB_TICKS m_reset_disk_speed_time;
|
||||
static const int DISK_SPEED_CHECK_DELAY = 100;
|
||||
|
||||
STATIC_CONST(NO_OF_PAGES_META_FILE =
|
||||
(MAX_WORDS_META_FILE + BACKUP_WORDS_PER_PAGE - 1) /
|
||||
STATIC_CONST(NO_OF_PAGES_META_FILE =
|
||||
(2*MAX_WORDS_META_FILE + BACKUP_WORDS_PER_PAGE - 1) /
|
||||
BACKUP_WORDS_PER_PAGE);
|
||||
|
||||
/**
|
||||
|
@@ -46,8 +46,8 @@ public:
|
||||
/**
|
||||
* Seize element from pool - return i
|
||||
*
|
||||
* Note must be either added using <b>add</b> or released
|
||||
* using <b>release</b>
|
||||
* Note *must* be added using <b>add</b> (even before hash.release)
|
||||
* or be released using pool
|
||||
*/
|
||||
bool seize(Ptr<T> &);
|
||||
|
||||
@@ -360,7 +360,14 @@ DLHashTableImpl<P, T, U>::remove(Ptr<T> & ptr)
|
||||
else
|
||||
{
|
||||
const Uint32 hv = ptr.p->hashValue() & mask;
|
||||
hashValues[hv] = next;
|
||||
if (hashValues[hv] == ptr.i)
|
||||
{
|
||||
hashValues[hv] = next;
|
||||
}
|
||||
else
|
||||
{
|
||||
// Will add assert in 5.1
|
||||
}
|
||||
}
|
||||
|
||||
if(next != RNIL)
|
||||
@@ -386,7 +393,14 @@ DLHashTableImpl<P, T, U>::release(Ptr<T> & ptr)
|
||||
else
|
||||
{
|
||||
const Uint32 hv = ptr.p->hashValue() & mask;
|
||||
hashValues[hv] = next;
|
||||
if (hashValues[hv] == ptr.i)
|
||||
{
|
||||
hashValues[hv] = next;
|
||||
}
|
||||
else
|
||||
{
|
||||
// Will add assert in 5.1
|
||||
}
|
||||
}
|
||||
|
||||
if(next != RNIL)
|
||||
|
@@ -42,8 +42,8 @@ public:
|
||||
/**
|
||||
* Seize element from pool - return i
|
||||
*
|
||||
* Note must be either added using <b>add</b> or released
|
||||
* using <b>release</b>
|
||||
* Note *must* be added using <b>add</b> (even before hash.release)
|
||||
* or be released using pool
|
||||
*/
|
||||
bool seize(Ptr<T> &);
|
||||
|
||||
@@ -374,7 +374,14 @@ DLHashTable2<T, U>::remove(Ptr<T> & ptr){
|
||||
prevP->nextHash = next;
|
||||
} else {
|
||||
const Uint32 hv = ptr.p->hashValue() & mask;
|
||||
hashValues[hv] = next;
|
||||
if (hashValues[hv] == ptr.i)
|
||||
{
|
||||
hashValues[hv] = next;
|
||||
}
|
||||
else
|
||||
{
|
||||
// Will add assert in 5.1
|
||||
}
|
||||
}
|
||||
|
||||
if(next != RNIL){
|
||||
@@ -395,7 +402,14 @@ DLHashTable2<T, U>::release(Ptr<T> & ptr){
|
||||
prevP->nextHash = next;
|
||||
} else {
|
||||
const Uint32 hv = ptr.p->hashValue() & mask;
|
||||
hashValues[hv] = next;
|
||||
if (hashValues[hv] == ptr.i)
|
||||
{
|
||||
hashValues[hv] = next;
|
||||
}
|
||||
else
|
||||
{
|
||||
// Will add assert in 5.1
|
||||
}
|
||||
}
|
||||
|
||||
if(next != RNIL){
|
||||
|
Reference in New Issue
Block a user