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
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
mariadb
Commits
8fcd446b
Commit
8fcd446b
authored
May 21, 2007
by
holyfoot/hf@hfmain.(none)
Browse files
Options
Browse Files
Download
Plain Diff
Merge mysql.com:/home/hf/work/27984/my50-27984
into mysql.com:/home/hf/work/27984/my51-27984
parents
c4d3178e
84a572aa
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
10 additions
and
1 deletion
+10
-1
mysql-test/r/type_newdecimal.result
mysql-test/r/type_newdecimal.result
+3
-0
mysql-test/t/type_newdecimal.test
mysql-test/t/type_newdecimal.test
+5
-0
strings/decimal.c
strings/decimal.c
+2
-1
No files found.
mysql-test/r/type_newdecimal.result
View file @
8fcd446b
...
...
@@ -1475,6 +1475,9 @@ Error 1264 Out of range value for column 'cast(a as DECIMAL(3,2))' at row 1
Error 1264 Out of range value for column 'cast(a as DECIMAL(3,2))' at row 1
Error 1264 Out of range value for column 'cast(a as DECIMAL(3,2))' at row 1
Error 1264 Out of range value for column 'cast(a as DECIMAL(3,2))' at row 1
SELECT 1.000000000000 * 99.999999999998 / 100 a,1.000000000000 * (99.999999999998 / 100) b;
a b
0.9999999999999800000000000000 0.9999999999999800000000000000
End of 5.0 tests
select cast(143.481 as decimal(4,1));
cast(143.481 as decimal(4,1))
...
...
mysql-test/t/type_newdecimal.test
View file @
8fcd446b
...
...
@@ -1159,6 +1159,11 @@ select cast(a as DECIMAL(3,2)), count(*)
UNION
select
12.1234
)
t
group
by
1
;
#
# Bug #27984 Long Decimal Maths produces truncated results
#
SELECT
1.000000000000
*
99.999999999998
/
100
a
,
1.000000000000
*
(
99.999999999998
/
100
)
b
;
--
echo
End
of
5.0
tests
#
...
...
strings/decimal.c
View file @
8fcd446b
...
...
@@ -1523,9 +1523,10 @@ decimal_round(decimal_t *from, decimal_t *to, int scale,
dec1
*
p0
=
buf0
+
intg0
+
max
(
frac1
,
frac0
);
dec1
*
p1
=
buf1
+
intg1
+
max
(
frac1
,
frac0
);
to
->
buf
[
0
]
=
0
;
while
(
buf0
<
p0
)
*
(
--
p1
)
=
*
(
--
p0
);
if
(
unlikely
(
intg1
>
intg0
))
to
->
buf
[
0
]
=
0
;
intg0
=
intg1
;
buf0
=
to
->
buf
;
...
...
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