summaryrefslogtreecommitdiff
path: root/mysql-test/ndb
diff options
context:
space:
mode:
authorunknown <pekka@mysql.com>2005-10-06 09:44:25 +0200
committerunknown <pekka@mysql.com>2005-10-06 09:44:25 +0200
commit6efe60124c999b0346c593f72bf844a37728d22e (patch)
tree173daca063b0bcc5c2ce26159959e225deca1a81 /mysql-test/ndb
parent4a231e408cdbec3de2bb6cf8044cc435addc0fc8 (diff)
downloadmariadb-git-6efe60124c999b0346c593f72bf844a37728d22e.tar.gz
ndb - prelim perl scripts to autotest
BitKeeper/deleted/.del-ndb_range_bounds.pl~ff7e47a35fb44c74: Delete: mysql-test/ndb/ndb_range_bounds.pl
Diffstat (limited to 'mysql-test/ndb')
-rw-r--r--mysql-test/ndb/ndb_range_bounds.pl138
1 files changed, 0 insertions, 138 deletions
diff --git a/mysql-test/ndb/ndb_range_bounds.pl b/mysql-test/ndb/ndb_range_bounds.pl
deleted file mode 100644
index 75b7f8a33e1..00000000000
--- a/mysql-test/ndb/ndb_range_bounds.pl
+++ /dev/null
@@ -1,138 +0,0 @@
-#
-# test range scan bounds
-# output to mysql-test/t/ndb_range_bounds.test
-#
-# give option --all to generate all cases
-#
-
-use strict;
-use integer;
-use Getopt::Long;
-
-my $opt_all = 0;
-my $opt_cnt = 5;
-GetOptions("all" => \$opt_all, "cnt=i" => \$opt_cnt)
- or die "options are: --all --cnt=N";
-
-my $table = 't';
-
-print <<EOF;
---source include/have_ndb.inc
-
---disable_warnings
-drop table if exists $table;
---enable_warnings
-
-# test range scan bounds
-# generated by mysql-test/ndb/ndb_range_bounds.pl
-# all selects must return 0
-
-EOF
-
-sub cut ($$@) {
- my($op, $key, @v) = @_;
- $op = '==' if $op eq '=';
- my(@w);
- eval "\@w = grep(\$_ $op $key, \@v)";
- $@ and die $@;
- return @w;
-}
-
-sub mkdummy (\@) {
- my ($val) = @_;
- return {
- 'dummy' => 1,
- 'exp' => '9 = 9',
- 'cnt' => scalar @$val,
- };
-}
-
-sub mkone ($$$\@) {
- my($col, $op, $key, $val) = @_;
- my $cnt = scalar cut($op, $key, @$val);
- return {
- 'exp' => "$col $op $key",
- 'cnt' => $cnt,
- };
-}
-
-sub mktwo ($$$$$\@) {
- my($col, $op1, $key1, $op2, $key2, $val) = @_;
- my $cnt = scalar cut($op2, $key2, cut($op1, $key1, @$val));
- return {
- 'exp' => "$col $op1 $key1 and $col $op2 $key2",
- 'cnt' => $cnt,
- };
-}
-
-sub mkall ($$$\@) {
- my($col, $key1, $key2, $val) = @_;
- my @a = ();
- my $p = mkdummy(@$val);
- push(@a, $p) if $opt_all;
- my @ops = qw(< <= = >= >);
- for my $op (@ops) {
- my $p = mkone($col, $op, $key1, @$val);
- push(@a, $p) if $opt_all || $p->{cnt} != 0;
- }
- my @ops1 = $opt_all ? @ops : qw(= >= >);
- my @ops2 = $opt_all ? @ops : qw(<= <);
- for my $op1 (@ops1) {
- for my $op2 (@ops2) {
- my $p = mktwo($col, $op1, $key1, $op2, $key2, @$val);
- push(@a, $p) if $opt_all || $p->{cnt} != 0;
- }
- }
- return \@a;
-}
-
-for my $nn ("bcd", "") {
- my %nn;
- for my $x (qw(b c d)) {
- $nn{$x} = $nn =~ /$x/ ? "not null" : "null";
- }
- print <<EOF;
-create table $table (
- a int primary key,
- b int $nn{b},
- c int $nn{c},
- d int $nn{d},
- index (b, c, d)
-) engine=ndb;
-EOF
- my @val = (0..($opt_cnt-1));
- my $v0 = 0;
- for my $v1 (@val) {
- for my $v2 (@val) {
- for my $v3 (@val) {
- print "insert into $table values($v0, $v1, $v2, $v3);\n";
- $v0++;
- }
- }
- }
- my $key1 = 1;
- my $key2 = 3;
- my $a1 = mkall('b', $key1, $key2, @val);
- my $a2 = mkall('c', $key1, $key2, @val);
- my $a3 = mkall('d', $key1, $key2, @val);
- for my $p1 (@$a1) {
- my $cnt1 = $p1->{cnt} * @val * @val;
- print "select count(*) - $cnt1 from $table";
- print " where $p1->{exp};\n";
- for my $p2 (@$a2) {
- my $cnt2 = $p1->{cnt} * $p2->{cnt} * @val;
- print "select count(*) - $cnt2 from $table";
- print " where $p1->{exp} and $p2->{exp};\n";
- for my $p3 (@$a3) {
- my $cnt3 = $p1->{cnt} * $p2->{cnt} * $p3->{cnt};
- print "select count(*) - $cnt3 from $table";
- print " where $p1->{exp} and $p2->{exp} and $p3->{exp};\n";
- }
- }
- }
- print <<EOF;
-drop table $table;
-EOF
-}
-
-# vim: set sw=2: