Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
MariaDB
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
MariaDB
Commits
66fa4ffb
Commit
66fa4ffb
authored
Sep 29, 2005
by
pem@mysql.com
Browse files
Options
Browse Files
Download
Plain Diff
Merge mysql.com:/usr/local/bk/mysql-5.0
into mysql.com:/usr/home/pem/mysql-5.0
parents
d426c109
2f3682db
Changes
12
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
131 additions
and
28 deletions
+131
-28
mysql-test/r/case.result
mysql-test/r/case.result
+4
-4
mysql-test/r/metadata.result
mysql-test/r/metadata.result
+1
-1
mysql-test/r/ps_2myisam.result
mysql-test/r/ps_2myisam.result
+2
-2
mysql-test/r/ps_3innodb.result
mysql-test/r/ps_3innodb.result
+2
-2
mysql-test/r/ps_4heap.result
mysql-test/r/ps_4heap.result
+2
-2
mysql-test/r/ps_5merge.result
mysql-test/r/ps_5merge.result
+4
-4
mysql-test/r/ps_6bdb.result
mysql-test/r/ps_6bdb.result
+2
-2
mysql-test/r/ps_7ndb.result
mysql-test/r/ps_7ndb.result
+2
-2
mysql-test/r/sp.result
mysql-test/r/sp.result
+45
-0
mysql-test/r/type_newdecimal.result
mysql-test/r/type_newdecimal.result
+7
-7
mysql-test/t/sp.test
mysql-test/t/sp.test
+51
-0
sql/item.cc
sql/item.cc
+9
-2
No files found.
mysql-test/r/case.result
View file @
66fa4ffb
...
...
@@ -103,8 +103,8 @@ t1 CREATE TABLE `t1` (
`c2` varchar(1) character set latin1 collate latin1_danish_ci NOT NULL default '',
`c3` varbinary(1) NOT NULL default '',
`c4` varbinary(1) NOT NULL default '',
`c5` varbinary(
4
) NOT NULL default '',
`c6` varbinary(
4
) NOT NULL default '',
`c5` varbinary(
3
) NOT NULL default '',
`c6` varbinary(
3
) NOT NULL default '',
`c7` decimal(2,1) NOT NULL default '0.0',
`c8` decimal(2,1) NOT NULL default '0.0',
`c9` decimal(2,1) default NULL,
...
...
@@ -152,11 +152,11 @@ SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`COALESCE(1)` int(1) NOT NULL default '0',
`COALESCE(1.0)` decimal(2,1) NOT NULL default '0.0',
`COALESCE(1.0)` decimal(2,1)
unsigned
NOT NULL default '0.0',
`COALESCE('a')` varchar(1) NOT NULL default '',
`COALESCE(1,1.0)` decimal(2,1) NOT NULL default '0.0',
`COALESCE(1,'1')` varbinary(1) NOT NULL default '',
`COALESCE(1.1,'1')` varbinary(
4
) NOT NULL default '',
`COALESCE(1.1,'1')` varbinary(
3
) NOT NULL default '',
`COALESCE('a' COLLATE latin1_bin,'b')` varchar(1) character set latin1 collate latin1_bin NOT NULL default ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t1;
...
...
mysql-test/r/metadata.result
View file @
66fa4ffb
...
...
@@ -2,7 +2,7 @@ drop table if exists t1,t2;
select 1, 1.0, -1, "hello", NULL;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def 1 8 1 1 N 32897 0 63
def 1.0 246
4 3 N 129
1 63
def 1.0 246
3 3 N 161
1 63
def -1 8 2 2 N 32897 0 63
def hello 253 5 5 N 1 31 8
def NULL 6 0 0 Y 32896 0 63
...
...
mysql-test/r/ps_2myisam.result
View file @
66fa4ffb
...
...
@@ -1775,7 +1775,7 @@ Table Create Table
t5 CREATE TABLE `t5` (
`const01` bigint(1) NOT NULL default '0',
`param01` bigint(20) default NULL,
`const02` decimal(2,1) NOT NULL default '0.0',
`const02` decimal(2,1)
unsigned
NOT NULL default '0.0',
`param02` decimal(65,30) default NULL,
`const03` double NOT NULL default '0',
`param03` double default NULL,
...
...
@@ -1805,7 +1805,7 @@ select * from t5 ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def test t5 t5 const01 const01 8 1 1 N 32769 0 63
def test t5 t5 param01 param01 8 20 1 Y 32768 0 63
def test t5 t5 const02 const02 246
4 3 N 1
1 63
def test t5 t5 const02 const02 246
3 3 N 33
1 63
def test t5 t5 param02 param02 246 67 32 Y 0 30 63
def test t5 t5 const03 const03 5 17 1 N 32769 31 63
def test t5 t5 param03 param03 5 23 1 Y 32768 31 63
...
...
mysql-test/r/ps_3innodb.result
View file @
66fa4ffb
...
...
@@ -1758,7 +1758,7 @@ Table Create Table
t5 CREATE TABLE `t5` (
`const01` bigint(1) NOT NULL default '0',
`param01` bigint(20) default NULL,
`const02` decimal(2,1) NOT NULL default '0.0',
`const02` decimal(2,1)
unsigned
NOT NULL default '0.0',
`param02` decimal(65,30) default NULL,
`const03` double NOT NULL default '0',
`param03` double default NULL,
...
...
@@ -1788,7 +1788,7 @@ select * from t5 ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def test t5 t5 const01 const01 8 1 1 N 32769 0 63
def test t5 t5 param01 param01 8 20 1 Y 32768 0 63
def test t5 t5 const02 const02 246
4 3 N 1
1 63
def test t5 t5 const02 const02 246
3 3 N 33
1 63
def test t5 t5 param02 param02 246 67 32 Y 0 30 63
def test t5 t5 const03 const03 5 17 1 N 32769 31 63
def test t5 t5 param03 param03 5 23 1 Y 32768 31 63
...
...
mysql-test/r/ps_4heap.result
View file @
66fa4ffb
...
...
@@ -1759,7 +1759,7 @@ Table Create Table
t5 CREATE TABLE `t5` (
`const01` bigint(1) NOT NULL default '0',
`param01` bigint(20) default NULL,
`const02` decimal(2,1) NOT NULL default '0.0',
`const02` decimal(2,1)
unsigned
NOT NULL default '0.0',
`param02` decimal(65,30) default NULL,
`const03` double NOT NULL default '0',
`param03` double default NULL,
...
...
@@ -1789,7 +1789,7 @@ select * from t5 ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def test t5 t5 const01 const01 8 1 1 N 32769 0 63
def test t5 t5 param01 param01 8 20 1 Y 32768 0 63
def test t5 t5 const02 const02 246
4 3 N 1
1 63
def test t5 t5 const02 const02 246
3 3 N 33
1 63
def test t5 t5 param02 param02 246 67 32 Y 0 30 63
def test t5 t5 const03 const03 5 17 1 N 32769 31 63
def test t5 t5 param03 param03 5 23 1 Y 32768 31 63
...
...
mysql-test/r/ps_5merge.result
View file @
66fa4ffb
...
...
@@ -1695,7 +1695,7 @@ Table Create Table
t5 CREATE TABLE `t5` (
`const01` bigint(1) NOT NULL default '0',
`param01` bigint(20) default NULL,
`const02` decimal(2,1) NOT NULL default '0.0',
`const02` decimal(2,1)
unsigned
NOT NULL default '0.0',
`param02` decimal(65,30) default NULL,
`const03` double NOT NULL default '0',
`param03` double default NULL,
...
...
@@ -1725,7 +1725,7 @@ select * from t5 ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def test t5 t5 const01 const01 8 1 1 N 32769 0 63
def test t5 t5 param01 param01 8 20 1 Y 32768 0 63
def test t5 t5 const02 const02 246
4 3 N 1
1 63
def test t5 t5 const02 const02 246
3 3 N 33
1 63
def test t5 t5 param02 param02 246 67 32 Y 0 30 63
def test t5 t5 const03 const03 5 17 1 N 32769 31 63
def test t5 t5 param03 param03 5 23 1 Y 32768 31 63
...
...
@@ -4707,7 +4707,7 @@ Table Create Table
t5 CREATE TABLE `t5` (
`const01` bigint(1) NOT NULL default '0',
`param01` bigint(20) default NULL,
`const02` decimal(2,1) NOT NULL default '0.0',
`const02` decimal(2,1)
unsigned
NOT NULL default '0.0',
`param02` decimal(65,30) default NULL,
`const03` double NOT NULL default '0',
`param03` double default NULL,
...
...
@@ -4737,7 +4737,7 @@ select * from t5 ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def test t5 t5 const01 const01 8 1 1 N 32769 0 63
def test t5 t5 param01 param01 8 20 1 Y 32768 0 63
def test t5 t5 const02 const02 246
4 3 N 1
1 63
def test t5 t5 const02 const02 246
3 3 N 33
1 63
def test t5 t5 param02 param02 246 67 32 Y 0 30 63
def test t5 t5 const03 const03 5 17 1 N 32769 31 63
def test t5 t5 param03 param03 5 23 1 Y 32768 31 63
...
...
mysql-test/r/ps_6bdb.result
View file @
66fa4ffb
...
...
@@ -1758,7 +1758,7 @@ Table Create Table
t5 CREATE TABLE `t5` (
`const01` bigint(1) NOT NULL default '0',
`param01` bigint(20) default NULL,
`const02` decimal(2,1) NOT NULL default '0.0',
`const02` decimal(2,1)
unsigned
NOT NULL default '0.0',
`param02` decimal(65,30) default NULL,
`const03` double NOT NULL default '0',
`param03` double default NULL,
...
...
@@ -1788,7 +1788,7 @@ select * from t5 ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def test t5 t5 const01 const01 8 1 1 N 32769 0 63
def test t5 t5 param01 param01 8 20 1 Y 32768 0 63
def test t5 t5 const02 const02 246
4 3 N 1
1 63
def test t5 t5 const02 const02 246
3 3 N 33
1 63
def test t5 t5 param02 param02 246 67 32 Y 0 30 63
def test t5 t5 const03 const03 5 17 1 N 32769 31 63
def test t5 t5 param03 param03 5 23 1 Y 32768 31 63
...
...
mysql-test/r/ps_7ndb.result
View file @
66fa4ffb
...
...
@@ -1758,7 +1758,7 @@ Table Create Table
t5 CREATE TABLE `t5` (
`const01` bigint(1) NOT NULL default '0',
`param01` bigint(20) default NULL,
`const02` decimal(2,1) NOT NULL default '0.0',
`const02` decimal(2,1)
unsigned
NOT NULL default '0.0',
`param02` decimal(65,30) default NULL,
`const03` double NOT NULL default '0',
`param03` double default NULL,
...
...
@@ -1788,7 +1788,7 @@ select * from t5 ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def test t5 t5 const01 const01 8 1 1 N 32769 0 63
def test t5 t5 param01 param01 8 20 1 Y 32768 0 63
def test t5 t5 const02 const02 246
4 3 N 1
1 63
def test t5 t5 const02 const02 246
3 3 N 33
1 63
def test t5 t5 param02 param02 246 67 32 Y 0 30 63
def test t5 t5 const03 const03 5 17 1 N 32769 31 63
def test t5 t5 param03 param03 5 23 1 Y 32768 31 63
...
...
mysql-test/r/sp.result
View file @
66fa4ffb
...
...
@@ -3390,4 +3390,49 @@ s1
set sql_mode=@sm|
drop table t3|
drop procedure bug6127|
drop procedure if exists bug12589_1|
drop procedure if exists bug12589_2|
drop procedure if exists bug12589_3|
create procedure bug12589_1()
begin
declare spv1 decimal(3,3);
set spv1= 123.456;
set spv1 = 'test';
create temporary table tm1 as select spv1;
show create table tm1;
drop temporary table tm1;
end|
create procedure bug12589_2()
begin
declare spv1 decimal(6,3);
set spv1= 123.456;
create temporary table tm1 as select spv1;
show create table tm1;
drop temporary table tm1;
end|
create procedure bug12589_3()
begin
declare spv1 decimal(6,3);
set spv1= -123.456;
create temporary table tm1 as select spv1;
show create table tm1;
drop temporary table tm1;
end|
call bug12589_1()|
Table Create Table
tm1 CREATE TEMPORARY TABLE `tm1` (
`spv1` decimal(1,0) unsigned default NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
Warnings:
Warning 1292 Truncated incorrect DECIMAL value: 'test'
call bug12589_2()|
Table Create Table
tm1 CREATE TEMPORARY TABLE `tm1` (
`spv1` decimal(6,3) unsigned default NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
call bug12589_3()|
Table Create Table
tm1 CREATE TEMPORARY TABLE `tm1` (
`spv1` decimal(6,3) default NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1,t2;
mysql-test/r/type_newdecimal.result
View file @
66fa4ffb
...
...
@@ -68,10 +68,10 @@ NULL 1.1 NULL NULL NULL 1
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`nullif(1.1, 1.1)` decimal(2,1) default NULL,
`nullif(1.1, 1.2)` decimal(2,1) default NULL,
`nullif(1.1, 0.11e1)` decimal(2,1) default NULL,
`nullif(1.0, 1)` decimal(2,1) default NULL,
`nullif(1.1, 1.1)` decimal(2,1)
unsigned
default NULL,
`nullif(1.1, 1.2)` decimal(2,1)
unsigned
default NULL,
`nullif(1.1, 0.11e1)` decimal(2,1)
unsigned
default NULL,
`nullif(1.0, 1)` decimal(2,1)
unsigned
default NULL,
`nullif(1, 1.0)` int(1) default NULL,
`nullif(1, 1.1)` int(1) default NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
...
...
@@ -174,9 +174,9 @@ create table t1 select round(15.4,-1), truncate(-5678.123451,-3), abs(-1.1), -(-
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`round(15.4,-1)` decimal(3,0) NOT NULL default '0',
`round(15.4,-1)` decimal(3,0)
unsigned
NOT NULL default '0',
`truncate(-5678.123451,-3)` decimal(4,0) NOT NULL default '0',
`abs(-1.1)` decimal(
3
,1) NOT NULL default '0.0',
`abs(-1.1)` decimal(
2
,1) NOT NULL default '0.0',
`-(-1.1)` decimal(2,1) NOT NULL default '0.0'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
...
...
@@ -781,7 +781,7 @@ create table t1 as select 0.5;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`0.5` decimal(2,1) NOT NULL default '0.0'
`0.5` decimal(2,1)
unsigned
NOT NULL default '0.0'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
select round(1.5),round(2.5);
...
...
mysql-test/t/sp.test
View file @
66fa4ffb
...
...
@@ -4264,6 +4264,57 @@ drop table t3|
drop
procedure
bug6127
|
#
# BUG#12589: Assert when creating temp. table from decimal stored procedure
# variable
#
--
disable_warnings
drop
procedure
if
exists
bug12589_1
|
drop
procedure
if
exists
bug12589_2
|
drop
procedure
if
exists
bug12589_3
|
--
enable_warnings
create
procedure
bug12589_1
()
begin
declare
spv1
decimal
(
3
,
3
);
set
spv1
=
123.456
;
set
spv1
=
'test'
;
create
temporary
table
tm1
as
select
spv1
;
show
create
table
tm1
;
drop
temporary
table
tm1
;
end
|
create
procedure
bug12589_2
()
begin
declare
spv1
decimal
(
6
,
3
);
set
spv1
=
123.456
;
create
temporary
table
tm1
as
select
spv1
;
show
create
table
tm1
;
drop
temporary
table
tm1
;
end
|
create
procedure
bug12589_3
()
begin
declare
spv1
decimal
(
6
,
3
);
set
spv1
=
-
123.456
;
create
temporary
table
tm1
as
select
spv1
;
show
create
table
tm1
;
drop
temporary
table
tm1
;
end
|
# Note: The type of the field will match the value, not the declared
# type of the variable. (This is a type checking issue which
# might be changed later.)
# Warning expected from "set spv1 = 'test'", the value is set to decimal "0".
call
bug12589_1
()
|
# No warnings here
call
bug12589_2
()
|
call
bug12589_3
()
|
#
# BUG#NNNN: New bug synopsis
#
...
...
sql/item.cc
View file @
66fa4ffb
...
...
@@ -904,6 +904,7 @@ bool Item_splocal::fix_fields(THD *, Item **)
DBUG_ASSERT
(
it
->
fixed
);
max_length
=
it
->
max_length
;
decimals
=
it
->
decimals
;
unsigned_flag
=
it
->
unsigned_flag
;
fixed
=
1
;
return
FALSE
;
}
...
...
@@ -1804,6 +1805,7 @@ Item_decimal::Item_decimal(const char *str_arg, uint length,
name
=
(
char
*
)
str_arg
;
decimals
=
(
uint8
)
decimal_value
.
frac
;
fixed
=
1
;
unsigned_flag
=
!
decimal_value
.
sign
();
max_length
=
my_decimal_precision_to_length
(
decimal_value
.
intg
+
decimals
,
decimals
,
unsigned_flag
);
}
...
...
@@ -1813,6 +1815,7 @@ Item_decimal::Item_decimal(longlong val, bool unsig)
int2my_decimal
(
E_DEC_FATAL_ERROR
,
val
,
unsig
,
&
decimal_value
);
decimals
=
(
uint8
)
decimal_value
.
frac
;
fixed
=
1
;
unsigned_flag
=
!
decimal_value
.
sign
();
max_length
=
my_decimal_precision_to_length
(
decimal_value
.
intg
+
decimals
,
decimals
,
unsigned_flag
);
}
...
...
@@ -1823,6 +1826,7 @@ Item_decimal::Item_decimal(double val, int precision, int scale)
double2my_decimal
(
E_DEC_FATAL_ERROR
,
val
,
&
decimal_value
);
decimals
=
(
uint8
)
decimal_value
.
frac
;
fixed
=
1
;
unsigned_flag
=
!
decimal_value
.
sign
();
max_length
=
my_decimal_precision_to_length
(
decimal_value
.
intg
+
decimals
,
decimals
,
unsigned_flag
);
}
...
...
@@ -1835,6 +1839,7 @@ Item_decimal::Item_decimal(const char *str, const my_decimal *val_arg,
name
=
(
char
*
)
str
;
decimals
=
(
uint8
)
decimal_par
;
max_length
=
length
;
unsigned_flag
=
!
decimal_value
.
sign
();
fixed
=
1
;
}
...
...
@@ -1844,8 +1849,9 @@ Item_decimal::Item_decimal(my_decimal *value_par)
my_decimal2decimal
(
value_par
,
&
decimal_value
);
decimals
=
(
uint8
)
decimal_value
.
frac
;
fixed
=
1
;
unsigned_flag
=
!
decimal_value
.
sign
();
max_length
=
my_decimal_precision_to_length
(
decimal_value
.
intg
+
decimals
,
decimals
,
!
decimal_value
.
sign
()
);
decimals
,
unsigned_flag
);
}
...
...
@@ -1855,8 +1861,9 @@ Item_decimal::Item_decimal(const char *bin, int precision, int scale)
&
decimal_value
,
precision
,
scale
);
decimals
=
(
uint8
)
decimal_value
.
frac
;
fixed
=
1
;
unsigned_flag
=
!
decimal_value
.
sign
();
max_length
=
my_decimal_precision_to_length
(
precision
,
decimals
,
!
decimal_value
.
sign
()
);
unsigned_flag
);
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment