mirror of
https://github.com/MariaDB/server.git
synced 2025-10-27 05:56:07 +03:00
testsuite funcs_1
1. Fix the following bugs
Bug#30440 "datadict" tests (all engines) fail: Character sets depend on configuration
Solution: Test variants charset_collation_* adjusted to different builds
Bug#32603 "datadict" tests (all engines) fail in "community" tree: "PROFILING" table
Solution: Excluding "PROFILING" table from queries
Bug#33654 "slow log" is missing a line
Solution: Unify the content of the fields TABLES.TABLE_ROWS and
STATISTICS.CARDINALITY within result sets
Bug#34532 Some funcs_1 tests do not clean up at end of testing
Solution: DROP objects/reset global server variables modified during testing
+ let tests missing implementation end before loading of tables
Bug#31421 funcs_1: ndb__datadict fails, discrepancy between scripts and expected results
Solution: Cut <engine>__datadict tests into smaller tests + generate new results.
Bug#33599 INFORMATION_SCHEMA.STATISTICS got a new column INDEX_COMMENT: tests fail (2)
Generation of new results during post merge fix
Bug#33600 CHARACTER_OCTET_LENGTH is now CHARACTER_MAXIMUM_LENGTH * 4
Generation of new results during post merge fix
Bug#33631 Platform-specific replace of CHARACTER_MAXIMUM_LENGTH broken by 4-byte encoding
Generation of new results during post merge fix
+ removal of platform-specific replace routine (no more needed)
2. Restructure the tests
- Test not more than one INFORMATION_SCHEMA view per testscript
- Separate tests of I_S view layout+functionality from content related to the
all time existing databases "information_schema", "mysql" and "test"
- Avoid storage engine related variants of tests which are not sensible to
storage engines at all.
3. Reimplement or add some subtests + cleanup
There is a some probability that even the reviewed changeset
- does not fix all bugs from above or
- contains new bugs which show up on some platforms <> Linux or on one of
the various build types
4. The changeset contains fixes according to
- one code review
- minor bugs within testing code found after code review (accepted by reviewer)
- problems found during tests with 5.0.56 in build environment
55 lines
2.1 KiB
Plaintext
55 lines
2.1 KiB
Plaintext
#### suite/funcs_1/datadict/datadict.pre
|
|
#
|
|
# Auxiliary script which loads prerequisites
|
|
# (variables needed for --replace_result ...)
|
|
# in datadictionary tests.
|
|
#
|
|
# Author:
|
|
# 2008-01-23 mleich WL#4203 Reorganize and fix the data dictionary tests of
|
|
# testsuite funcs_1
|
|
# Create this script based on older scripts and new code.
|
|
#
|
|
--disable_query_log
|
|
|
|
# Bug#12777 Different size shown for VARCHAR(n) columns (with n> 64)
|
|
# in INFORMATION_SCHEMA
|
|
# This bug was unfortunately (for testers) declared to be no bug.
|
|
# So CHARACTER_MAXIMUM_LENGTH of several <whatever>_CATALOG columns within
|
|
# the INFORMATION_SCHEMA depends on PATH_MAX of the operating system.
|
|
# Workaround for this problem:
|
|
# Get the size of ONE known colum and check the size against some values to
|
|
# be able to use the correct --replace_result statement. Using this only the
|
|
# one pair of 'wrong' values is replaced and not all occurrencies of all
|
|
# possible pairs of values. See bug #12777 for details.
|
|
SELECT character_maximum_length INTO @CML
|
|
FROM information_schema.columns
|
|
WHERE table_schema = 'information_schema'
|
|
AND table_name = 'columns'
|
|
AND column_name = 'table_catalog';
|
|
|
|
let $bug_12777_0512= `SELECT @CML = 512`;
|
|
let $bug_12777_1023= `SELECT @CML = 1023`;
|
|
let $bug_12777_1024= `SELECT @CML = 1024`;
|
|
let $bug_12777_2048= `SELECT @CML = 2048`;
|
|
# 4096 is the value used in the files with expected results.
|
|
let $bug_12777_4095= `SELECT @CML = 4095`;
|
|
if (0)
|
|
{
|
|
# enable this for debugging only, but NOT in a pushed version, as then the
|
|
# result changes from OS to OS ...
|
|
eval SELECT @CML AS 'CML',
|
|
$bug_12777_0512 AS '512',
|
|
$bug_12777_1023 AS '1023',
|
|
$bug_12777_1024 AS '1024',
|
|
$bug_12777_2048 AS '2048',
|
|
$bug_12777_4095 AS '4095';
|
|
}
|
|
|
|
|
|
# Prepare a variable to be able to suppress machine dependant diffs
|
|
# this can be used in: --replace_result $SERVER_NAME <SERVER_NAME>
|
|
let $SERVER_NAME= `SELECT DISTINCT host FROM mysql.user
|
|
WHERE host NOT In ("localhost", "127.0.0.1", "%")`;
|
|
--enable_query_log
|
|
|