Below is the list of changes that have just been committed into a local
maria repository of guilhem. When guilhem 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@stripped, 2008-03-21 22:29:05+01:00, guilhem@stripped +4 -0
Fix for pushbuild problems: innocuous Valgrind error (uninitialized
bytes in unimportant, unused pieces of index pages) and test failure
because test requires Maria. Compiler warning.
About Valgrind error, two of the three bzero() added here are
needed to silence the error (the third is added for symmetry).
mysql-test/t/maria-gis-rtree.test@stripped, 2008-03-21 22:29:01+01:00, guilhem@stripped
+1 -0
requires Maria
storage/maria/ma_loghandler.c@stripped, 2008-03-21 22:29:01+01:00, guilhem@stripped
+5 -1
"uint64->uint16 possible loss of precision" on Windows
storage/maria/ma_rt_index.c@stripped, 2008-03-21 22:29:01+01:00, guilhem@stripped +2
-2
We bzero the entire new page, as is done in _ma_enlarge_root()
for B-tree pages. This silences Valgrind warnings and allows
better compression.
storage/maria/ma_rt_split.c@stripped, 2008-03-21 22:29:01+01:00, guilhem@stripped +1
-1
We bzero the entire new page, as is done in _ma_enlarge_root()
for B-tree pages. This silences Valgrind warnings and allows
better compression.
diff -Nrup a/mysql-test/t/maria-gis-rtree.test b/mysql-test/t/maria-gis-rtree.test
--- a/mysql-test/t/maria-gis-rtree.test 2008-03-17 22:31:48 +01:00
+++ b/mysql-test/t/maria-gis-rtree.test 2008-03-21 22:29:01 +01:00
@@ -1,3 +1,4 @@
+-- source include/have_maria.inc
-- source include/have_geometry.inc
set storage_engine=maria;
diff -Nrup a/storage/maria/ma_loghandler.c b/storage/maria/ma_loghandler.c
--- a/storage/maria/ma_loghandler.c 2008-03-16 17:12:03 +01:00
+++ b/storage/maria/ma_loghandler.c 2008-03-21 22:29:01 +01:00
@@ -8332,7 +8332,11 @@ static uchar *dump_chunk(uchar *buffer,
}
break;
}
- length= translog_get_total_chunk_length(buffer, ptr - buffer);
+ {
+ intptr offset= ptr - buffer;
+ DBUG_ASSERT(offset >= 0 && offset <= UINT_MAX16);
+ length= translog_get_total_chunk_length(buffer, (uint16)offset);
+ }
printf(" Length %u\n", length);
ptr+= length;
return ptr;
diff -Nrup a/storage/maria/ma_rt_index.c b/storage/maria/ma_rt_index.c
--- a/storage/maria/ma_rt_index.c 2008-03-17 22:31:48 +01:00
+++ b/storage/maria/ma_rt_index.c 2008-03-21 22:29:01 +01:00
@@ -666,7 +666,7 @@ static int maria_rtree_insert_level(MARI
HA_OFFSET_ERROR)
DBUG_RETURN(-1);
info->keyread_buff_used= 1;
- bzero(info->buff, share->keypage_header);
+ bzero(info->buff, share->block_size);
_ma_store_keynr(share, info->buff, keynr);
_ma_store_page_used(share, info->buff, share->keypage_header);
@@ -703,7 +703,7 @@ static int maria_rtree_insert_level(MARI
DBUG_RETURN(-1); /* purecov: inspected */
}
- bzero(new_root_buf, share->keypage_header);
+ bzero(new_root_buf, share->block_size);
if (nod_flag)
_ma_store_keypage_flag(share, new_root_buf, KEYPAGE_FLAG_ISNOD);
_ma_store_keynr(share, new_root_buf, keynr);
diff -Nrup a/storage/maria/ma_rt_split.c b/storage/maria/ma_rt_split.c
--- a/storage/maria/ma_rt_split.c 2007-12-10 01:31:58 +01:00
+++ b/storage/maria/ma_rt_split.c 2008-03-21 22:29:01 +01:00
@@ -317,6 +317,7 @@ int maria_rtree_split_page(MARIA_HA *inf
err_code= -1;
goto split_err;
}
+ bzero(new_page, share->block_size);
stop= task + (max_keys + 1);
cur1= rt_PAGE_FIRST_KEY(share, page, nod_flag);
@@ -342,7 +343,6 @@ int maria_rtree_split_page(MARIA_HA *inf
memcpy(to - nod_flag, cur->key - nod_flag, full_length);
}
- bzero(new_page, share->keypage_header);
if (nod_flag)
_ma_store_keypage_flag(share, new_page, KEYPAGE_FLAG_ISNOD);
_ma_store_keynr(share, new_page, keyinfo->key_nr);
| Thread |
|---|
| • bk commit into maria tree (guilhem:1.2621) | Guilhem Bichot | 21 Mar |