ps execute with double data more than 1e15 will return invalid number
This commit is contained in:
@ -2034,7 +2034,7 @@ int ObMPStmtExecute::parse_basic_param_value(ObIAllocator &allocator,
|
|||||||
} else if (FALSE_IT(buf_len = ob_gcvt_strict(value, OB_GCVT_ARG_DOUBLE, alloc_size,
|
} else if (FALSE_IT(buf_len = ob_gcvt_strict(value, OB_GCVT_ARG_DOUBLE, alloc_size,
|
||||||
buf, NULL, TRUE/*is_oracle_mode*/,
|
buf, NULL, TRUE/*is_oracle_mode*/,
|
||||||
FALSE/*is_binary_double*/, FALSE))) {
|
FALSE/*is_binary_double*/, FALSE))) {
|
||||||
} else if (OB_FAIL(nb.from(buf, buf_len, allocator))) {
|
} else if (OB_FAIL(nb.from_sci_opt(buf, buf_len, allocator))) {
|
||||||
LOG_WARN("decode double param to number failed", K(ret));
|
LOG_WARN("decode double param to number failed", K(ret));
|
||||||
} else {
|
} else {
|
||||||
param.set_number(nb);
|
param.set_number(nb);
|
||||||
|
|||||||
Reference in New Issue
Block a user