You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@kylin.apache.org by "wangxianbin (JIRA)" <ji...@apache.org> on 2016/05/12 09:21:12 UTC

[jira] [Created] (KYLIN-1684) query on table "kylin_sales" return empty resultset after cube "kylin_sales_cube" which generated by sample.sh is ready

wangxianbin created KYLIN-1684:
----------------------------------

             Summary: query on table "kylin_sales" return empty resultset after cube "kylin_sales_cube" which generated by sample.sh is ready
                 Key: KYLIN-1684
                 URL: https://issues.apache.org/jira/browse/KYLIN-1684
             Project: Kylin
          Issue Type: Bug
          Components: Query Engine
    Affects Versions: v1.5.1
         Environment: cluster:
hadoop-2.6.0
hbase-0.98.8
hive-0.14.0
            Reporter: wangxianbin
            Assignee: liyang


there is a check for "InputRecords" in CubeStorageQuery search method which seem like unnecessary, as follow:
        List<CubeSegmentScanner> scanners = Lists.newArrayList();
        for (CubeSegment cubeSeg : cubeInstance.getSegments(SegmentStatusEnum.READY)) {
            CubeSegmentScanner scanner;
            if (cubeSeg.getInputRecords() == 0) {
                logger.info("Skip cube segment {} because its input record is 0", cubeSeg);
                continue;
            }
            scanner = new CubeSegmentScanner(cubeSeg, cuboid, dimensionsD, groupsD, metrics, filterD, !isExactAggregation);
            scanners.add(scanner);
        }

        if (scanners.isEmpty())
            return ITupleIterator.EMPTY_TUPLE_ITERATOR;

        return new SequentialCubeTupleIterator(scanners, cuboid, dimensionsD, metrics, returnTupleInfo, context);

this check will cause query return empty resultset, even there is data in storage engine.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)