summaryrefslogtreecommitdiff
path: root/mysql-test/r/myisam.result
diff options
context:
space:
mode:
authorunknown <ingo@mysql.com>2006-02-01 16:46:44 +0100
committerunknown <ingo@mysql.com>2006-02-01 16:46:44 +0100
commit08394605dcab41c0c940f6b0b461e36dc8ef2f6b (patch)
tree97ec6b284127a33d051ab58520ac01a6dd0b1650 /mysql-test/r/myisam.result
parentae951e0f72bb3474eaaa282342f17b645d64ac87 (diff)
downloadmariadb-git-08394605dcab41c0c940f6b0b461e36dc8ef2f6b.tar.gz
Bug#8841 - CHECKSUM TABLE is broken in MyISAM
There are (at least) two implementations of the checksum computation. One is in MyISAM for the quick checksum. It is executed on every row change. The other is in the SQL layer for the extended checksum. It retrieves all rows of a table via the respective storage engine. In former MySQL versions varchars were stored with their maximum length, but now with their real length similar to blobs. This change had been forgotten to take care of in the extended checksum calculation. Hence too much data was checksumed. In MyISAM this change had been taken care of already. Only the real data is included in the checksum. I changed mysql_checksum_table() so that it uses the length information of true varchar fields instead of the field length like in former varchar implementations. mysql-test/r/innodb.result: Bug#8841 - CHECKSUM TABLE is broken in MyISAM Fixed test results. mysql-test/r/myisam.result: Bug#8841 - CHECKSUM TABLE is broken in MyISAM Fixed test results. sql/sql_table.cc: Bug#8841 - CHECKSUM TABLE is broken in MyISAM Changed mysql_checksum_table() so that it uses the length information of true varchar fields instead of the field length like in former varchar implementations.
Diffstat (limited to 'mysql-test/r/myisam.result')
-rw-r--r--mysql-test/r/myisam.result6
1 files changed, 3 insertions, 3 deletions
diff --git a/mysql-test/r/myisam.result b/mysql-test/r/myisam.result
index e000cfd9c11..f8fbf1d0fba 100644
--- a/mysql-test/r/myisam.result
+++ b/mysql-test/r/myisam.result
@@ -531,14 +531,14 @@ Error 1146 Table 'test.t3' doesn't exist
checksum table t1, t2, t3;
Table Checksum
test.t1 2948697075
-test.t2 3092701434
+test.t2 2948697075
test.t3 NULL
Warnings:
Error 1146 Table 'test.t3' doesn't exist
checksum table t1, t2, t3 extended;
Table Checksum
-test.t1 3092701434
-test.t2 3092701434
+test.t1 2948697075
+test.t2 2948697075
test.t3 NULL
Warnings:
Error 1146 Table 'test.t3' doesn't exist