Fix the bug of incorrect result from bit cast to decimal, when the value is out of int64_t

This commit is contained in:
obdev
2023-11-02 02:39:37 +00:00
committed by ob-robot
parent 408243335b
commit 1045c49045

View File

@ -6100,7 +6100,7 @@ CAST_FUNC_NAME(bit, number)
{
EVAL_ARG()
{
int64_t in_val = child_res->get_uint();
uint64_t in_val = child_res->get_uint();
ObNumStackOnceAlloc tmp_alloc;
number::ObNumber number;
if (OB_FAIL(number.from(in_val, tmp_alloc))) {
@ -6357,7 +6357,7 @@ CAST_FUNC_NAME(bit, decimalint)
{
EVAL_ARG()
{
int64_t in_val = child_res->get_uint();
uint64_t in_val = child_res->get_uint();
ObDecimalIntBuilder tmp_alloc;
ObDecimalInt *decint = nullptr;
int32_t val_len = 0;