Commit 8afda1cb authored by mskold@mysql.com's avatar mskold@mysql.com

Merge mskold@build.mysql.com:/home/bk/mysql-4.1

into mysql.com:/usr/local/home/marty/MySQL/test/mysql-4.1
parents ad12db76 d555950b
......@@ -95,7 +95,7 @@ private:
BaseString _localConfigFileName;
struct LocalConfig _localConfig;
int _ownNodeId;
Uint32 _ownNodeId;
BaseString m_connectString;
......
......@@ -67,7 +67,7 @@ printSCANTABCONF(FILE * output, const Uint32 * theData, Uint32 len, Uint16 recei
fprintf(output, " Operation(s) [api tc rows len]:\n");
ScanTabConf::OpData * op = (ScanTabConf::OpData*)
(theData + ScanTabConf::SignalLength);
for(int i = 0; i<op_count; i++){
for(size_t i = 0; i<op_count; i++){
if(op->info != ScanTabConf::EndOfData)
fprintf(output, " [0x%x 0x%x %d %d]",
op->apiPtrI, op->tcPtrI,
......
......@@ -94,7 +94,7 @@ ConfigRetriever::do_connect(int exit_on_connect_failure){
while(retry < retry_max){
Uint32 type = CR_ERROR;
BaseString tmp;
for (int i = 0; i<_localConfig.ids.size(); i++){
for (unsigned int i = 0; i<_localConfig.ids.size(); i++){
MgmtSrvrId * m = &_localConfig.ids[i];
switch(m->type){
case MgmId_TCP:
......@@ -139,7 +139,7 @@ ConfigRetriever::getConfig() {
if(m_handle != 0){
p = getConfig(m_handle);
} else {
for (int i = 0; i<_localConfig.ids.size(); i++){
for (unsigned int i = 0; i<_localConfig.ids.size(); i++){
MgmtSrvrId * m = &_localConfig.ids[i];
switch(m->type){
case MgmId_File:
......
......@@ -241,7 +241,7 @@ bool LocalConfig::readFile(const char * filename, bool &fopenError)
return false;
}
int sz = 1024;
unsigned int sz = 1024;
char* theString = (char*)NdbMem_Allocate(sz);
theString[0] = 0;
......
......@@ -1141,7 +1141,7 @@ void Ndb::setCatalogName(const char * a_catalog_name)
int len = snprintf(prefixName, sizeof(prefixName), "%s%c%s%c",
theDataBase, table_name_separator,
theDataBaseSchema, table_name_separator);
prefixEnd = prefixName + (len < sizeof(prefixName) ? len :
prefixEnd = prefixName + (len < (int) sizeof(prefixName) ? len :
sizeof(prefixName) - 1);
}
}
......@@ -1160,7 +1160,7 @@ void Ndb::setSchemaName(const char * a_schema_name)
int len = snprintf(prefixName, sizeof(prefixName), "%s%c%s%c",
theDataBase, table_name_separator,
theDataBaseSchema, table_name_separator);
prefixEnd = prefixName + (len < sizeof(prefixName) ? len :
prefixEnd = prefixName + (len < (int) sizeof(prefixName) ? len :
sizeof(prefixName) - 1);
}
}
......
......@@ -229,7 +229,8 @@ NdbDictionary::Table::Table(const char * name)
}
NdbDictionary::Table::Table(const NdbDictionary::Table & org)
: m_impl(* new NdbTableImpl(* this))
: NdbDictionary::Object(),
m_impl(* new NdbTableImpl(* this))
{
m_impl.assign(org.m_impl);
}
......
......@@ -383,7 +383,7 @@ void
NdbTableImpl::buildColumnHash(){
const Uint32 size = m_columns.size();
size_t i;
int i;
for(i = 31; i >= 0; i--){
if(((1 << i) & size) != 0){
m_columnHashMask = (1 << (i + 1)) - 1;
......@@ -393,7 +393,7 @@ NdbTableImpl::buildColumnHash(){
Vector<Uint32> hashValues;
Vector<Vector<Uint32> > chains; chains.fill(size, hashValues);
for(i = 0; i<size; i++){
for(i = 0; i< (int) size; i++){
Uint32 hv = Hash(m_columns[i]->getName()) & 0xFFFE;
Uint32 bucket = hv & m_columnHashMask;
bucket = (bucket < size ? bucket : bucket - size);
......@@ -407,7 +407,7 @@ NdbTableImpl::buildColumnHash(){
m_columnHash.fill((unsigned)size-1, tmp); // Default no chaining
Uint32 pos = 0; // In overflow vector
for(i = 0; i<size; i++){
for(i = 0; i< (int) size; i++){
Uint32 sz = chains[i].size();
if(sz == 1){
Uint32 col = chains[i][0];
......@@ -1389,7 +1389,7 @@ NdbDictInterface::createOrAlterTable(Ndb & ndb,
internalName);
bool haveAutoIncrement = false;
Uint64 autoIncrementValue;
Uint64 autoIncrementValue = 0;
for(i = 0; i<sz; i++){
const NdbColumnImpl * col = impl.m_columns[i];
if(col == 0)
......
......@@ -392,7 +392,8 @@ Ndb::handleReceivedSignal(NdbApiSignal* aSignal, LinearSectionPtr ptr[3])
break;
case NdbReceiver::NDB_SCANRECEIVER:
tCon->theScanningOp->receiver_delivered(tRec);
theWaiter.m_state = (tWaitState == WAIT_SCAN ? NO_WAIT : tWaitState);
theWaiter.m_state = (((WaitSignalType) tWaitState) == WAIT_SCAN ?
(Uint32) NO_WAIT : tWaitState);
break;
default:
goto InvalidSignal;
......@@ -764,7 +765,8 @@ Ndb::handleReceivedSignal(NdbApiSignal* aSignal, LinearSectionPtr ptr[3])
switch(com){
case 1:
tCon->theScanningOp->receiver_delivered(tRec);
theWaiter.m_state = (tWaitState == WAIT_SCAN ? NO_WAIT : tWaitState);
theWaiter.m_state = (((WaitSignalType) tWaitState) == WAIT_SCAN ?
(Uint32) NO_WAIT : tWaitState);
break;
case 0:
break;
......@@ -888,8 +890,8 @@ Ndb::completedTransaction(NdbConnection* aCon)
return;
}//if
} else {
ndbout << "theNoOfSentTransactions = " << theNoOfSentTransactions;
ndbout << " theListState = " << aCon->theListState;
ndbout << "theNoOfSentTransactions = " << (int) theNoOfSentTransactions;
ndbout << " theListState = " << (int) aCon->theListState;
ndbout << " theTransArrayIndex = " << aCon->theTransArrayIndex;
ndbout << endl << flush;
#ifdef VM_TRACE
......@@ -940,7 +942,7 @@ Ndb::pollCompleted(NdbConnection** aCopyArray)
aCopyArray[i] = theCompletedTransactionsArray[i];
if (aCopyArray[i]->theListState != NdbConnection::InCompletedList) {
ndbout << "pollCompleted error ";
ndbout << aCopyArray[i]->theListState << endl;
ndbout << (int) aCopyArray[i]->theListState << endl;
abort();
}//if
theCompletedTransactionsArray[i] = NULL;
......
......@@ -163,7 +163,7 @@ void Ndb::setup(Ndb_cluster_connection *ndb_cluster_connection,
int len = snprintf(prefixName, sizeof(prefixName), "%s%c%s%c",
theDataBase, table_name_separator,
theDataBaseSchema, table_name_separator);
prefixEnd = prefixName + (len < sizeof(prefixName) ? len :
prefixEnd = prefixName + (len < (int) sizeof(prefixName) ? len :
sizeof(prefixName) - 1);
NdbMutex_Lock(&createNdbMutex);
......
......@@ -1981,8 +1981,8 @@ int ha_ndbcluster::index_end()
int ha_ndbcluster::index_read(byte *buf,
const byte *key, uint key_len,
enum ha_rkey_function find_flag)
const byte *key, uint key_len,
enum ha_rkey_function find_flag)
{
DBUG_ENTER("index_read");
DBUG_PRINT("enter", ("active_index: %u, key_len: %u, find_flag: %d",
......@@ -1992,7 +1992,7 @@ int ha_ndbcluster::index_read(byte *buf,
start_key.key= key;
start_key.length= key_len;
start_key.flag= find_flag;
DBUG_RETURN(read_range_first(&start_key, NULL, false, true));
DBUG_RETURN(read_range_first_to_buf(&start_key, NULL, false, true, buf));
}
......@@ -2059,10 +2059,25 @@ int ha_ndbcluster::read_range_first(const key_range *start_key,
const key_range *end_key,
bool eq_range, bool sorted)
{
KEY* key_info;
int error= 1;
byte* buf= table->record[0];
DBUG_ENTER("ha_ndbcluster::read_range_first");
DBUG_RETURN(read_range_first_to_buf(start_key,
end_key,
eq_range,
sorted,
buf));
}
inline
int ha_ndbcluster::read_range_first_to_buf(const key_range *start_key,
const key_range *end_key,
bool eq_range, bool sorted,
byte* buf)
{
KEY* key_info;
int error= 1;
DBUG_ENTER("ha_ndbcluster::read_range_first_to_buf");
DBUG_PRINT("info", ("eq_range: %d, sorted: %d", eq_range, sorted));
if (m_active_cursor)
......
......@@ -93,6 +93,10 @@ class ha_ndbcluster: public handler
int read_range_first(const key_range *start_key,
const key_range *end_key,
bool eq_range, bool sorted);
int read_range_first_to_buf(const key_range *start_key,
const key_range *end_key,
bool eq_range, bool sorted,
byte* buf);
int read_range_next();
bool get_error_message(int error, String *buf);
......
......@@ -1434,9 +1434,9 @@ int handler::read_range_first(const key_range *start_key,
start_key->length,
start_key->flag);
if (result)
DBUG_RETURN((result == HA_ERR_KEY_NOT_FOUND ||
result == HA_ERR_END_OF_FILE) ? HA_ERR_END_OF_FILE :
result);
DBUG_RETURN((result == HA_ERR_KEY_NOT_FOUND)
? HA_ERR_END_OF_FILE
: result);
DBUG_RETURN (compare_key(end_range) <= 0 ? 0 : HA_ERR_END_OF_FILE);
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment