From b067ad8227b024de1f5a507b241c4c23355fcd84 Mon Sep 17 00:00:00 2001 From: obdev Date: Tue, 14 Mar 2023 11:13:48 +0000 Subject: [PATCH] ps execute with double data more than 1e15 will return invalid number --- src/observer/mysql/obmp_stmt_execute.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/observer/mysql/obmp_stmt_execute.cpp b/src/observer/mysql/obmp_stmt_execute.cpp index 2a876abd4d..21be2e81cf 100644 --- a/src/observer/mysql/obmp_stmt_execute.cpp +++ b/src/observer/mysql/obmp_stmt_execute.cpp @@ -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, buf, NULL, TRUE/*is_oracle_mode*/, 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)); } else { param.set_number(nb);