summaryrefslogtreecommitdiff
path: root/ndb/src
diff options
context:
space:
mode:
authorunknown <mskold@mysql.com>2005-09-20 10:35:47 +0200
committerunknown <mskold@mysql.com>2005-09-20 10:35:47 +0200
commitae3680c59b51f9a4794e2158bddd213cb5fc69d7 (patch)
treef7c547cebc3580b6590f13609ed42d85c7df9e3d /ndb/src
parent614fb882fdf14f2baa7d242026ae982024c07283 (diff)
parent0c84cf4c0dba4330e1e7c766c55507a36d94618f (diff)
downloadmariadb-git-ae3680c59b51f9a4794e2158bddd213cb5fc69d7.tar.gz
Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/usr/local/home/marty/MySQL/mysql-5.0
Diffstat (limited to 'ndb/src')
-rw-r--r--ndb/src/kernel/blocks/dbtup/DbtupRoutines.cpp15
1 files changed, 13 insertions, 2 deletions
diff --git a/ndb/src/kernel/blocks/dbtup/DbtupRoutines.cpp b/ndb/src/kernel/blocks/dbtup/DbtupRoutines.cpp
index 3170d23499a..acdad3f9f1a 100644
--- a/ndb/src/kernel/blocks/dbtup/DbtupRoutines.cpp
+++ b/ndb/src/kernel/blocks/dbtup/DbtupRoutines.cpp
@@ -1004,8 +1004,19 @@ Dbtup::read_psuedo(Uint32 attrId, Uint32* outBuffer){
return 1;
case AttributeHeader::FRAGMENT_MEMORY:
{
- Uint64 tmp= fragptr.p->noOfPages;
- tmp*= 32768;
+ Uint64 tmp = 0;
+ tmp += fragptr.p->noOfPages;
+ {
+ /**
+ * Each fragment is split into 2...get #pages from other as well
+ */
+ Uint32 twin = fragptr.p->fragmentId ^ 1;
+ FragrecordPtr twinPtr;
+ getFragmentrec(twinPtr, twin, tabptr.p);
+ ndbrequire(twinPtr.p != 0);
+ tmp += twinPtr.p->noOfPages;
+ }
+ tmp *= 32768;
memcpy(outBuffer,&tmp,8);
}
return 2;