mirror of
https://github.com/MariaDB/server.git
synced 2025-02-01 19:41:47 +01:00
Merge joreland@bk-internal.mysql.com:/home/bk/mysql-5.0-ndb
into mysql.com:/home/jonas/src/mysql-5.0-ndb
This commit is contained in:
commit
9ab5f5c0d9
4 changed files with 79 additions and 6 deletions
|
@ -204,6 +204,81 @@ Dbacc::Dbacc(const class Configuration & conf):
|
||||||
addRecSignal(GSN_SET_VAR_REQ, &Dbacc::execSET_VAR_REQ);
|
addRecSignal(GSN_SET_VAR_REQ, &Dbacc::execSET_VAR_REQ);
|
||||||
|
|
||||||
initData();
|
initData();
|
||||||
|
|
||||||
|
#ifdef VM_TRACE
|
||||||
|
{
|
||||||
|
void* tmp[] = { &expDirRangePtr,
|
||||||
|
&gnsDirRangePtr,
|
||||||
|
&newDirRangePtr,
|
||||||
|
&rdDirRangePtr,
|
||||||
|
&nciOverflowrangeptr,
|
||||||
|
&expDirptr,
|
||||||
|
&rdDirptr,
|
||||||
|
&sdDirptr,
|
||||||
|
&nciOverflowDirptr,
|
||||||
|
&fragrecptr,
|
||||||
|
&fsConnectptr,
|
||||||
|
&fsOpptr,
|
||||||
|
&lcpConnectptr,
|
||||||
|
&operationRecPtr,
|
||||||
|
&idrOperationRecPtr,
|
||||||
|
©InOperPtr,
|
||||||
|
©OperPtr,
|
||||||
|
&mlpqOperPtr,
|
||||||
|
&queOperPtr,
|
||||||
|
&readWriteOpPtr,
|
||||||
|
&tgnptMainOpPtr,
|
||||||
|
&iopOverflowRecPtr,
|
||||||
|
&tfoOverflowRecPtr,
|
||||||
|
&porOverflowRecPtr,
|
||||||
|
&priOverflowRecPtr,
|
||||||
|
&rorOverflowRecPtr,
|
||||||
|
&sorOverflowRecPtr,
|
||||||
|
&troOverflowRecPtr,
|
||||||
|
&ancPageptr,
|
||||||
|
&colPageptr,
|
||||||
|
&ccoPageptr,
|
||||||
|
&datapageptr,
|
||||||
|
&delPageptr,
|
||||||
|
&excPageptr,
|
||||||
|
&expPageptr,
|
||||||
|
&gdiPageptr,
|
||||||
|
&gePageptr,
|
||||||
|
&gflPageptr,
|
||||||
|
&idrPageptr,
|
||||||
|
&ilcPageptr,
|
||||||
|
&inpPageptr,
|
||||||
|
&iopPageptr,
|
||||||
|
&lastPageptr,
|
||||||
|
&lastPrevpageptr,
|
||||||
|
&lcnPageptr,
|
||||||
|
&lcnCopyPageptr,
|
||||||
|
&lupPageptr,
|
||||||
|
&priPageptr,
|
||||||
|
&pwiPageptr,
|
||||||
|
&ciPageidptr,
|
||||||
|
&gsePageidptr,
|
||||||
|
&isoPageptr,
|
||||||
|
&nciPageidptr,
|
||||||
|
&rsbPageidptr,
|
||||||
|
&rscPageidptr,
|
||||||
|
&slPageidptr,
|
||||||
|
&sscPageidptr,
|
||||||
|
&rlPageptr,
|
||||||
|
&rlpPageptr,
|
||||||
|
&ropPageptr,
|
||||||
|
&rpPageptr,
|
||||||
|
&slPageptr,
|
||||||
|
&spPageptr,
|
||||||
|
&rootfragrecptr,
|
||||||
|
&scanPtr,
|
||||||
|
&srVersionPtr,
|
||||||
|
&tabptr,
|
||||||
|
&undopageptr
|
||||||
|
};
|
||||||
|
init_globals_list(tmp, sizeof(tmp)/sizeof(tmp[0]));
|
||||||
|
}
|
||||||
|
#endif
|
||||||
}//Dbacc::Dbacc()
|
}//Dbacc::Dbacc()
|
||||||
|
|
||||||
Dbacc::~Dbacc()
|
Dbacc::~Dbacc()
|
||||||
|
|
|
@ -2449,14 +2449,14 @@ void Dbacc::execACC_COMMITREQ(Signal* signal)
|
||||||
operationRecPtr.p->transactionstate = IDLE;
|
operationRecPtr.p->transactionstate = IDLE;
|
||||||
operationRecPtr.p->operation = ZUNDEFINED_OP;
|
operationRecPtr.p->operation = ZUNDEFINED_OP;
|
||||||
if(Toperation != ZREAD){
|
if(Toperation != ZREAD){
|
||||||
|
rootfragrecptr.i = fragrecptr.p->myroot;
|
||||||
|
ptrCheckGuard(rootfragrecptr, crootfragmentsize, rootfragmentrec);
|
||||||
rootfragrecptr.p->m_commit_count++;
|
rootfragrecptr.p->m_commit_count++;
|
||||||
if (Toperation != ZINSERT) {
|
if (Toperation != ZINSERT) {
|
||||||
if (Toperation != ZDELETE) {
|
if (Toperation != ZDELETE) {
|
||||||
return;
|
return;
|
||||||
} else {
|
} else {
|
||||||
jam();
|
jam();
|
||||||
rootfragrecptr.i = fragrecptr.p->myroot;
|
|
||||||
ptrCheckGuard(rootfragrecptr, crootfragmentsize, rootfragmentrec);
|
|
||||||
rootfragrecptr.p->noOfElements--;
|
rootfragrecptr.p->noOfElements--;
|
||||||
fragrecptr.p->slack += operationRecPtr.p->insertDeleteLen;
|
fragrecptr.p->slack += operationRecPtr.p->insertDeleteLen;
|
||||||
if (fragrecptr.p->slack > fragrecptr.p->slackCheck) {
|
if (fragrecptr.p->slack > fragrecptr.p->slackCheck) {
|
||||||
|
@ -2476,8 +2476,6 @@ void Dbacc::execACC_COMMITREQ(Signal* signal)
|
||||||
}//if
|
}//if
|
||||||
} else {
|
} else {
|
||||||
jam(); /* EXPAND PROCESS HANDLING */
|
jam(); /* EXPAND PROCESS HANDLING */
|
||||||
rootfragrecptr.i = fragrecptr.p->myroot;
|
|
||||||
ptrCheckGuard(rootfragrecptr, crootfragmentsize, rootfragmentrec);
|
|
||||||
rootfragrecptr.p->noOfElements++;
|
rootfragrecptr.p->noOfElements++;
|
||||||
fragrecptr.p->slack -= operationRecPtr.p->insertDeleteLen;
|
fragrecptr.p->slack -= operationRecPtr.p->insertDeleteLen;
|
||||||
if (fragrecptr.p->slack >= (1u << 31)) {
|
if (fragrecptr.p->slack >= (1u << 31)) {
|
||||||
|
|
|
@ -5698,7 +5698,7 @@ extern "C" pthread_handler_decl(ndb_util_thread_func,
|
||||||
}
|
}
|
||||||
|
|
||||||
List<NDB_SHARE> util_open_tables;
|
List<NDB_SHARE> util_open_tables;
|
||||||
set_timespec(abstime, ndb_cache_check_time);
|
set_timespec(abstime, 0);
|
||||||
for (;;)
|
for (;;)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
@ -5716,6 +5716,7 @@ extern "C" pthread_handler_decl(ndb_util_thread_func,
|
||||||
|
|
||||||
if (ndb_cache_check_time == 0)
|
if (ndb_cache_check_time == 0)
|
||||||
{
|
{
|
||||||
|
/* Wake up in 10 seconds to check if value has changed */
|
||||||
set_timespec(abstime, 10);
|
set_timespec(abstime, 10);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1150,7 +1150,6 @@ public:
|
||||||
table_map used_tables;
|
table_map used_tables;
|
||||||
USER_CONN *user_connect;
|
USER_CONN *user_connect;
|
||||||
CHARSET_INFO *db_charset;
|
CHARSET_INFO *db_charset;
|
||||||
List<TABLE> temporary_tables_should_be_free; // list of temporary tables
|
|
||||||
/*
|
/*
|
||||||
FIXME: this, and some other variables like 'count_cuted_fields'
|
FIXME: this, and some other variables like 'count_cuted_fields'
|
||||||
maybe should be statement/cursor local, that is, moved to Statement
|
maybe should be statement/cursor local, that is, moved to Statement
|
||||||
|
|
Loading…
Add table
Reference in a new issue