Commit 2153871a authored by joerg@mysql.com's avatar joerg@mysql.com

Compile fixes for NDB on Solaris and HP-UX, provided by Tomas and Jonas, re-applied in new tree.

parent 41b554da
......@@ -59,7 +59,7 @@ struct Local_key
Uint32 ref() const { return (m_page_no << MAX_TUPLES_BITS) | m_page_idx ;}
Local_key& operator= (Uint32 ref) {
Local_key& assref (Uint32 ref) {
m_page_no =ref >> MAX_TUPLES_BITS;
m_page_idx = ref & MAX_TUPLES_PER_PAGE;
return *this;
......
......@@ -153,7 +153,7 @@ void Dbtup::execTUP_ABORTREQ(Signal* signal)
Ptr<Var_page> vpage;
Uint32 ref= * tuple_ptr->get_var_part_ptr(regTabPtr.p);
Local_key tmp;
tmp=ref;
tmp.assref(ref);
sz= 0;
idx= tmp.m_page_idx;
......
......@@ -210,7 +210,7 @@ Dbtup::commit_operation(Signal* signal,
Uint32 *ref= tuple_ptr->get_var_part_ptr(regTabPtr);
memcpy(tuple_ptr, copy, 4*(Tuple_header::HeaderSize+fix_size));
Local_key tmp; tmp= *ref;
Local_key tmp; tmp.assref(*ref);
if(0) printf("%p %d %d (%d bytes) - ref: %x ", tuple_ptr,
regOperPtr->m_tuple_location.m_page_no,
regOperPtr->m_tuple_location.m_page_idx,
......
......@@ -976,7 +976,7 @@ Dbtup::disk_page_undo_alloc(Page* page, const Local_key* key,
Logfile_client::Change c[1] = {{ &alloc, sizeof(alloc) >> 2 } };
Uint64 lsn= lsman.add_entry<1>(c);
Uint64 lsn= lsman.add_entry(c, 1);
m_pgman.update_lsn(* key, lsn);
return lsn;
......@@ -1005,7 +1005,7 @@ Dbtup::disk_page_undo_update(Page* page, const Local_key* key,
ndbassert(4*(3 + sz + 1) == (sizeof(update) + 4*sz - 4));
Uint64 lsn= lsman.add_entry<3>(c);
Uint64 lsn= lsman.add_entry(c, 3);
m_pgman.update_lsn(* key, lsn);
return lsn;
......@@ -1034,7 +1034,7 @@ Dbtup::disk_page_undo_free(Page* page, const Local_key* key,
ndbassert(4*(3 + sz + 1) == (sizeof(free) + 4*sz - 4));
Uint64 lsn= lsman.add_entry<3>(c);
Uint64 lsn= lsman.add_entry(c, 3);
m_pgman.update_lsn(* key, lsn);
return lsn;
......
......@@ -2811,7 +2811,7 @@ Dbtup::validate_page(Tablerec* regTabPtr, Var_page* p)
if(ptr->m_header_bits & Tuple_header::CHAINED_ROW)
{
assert(len == fix_sz + 1);
Local_key tmp; tmp= *part;
Local_key tmp; tmp.assref(*part);
Ptr<Var_page> tmpPage;
part= get_ptr(&tmpPage, *(Var_part_ref*)part);
len= tmpPage.p->get_entry_len(tmp.m_page_idx);
......@@ -2896,7 +2896,7 @@ Dbtup::handle_size_change_after_update(KeyReqStruct* req_struct,
else
{
Local_key tmp;
tmp= *org->get_var_part_ptr(regTabPtr);
tmp.assref(*org->get_var_part_ptr(regTabPtr));
idx= tmp.m_page_idx;
alloc= pageP->get_entry_len(idx) & ~Var_page::CHAIN;
if(!(pageP->get_entry_len(idx) & Var_page::CHAIN))
......
......@@ -604,7 +604,7 @@ Dbtup::undo_createtable_callback(Signal* signal, Uint32 opPtrI, Uint32 unused)
Logfile_client::Change c[1] = {{ &create, sizeof(create) >> 2 } };
Uint64 lsn= lsman.add_entry<1>(c);
Uint64 lsn= lsman.add_entry(c, 1);
signal->theData[0] = fragOperPtr.p->lqhPtrFrag;
signal->theData[1] = 1;
......
......@@ -1882,9 +1882,8 @@ Lgman::free_log_space(Uint32 ref, Uint32 words)
return -1;
}
template<Uint32 cnt>
Uint64
Logfile_client::add_entry(const Change* src)
Logfile_client::add_entry(const Change* src, Uint32 cnt)
{
Uint32 i, tot= 0;
for(i= 0; i<cnt; i++)
......@@ -1937,9 +1936,6 @@ Logfile_client::add_entry(const Change* src)
}
}
template Uint64 Logfile_client::add_entry<1>(const Change*);
template Uint64 Logfile_client::add_entry<3>(const Change*);
void
Lgman::execSTART_RECREQ(Signal* signal)
{
......
......@@ -320,7 +320,7 @@ public:
};
Uint64 add_entry(const void*, Uint32 len);
template<Uint32 cnt> Uint64 add_entry(const Change*);
Uint64 add_entry(const Change*, Uint32 cnt);
Uint64 add_entry(Local_key, void * base, Change*);
Uint64 add_entry(Local_key, Uint32 off, Uint32 change);
......
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