~linuxjedi/drizzle/trunk-bug-667053

« back to all changes in this revision

Viewing changes to mysql-test/suite/parts/inc/partition_float.inc

  • Committer: brian
  • Date: 2008-06-25 05:29:13 UTC
  • Revision ID: brian@localhost.localdomain-20080625052913-6upwo0jsrl4lnapl
clean slate

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
eval create table t1 (a float not null, primary key(a)) engine=$engine 
 
2
partition by key (a) (
 
3
partition pa1 max_rows=20 min_rows=2,
 
4
partition pa2 max_rows=30 min_rows=3,
 
5
partition pa3 max_rows=30 min_rows=4,
 
6
partition pa4 max_rows=40 min_rows=2);
 
7
show create table t1;
 
8
insert into t1 values (-3.402823466E+38), (3.402823466E+38), (-1.5), (-1), (0), (1), (1.5);
 
9
select * from t1;
 
10
select * from t1 where a=1.5;
 
11
delete from t1 where a=1.5;
 
12
select * from t1;
 
13
drop table t1;
 
14
 
 
15
eval create table t2 (a float not null, primary key(a)) engine=$engine 
 
16
partition by key (a) partitions 10;
 
17
show create table t2;
 
18
insert into t2 values (-3.402823466E+38), (-3.402823466E+37), (-123.456), (0), (1234546.789), (123.456), (1.5);
 
19
select * from t2;
 
20
#result set is empty: Not a bug with float!!
 
21
select * from t2 where a=123.456;
 
22
delete from t2 where a=123.456;
 
23
select * from t2;
 
24
select * from t2 where a=1.5;
 
25
delete from t2 where a=1.5;
 
26
select * from t2;
 
27
delete from t2;
 
28
let $count=$maxrows;
 
29
--echo $maxrows*3 inserts;
 
30
--disable_query_log
 
31
while ($count)
 
32
{
 
33
eval insert into t2 values ($count);
 
34
eval insert into t2 values ($count+0.33);
 
35
eval insert into t2 values ($count+0.75);
 
36
dec $count;
 
37
}
 
38
--enable_query_log
 
39
select count(*) from t2;
 
40
drop table t2;
 
41
 
 
42
# Bug 30577: FLOOR() and CEILING() not usable as partition functions
 
43
# Partition functions are required to return INT_RESULT; FLOOR() and
 
44
# CEILING() do not, unless they have an INT argument.  Disable this
 
45
# portion of the test until bug 30577 is fixed.
 
46
 
 
47
--disable_parsing
 
48
 
 
49
eval create table t3 (a float not null, primary key(a)) engine=$engine 
 
50
partition by range (floor(a)) subpartition by key (a) subpartitions 3 (
 
51
partition pa1 values less than (3),
 
52
partition pa3 values less than (6),
 
53
partition pa10 values less than (10)
 
54
);
 
55
show create table t3;
 
56
let $count=9;
 
57
--echo $count*3 inserts;
 
58
while ($count)
 
59
{
 
60
eval insert into t3 values ($count);
 
61
eval insert into t3 values ($count+0.33);
 
62
eval insert into t3 values ($count+0.75);
 
63
dec $count;
 
64
}
 
65
select count(*) from t3;
 
66
select * from t3;
 
67
drop table t3;
 
68
 
 
69
eval create table t4 (a float not null, primary key(a)) engine=$engine 
 
70
partition by list (floor(a)) subpartition by key (a) subpartitions 3 (
 
71
partition pa1 values in (1,2,3),
 
72
partition pa3 values in (4,5,6),
 
73
partition pa10 values in (7,8,9,10)
 
74
);
 
75
show create table t4;
 
76
let $count=9;
 
77
--echo $count*3 inserts;
 
78
while ($count)
 
79
{
 
80
eval insert into t4 values ($count);
 
81
eval insert into t4 values ($count+0.33);
 
82
eval insert into t4 values ($count+0.75);
 
83
dec $count;
 
84
}
 
85
select count(*) from t4;
 
86
select * from t4;
 
87
drop table t4;
 
88
 
 
89
# Disabled due to Bug 30577
 
90
--enable_parsing