------------------------------------------------------------
revno: 2694
revision-id: olav@stripped
parent: olav@stripped
committer: Olav Sandstaa <olav@stripped>
branch nick: mysql-6.0-falcon-sunstudio
timestamp: Sun 2008-06-08 08:52:51 +0200
message:
Fix to the second of the memory alignment issues in Bug#36745 falcon crash on solaris
The problem that caused crashes on SPARC running in 64 bit mode was due a memory
aligment issue
when "nodes" were allocated in the DeferredIndex::initialSpace. Memory is allocated in
the
initialSpace starting from the end of the memory area. Since the end of the initialSpace
was not
aligned on an address boundary this resulted in that memory allocated from it was not
aligned and thus
crashed on Solaris when running in 64 bit mot on SPARC. Fixed this by ensuring that the
size
of the initialSpace is "8 byte memory aligned" (increased the size of it from 500 bytes
to 512 bytes).
modified:
storage/falcon/DeferredIndex.h
sp1f-deferredindex.h-20070920154138-wgut7r2ov37inzmd4j7t6l7hrkycfyom
=== modified file 'storage/falcon/DeferredIndex.h'
--- a/storage/falcon/DeferredIndex.h 2008-03-11 16:15:47 +0000
+++ b/storage/falcon/DeferredIndex.h 2008-06-08 06:52:51 +0000
@@ -111,7 +111,7 @@
DIHunk *hunks;
DINode *minValue;
DINode *maxValue;
- UCHAR initialSpace[500];
+ UCHAR initialSpace[512];
UCHAR *base;
void *root;
uint currentHunkOffset;
| Thread |
|---|
| • push into mysql-6.0-falcon:mysql-6.0-falcon branch (olav:2694) Bug#36745 | Olav Sandstaa | 8 Jun |