List:Commits« Previous MessageNext Message »
From:jonas Date:December 23 2005 9:50am
Subject:bk commit into 5.1 tree (jonas:1.1977)
View as plain text  
Below is the list of changes that have just been committed into a local
5.1 repository of jonas. When jonas does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html

ChangeSet
  1.1977 05/12/23 10:50:22 jonas@eel.(none) +4 -0
  ndb - opt nr
    fix ordered indexes

  storage/ndb/src/kernel/blocks/dbtup/DbtupTrigger.cpp
    1.16 05/12/23 10:50:13 jonas@eel.(none) +2 -3
    remove unused arg to removeTuxEntries

  storage/ndb/src/kernel/blocks/dbtup/DbtupExecQuery.cpp
    1.35 05/12/23 10:50:13 jonas@eel.(none) +45 -0
    New method for deleting row during NR

  storage/ndb/src/kernel/blocks/dbtup/DbtupCommit.cpp
    1.11 05/12/23 10:50:13 jonas@eel.(none) +0 -4
    remove unused code

  storage/ndb/src/kernel/blocks/dbtup/Dbtup.hpp
    1.33 05/12/23 10:50:13 jonas@eel.(none) +1 -1
    New method for deleting row during NR

# This is a BitKeeper patch.  What follows are the unified diffs for the
# set of deltas contained in the patch.  The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User:	jonas
# Host:	eel.(none)
# Root:	/home/jonas/src/51-ndb

--- 1.32/storage/ndb/src/kernel/blocks/dbtup/Dbtup.hpp	2005-12-21 16:52:29 +01:00
+++ 1.33/storage/ndb/src/kernel/blocks/dbtup/Dbtup.hpp	2005-12-23 10:50:13 +01:00
@@ -1389,6 +1389,7 @@
 
   int nr_read_pk(Uint32 fragPtr, const Local_key*, Uint32* dataOut, bool&copy);
   int nr_update_gci(Uint32 fragPtr, const Local_key*, Uint32 gci);
+  int nr_delete(Signal*, Uint32 fragPtr, const Local_key*);
 private:
   BLOCK_DEFINES(Dbtup);
 
@@ -2113,7 +2114,6 @@
                                Tablerec* regTabPtr);
 
   void removeTuxEntries(Signal* signal,
-                        Operationrec* regOperPtr,
                         Tablerec* regTabPtr);
 
 // *****************************************************************

--- 1.10/storage/ndb/src/kernel/blocks/dbtup/DbtupCommit.cpp	2005-12-21 16:41:52 +01:00
+++ 1.11/storage/ndb/src/kernel/blocks/dbtup/DbtupCommit.cpp	2005-12-23 10:50:13 +01:00
@@ -51,10 +51,6 @@
     
     PagePtr pagePtr;
     Tuple_header* ptr= (Tuple_header*)get_ptr(&pagePtr, &tmp, regTabPtr.p);
-
-    Uint32 *disk_ref_ptr = ptr->get_disk_ref_ptr(regTabPtr.p); 
-    signal->theData[0] = disk_ref_ptr[0];
-    signal->theData[1] = disk_ref_ptr[1];
     
     if (regTabPtr.p->m_attributes[MM].m_no_of_varsize)
     {

--- 1.34/storage/ndb/src/kernel/blocks/dbtup/DbtupExecQuery.cpp	2005-12-23 08:34:19 +01:00
+++ 1.35/storage/ndb/src/kernel/blocks/dbtup/DbtupExecQuery.cpp	2005-12-23 10:50:13 +01:00
@@ -3036,3 +3036,48 @@
   }
   return ret;
 }
+
+#include <signaldata/TuxMaint.hpp>
+
+int
+Dbtup::nr_delete(Signal* signal, Uint32 fragPtrI, const Local_key* key)
+{
+  FragrecordPtr fragPtr;
+  fragPtr.i= fragPtrI;
+  ptrCheckGuard(fragPtr, cnoOfFragrec, fragrecord);
+  TablerecPtr tablePtr;
+  tablePtr.i= fragPtr.p->fragTableId;
+  ptrCheckGuard(tablePtr, cnoOfTablerec, tablerec);
+
+  Local_key tmp = * key;
+  tmp.m_page_no= getRealpid(fragPtr.p, tmp.m_page_no); 
+  
+  PagePtr pagePtr;
+  Tuple_header* ptr= (Tuple_header*)get_ptr(&pagePtr, &tmp, tablePtr.p);
+
+  if (!tablePtr.p->tuxCustomTriggers.isEmpty()) 
+  {
+    jam();
+    TuxMaintReq* req = (TuxMaintReq*)signal->getDataPtrSend();
+    req->tableId = fragPtr.p->fragTableId;
+    req->fragId = fragPtr.p->fragmentId;
+    req->pageId = tmp.m_page_no;
+    req->pageIndex = tmp.m_page_idx;
+    req->tupVersion = ptr->get_tuple_version();
+    req->opInfo = TuxMaintReq::OpRemove;
+    removeTuxEntries(signal, tablePtr.p);
+  }
+  
+  Uint32 *disk_ref_ptr = ptr->get_disk_ref_ptr(tablePtr.p); 
+  signal->theData[0] = disk_ref_ptr[0];
+  signal->theData[1] = disk_ref_ptr[1];
+  
+  if (tablePtr.p->m_attributes[MM].m_no_of_varsize)
+  {
+    jam();
+    free_var_rec(fragPtr.p, tablePtr.p, &tmp, pagePtr);
+  } else {
+    jam();
+    free_fix_rec(fragPtr.p, tablePtr.p, &tmp, (Fix_page*)pagePtr.p);
+  }
+}

--- 1.15/storage/ndb/src/kernel/blocks/dbtup/DbtupTrigger.cpp	2005-11-07 12:19:07 +01:00
+++ 1.16/storage/ndb/src/kernel/blocks/dbtup/DbtupTrigger.cpp	2005-12-23 10:50:13 +01:00
@@ -1159,7 +1159,7 @@
   req->pageIndex = regOperPtr->m_tuple_location.m_page_idx;
   req->tupVersion = tupVersion;
   req->opInfo = TuxMaintReq::OpRemove;
-  removeTuxEntries(signal, regOperPtr, regTabPtr);
+  removeTuxEntries(signal, regTabPtr);
 }
 
 void
@@ -1191,12 +1191,11 @@
   req->pageIndex = regOperPtr->m_tuple_location.m_page_idx;
   req->tupVersion = tupVersion;
   req->opInfo = TuxMaintReq::OpRemove;
-  removeTuxEntries(signal, regOperPtr, regTabPtr);
+  removeTuxEntries(signal, regTabPtr);
 }
 
 void
 Dbtup::removeTuxEntries(Signal* signal,
-                        Operationrec* regOperPtr,
                         Tablerec* regTabPtr)
 {
   TuxMaintReq* const req = (TuxMaintReq*)signal->getDataPtrSend();
Thread
bk commit into 5.1 tree (jonas:1.1977)jonas23 Dec