Add failing test and samples for deep recursion.

This commit is contained in:
Daniel Nichter
2013-06-25 16:15:50 -07:00
parent 1d1fae9375
commit bddc889f97
3 changed files with 221 additions and 2 deletions

View File

@@ -547,10 +547,24 @@ eval {
diag(`$trunk/sandbox/stop-sandbox $master3_port >/dev/null`);
# #############################################################################
# Bug 1136559: Deep recursion on subroutine "SchemaIterator::_iterate_dbh"
# #############################################################################
$sb->wipe_clean($dbh);
diag(`/tmp/12345/use < $trunk/t/lib/samples/100-dbs.sql`);
test_so(
filters => [],
result => "foo001.bar001 ",
lives_ok => 1,
test_name => "Bug 1136559: Deep recursion on subroutine SchemaIterator::_iterate_dbh",
);
diag(`/tmp/12345/use < $trunk/t/lib/samples/100-dbs-drop.sql`);
# #############################################################################
# Done.
# #############################################################################
ok($sb->ok(), "Sandbox servers") or BAIL_OUT(__FILE__ . " broke the sandbox");
done_testing;
exit;

View File

@@ -0,0 +1,100 @@
DROP DATABASE IF EXISTS foo001;
DROP DATABASE IF EXISTS foo002;
DROP DATABASE IF EXISTS foo003;
DROP DATABASE IF EXISTS foo004;
DROP DATABASE IF EXISTS foo005;
DROP DATABASE IF EXISTS foo006;
DROP DATABASE IF EXISTS foo007;
DROP DATABASE IF EXISTS foo008;
DROP DATABASE IF EXISTS foo009;
DROP DATABASE IF EXISTS foo010;
DROP DATABASE IF EXISTS foo011;
DROP DATABASE IF EXISTS foo012;
DROP DATABASE IF EXISTS foo013;
DROP DATABASE IF EXISTS foo014;
DROP DATABASE IF EXISTS foo015;
DROP DATABASE IF EXISTS foo016;
DROP DATABASE IF EXISTS foo017;
DROP DATABASE IF EXISTS foo018;
DROP DATABASE IF EXISTS foo019;
DROP DATABASE IF EXISTS foo020;
DROP DATABASE IF EXISTS foo021;
DROP DATABASE IF EXISTS foo022;
DROP DATABASE IF EXISTS foo023;
DROP DATABASE IF EXISTS foo024;
DROP DATABASE IF EXISTS foo025;
DROP DATABASE IF EXISTS foo026;
DROP DATABASE IF EXISTS foo027;
DROP DATABASE IF EXISTS foo028;
DROP DATABASE IF EXISTS foo029;
DROP DATABASE IF EXISTS foo030;
DROP DATABASE IF EXISTS foo031;
DROP DATABASE IF EXISTS foo032;
DROP DATABASE IF EXISTS foo033;
DROP DATABASE IF EXISTS foo034;
DROP DATABASE IF EXISTS foo035;
DROP DATABASE IF EXISTS foo036;
DROP DATABASE IF EXISTS foo037;
DROP DATABASE IF EXISTS foo038;
DROP DATABASE IF EXISTS foo039;
DROP DATABASE IF EXISTS foo040;
DROP DATABASE IF EXISTS foo041;
DROP DATABASE IF EXISTS foo042;
DROP DATABASE IF EXISTS foo043;
DROP DATABASE IF EXISTS foo044;
DROP DATABASE IF EXISTS foo045;
DROP DATABASE IF EXISTS foo046;
DROP DATABASE IF EXISTS foo047;
DROP DATABASE IF EXISTS foo048;
DROP DATABASE IF EXISTS foo049;
DROP DATABASE IF EXISTS foo050;
DROP DATABASE IF EXISTS foo051;
DROP DATABASE IF EXISTS foo052;
DROP DATABASE IF EXISTS foo053;
DROP DATABASE IF EXISTS foo054;
DROP DATABASE IF EXISTS foo055;
DROP DATABASE IF EXISTS foo056;
DROP DATABASE IF EXISTS foo057;
DROP DATABASE IF EXISTS foo058;
DROP DATABASE IF EXISTS foo059;
DROP DATABASE IF EXISTS foo060;
DROP DATABASE IF EXISTS foo061;
DROP DATABASE IF EXISTS foo062;
DROP DATABASE IF EXISTS foo063;
DROP DATABASE IF EXISTS foo064;
DROP DATABASE IF EXISTS foo065;
DROP DATABASE IF EXISTS foo066;
DROP DATABASE IF EXISTS foo067;
DROP DATABASE IF EXISTS foo068;
DROP DATABASE IF EXISTS foo069;
DROP DATABASE IF EXISTS foo070;
DROP DATABASE IF EXISTS foo071;
DROP DATABASE IF EXISTS foo072;
DROP DATABASE IF EXISTS foo073;
DROP DATABASE IF EXISTS foo074;
DROP DATABASE IF EXISTS foo075;
DROP DATABASE IF EXISTS foo076;
DROP DATABASE IF EXISTS foo077;
DROP DATABASE IF EXISTS foo078;
DROP DATABASE IF EXISTS foo079;
DROP DATABASE IF EXISTS foo080;
DROP DATABASE IF EXISTS foo081;
DROP DATABASE IF EXISTS foo082;
DROP DATABASE IF EXISTS foo083;
DROP DATABASE IF EXISTS foo084;
DROP DATABASE IF EXISTS foo085;
DROP DATABASE IF EXISTS foo086;
DROP DATABASE IF EXISTS foo087;
DROP DATABASE IF EXISTS foo088;
DROP DATABASE IF EXISTS foo089;
DROP DATABASE IF EXISTS foo090;
DROP DATABASE IF EXISTS foo091;
DROP DATABASE IF EXISTS foo092;
DROP DATABASE IF EXISTS foo093;
DROP DATABASE IF EXISTS foo094;
DROP DATABASE IF EXISTS foo095;
DROP DATABASE IF EXISTS foo096;
DROP DATABASE IF EXISTS foo097;
DROP DATABASE IF EXISTS foo098;
DROP DATABASE IF EXISTS foo099;
DROP DATABASE IF EXISTS foo100;

105
t/lib/samples/100-dbs.sql Normal file
View File

@@ -0,0 +1,105 @@
CREATE DATABASE IF NOT EXISTS foo001;
CREATE DATABASE IF NOT EXISTS foo002;
CREATE DATABASE IF NOT EXISTS foo003;
CREATE DATABASE IF NOT EXISTS foo004;
CREATE DATABASE IF NOT EXISTS foo005;
CREATE DATABASE IF NOT EXISTS foo006;
CREATE DATABASE IF NOT EXISTS foo007;
CREATE DATABASE IF NOT EXISTS foo008;
CREATE DATABASE IF NOT EXISTS foo009;
CREATE DATABASE IF NOT EXISTS foo010;
CREATE DATABASE IF NOT EXISTS foo011;
CREATE DATABASE IF NOT EXISTS foo012;
CREATE DATABASE IF NOT EXISTS foo013;
CREATE DATABASE IF NOT EXISTS foo014;
CREATE DATABASE IF NOT EXISTS foo015;
CREATE DATABASE IF NOT EXISTS foo016;
CREATE DATABASE IF NOT EXISTS foo017;
CREATE DATABASE IF NOT EXISTS foo018;
CREATE DATABASE IF NOT EXISTS foo019;
CREATE DATABASE IF NOT EXISTS foo020;
CREATE DATABASE IF NOT EXISTS foo021;
CREATE DATABASE IF NOT EXISTS foo022;
CREATE DATABASE IF NOT EXISTS foo023;
CREATE DATABASE IF NOT EXISTS foo024;
CREATE DATABASE IF NOT EXISTS foo025;
CREATE DATABASE IF NOT EXISTS foo026;
CREATE DATABASE IF NOT EXISTS foo027;
CREATE DATABASE IF NOT EXISTS foo028;
CREATE DATABASE IF NOT EXISTS foo029;
CREATE DATABASE IF NOT EXISTS foo030;
CREATE DATABASE IF NOT EXISTS foo031;
CREATE DATABASE IF NOT EXISTS foo032;
CREATE DATABASE IF NOT EXISTS foo033;
CREATE DATABASE IF NOT EXISTS foo034;
CREATE DATABASE IF NOT EXISTS foo035;
CREATE DATABASE IF NOT EXISTS foo036;
CREATE DATABASE IF NOT EXISTS foo037;
CREATE DATABASE IF NOT EXISTS foo038;
CREATE DATABASE IF NOT EXISTS foo039;
CREATE DATABASE IF NOT EXISTS foo040;
CREATE DATABASE IF NOT EXISTS foo041;
CREATE DATABASE IF NOT EXISTS foo042;
CREATE DATABASE IF NOT EXISTS foo043;
CREATE DATABASE IF NOT EXISTS foo044;
CREATE DATABASE IF NOT EXISTS foo045;
CREATE DATABASE IF NOT EXISTS foo046;
CREATE DATABASE IF NOT EXISTS foo047;
CREATE DATABASE IF NOT EXISTS foo048;
CREATE DATABASE IF NOT EXISTS foo049;
CREATE DATABASE IF NOT EXISTS foo050;
CREATE DATABASE IF NOT EXISTS foo051;
CREATE DATABASE IF NOT EXISTS foo052;
CREATE DATABASE IF NOT EXISTS foo053;
CREATE DATABASE IF NOT EXISTS foo054;
CREATE DATABASE IF NOT EXISTS foo055;
CREATE DATABASE IF NOT EXISTS foo056;
CREATE DATABASE IF NOT EXISTS foo057;
CREATE DATABASE IF NOT EXISTS foo058;
CREATE DATABASE IF NOT EXISTS foo059;
CREATE DATABASE IF NOT EXISTS foo060;
CREATE DATABASE IF NOT EXISTS foo061;
CREATE DATABASE IF NOT EXISTS foo062;
CREATE DATABASE IF NOT EXISTS foo063;
CREATE DATABASE IF NOT EXISTS foo064;
CREATE DATABASE IF NOT EXISTS foo065;
CREATE DATABASE IF NOT EXISTS foo066;
CREATE DATABASE IF NOT EXISTS foo067;
CREATE DATABASE IF NOT EXISTS foo068;
CREATE DATABASE IF NOT EXISTS foo069;
CREATE DATABASE IF NOT EXISTS foo070;
CREATE DATABASE IF NOT EXISTS foo071;
CREATE DATABASE IF NOT EXISTS foo072;
CREATE DATABASE IF NOT EXISTS foo073;
CREATE DATABASE IF NOT EXISTS foo074;
CREATE DATABASE IF NOT EXISTS foo075;
CREATE DATABASE IF NOT EXISTS foo076;
CREATE DATABASE IF NOT EXISTS foo077;
CREATE DATABASE IF NOT EXISTS foo078;
CREATE DATABASE IF NOT EXISTS foo079;
CREATE DATABASE IF NOT EXISTS foo080;
CREATE DATABASE IF NOT EXISTS foo081;
CREATE DATABASE IF NOT EXISTS foo082;
CREATE DATABASE IF NOT EXISTS foo083;
CREATE DATABASE IF NOT EXISTS foo084;
CREATE DATABASE IF NOT EXISTS foo085;
CREATE DATABASE IF NOT EXISTS foo086;
CREATE DATABASE IF NOT EXISTS foo087;
CREATE DATABASE IF NOT EXISTS foo088;
CREATE DATABASE IF NOT EXISTS foo089;
CREATE DATABASE IF NOT EXISTS foo090;
CREATE DATABASE IF NOT EXISTS foo091;
CREATE DATABASE IF NOT EXISTS foo092;
CREATE DATABASE IF NOT EXISTS foo093;
CREATE DATABASE IF NOT EXISTS foo094;
CREATE DATABASE IF NOT EXISTS foo095;
CREATE DATABASE IF NOT EXISTS foo096;
CREATE DATABASE IF NOT EXISTS foo097;
CREATE DATABASE IF NOT EXISTS foo098;
CREATE DATABASE IF NOT EXISTS foo099;
CREATE DATABASE IF NOT EXISTS foo100;
CREATE TABLE IF NOT EXISTS foo001.bar001 (
`id` int unsigned NOT NULL AUTO_INCREMENT,
`value` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;