stonedb
stonedb copied to clipboard
bug: Q16- The data obtained in DEBUG mode is null
Describe the problem
Mysql column storage engine -q16 -debug mode The data obtained is empty and to be fixed
int64_t VirtualColumnBase::GetMaxInt64(const core::MIIterator &mit) {
int64_t res = GetMaxInt64Impl(mit);
DEBUG_ASSERT(res != common::NULL_VALUE_64);
if (Type().IsFloat()) {
if (*(double *)&res > *(double *)&vc_max_val && vc_max_val != common::PLUS_INF_64 &&
vc_max_val != common::NULL_VALUE_64)
return vc_max_val;
} else if ((vc_max_val != common::NULL_VALUE_64 && res > vc_max_val))
return vc_max_val;
return res;
}
int64_t VirtualColumnBase::GetMinInt64(const core::MIIterator &mit) {
int64_t res = GetMinInt64Impl(mit);
DEBUG_ASSERT(res != common::NULL_VALUE_64);
if (Type().IsFloat()) {
if (*(double *)&res < *(double *)&vc_min_val && vc_min_val != common::MINUS_INF_64 &&
vc_min_val != common::NULL_VALUE_64)
return vc_min_val;
} else if ((vc_min_val != common::NULL_VALUE_64 && res < vc_min_val))
return vc_min_val;
return res;
}
Get data on a blank line:
SQL
select
p_brand,
p_type,
p_size,
count(distinct ps_suppkey) as supplier_cnt
from
partsupp,
part
where
p_partkey = ps_partkey
and p_brand <> 'Brand#45'
and p_type not like 'MEDIUM POLISHED%'
and p_size in (49,
14,
23,
45,
19,
3,
36,
9)
and ps_suppkey not in (
select
s_suppkey
from
supplier
where
s_comment like '%Customer%Complaints%' )
group by
p_brand,
p_type,
p_size
order by
supplier_cnt desc,
p_brand,
p_type,
p_size;
Expected behavior
No response
How To Reproduce
No response
Environment
No response
Are you interested in submitting a PR to solve the problem?
- [X] Yes, I will!