You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by GitBox <gi...@apache.org> on 2020/07/10 02:41:40 UTC

[GitHub] [incubator-doris] EmmyMiao87 opened a new issue #4065: [Bug] Materialized selector chooses the error index when Count(*)

EmmyMiao87 opened a new issue #4065:
URL: https://github.com/apache/incubator-doris/issues/4065


   **Describe the bug**
   Query: Select count(*) from table;
   Error: errorCode = 2, detailMessage = field name is invalid. field = boolean column
   
   **To Reproduce**
   Steps to reproduce the behavior:
   1.  create table
   ```
   CREATE TABLE `ads_feed_card_pd_info`(
     `member_id` bigint COMMENT '用户的id', 
     `client_id` varchar(36) COMMENT '设备id', 
     `hash_id` varchar(32) COMMENT '用户hashid', 
     `p_date` DATE,
     `is_client_id_day_new` boolean COMMENT '是否是新设备', 
     `is_member_hash_id_day_new` boolean COMMENT '是否是新用户', 
     `user_type` varchar(12) COMMENT '用户类型', 
     `is_user_logged_in` boolean COMMENT '是否登录', 
     `member_is_pu` boolean COMMENT '是否是 pu 用户', 
     `loyalty` varchar(6) COMMENT '注册时长', 
     `frequency` varchar(10) COMMENT '访问频率', 
     `recency` varchar(4) COMMENT '距离上次访问间隔天数', 
     `is_best_answer` int COMMENT '是否是优秀回答者', 
     `people_rank` bigint COMMENT '用户排名', 
     `answer_num` int COMMENT '答案数', 
     `question_num` int COMMENT '问题数', 
     `article_num` int COMMENT '文章数', 
     `comment_num` int COMMENT '评论数', 
     `public_collect_num` int COMMENT '创建的公开收藏夹数', 
     `answer_voted_num` int COMMENT '答案获得的点赞总数', 
     `article_voted_num` int COMMENT '文章获得的点赞总数', 
     `answer_collected_num` int COMMENT '答案被收藏总数', 
     `article_collected_num` int COMMENT '文章被收藏总数', 
     `answer_commented_num` int COMMENT '答案被评论总数', 
     `article_commented_num` int COMMENT '文章被评论总数', 
     `vote_answer_num` int COMMENT '对答案点赞的总数', 
     `down_vote_answer_num` int COMMENT '对答案点反对的总数', 
     `thank_answer_num` int COMMENT '对答案感谢的总数', 
     `follower_num` int COMMENT '粉丝数', 
     `followee_num` int COMMENT '关注用户数', 
     `follow_topic_num` int COMMENT '关注话题数', 
     `follow_question_num` int COMMENT '关注问题数', 
     `author_id` bigint COMMENT '卡片内容作者的 id', 
     `author_user_type` int COMMENT '卡片内容作者的类型', 
     `author_is_pu` int COMMENT '卡片作者是否是 pu', 
     `words` bigint COMMENT '内容字数', 
     `is_good_content` bigint COMMENT '是否是标优内容', 
     `content_title` varchar(520) COMMENT '内容的标题', 
     `content_type` varchar(12) COMMENT '内容类型', 
     `content_id` varchar(32) COMMENT '内容 id', 
     `feed_source` varchar(42) COMMENT '首页卡片来源', 
     `cardshow_time_hour` int COMMENT '卡片展现的时间所在的小时', 
     `content_age` bigint COMMENT '内容新旧: 内容被看到的时间 - 内容创建时间, cardshow_time - publish_time', 
     `voteuped_num` int COMMENT '卡片展现时被赞数', 
     `commented_num` int COMMENT '卡片展现时被评论数', 
     `followed_num` int COMMENT '卡片展现时被关注数', 
     `feed_index` int COMMENT '在首页的索引', 
     `parent_id` varchar(10) COMMENT '内容的父内容 id', 
     `session_token` varchar(106) COMMENT 'feed 所在的 session 的 token', 
     `video_id` bigint COMMENT '视频的 id', 
     `content_token` varchar(74) COMMENT '内容的token', 
     `generator_type` varchar(20) COMMENT '内容生成的类型', 
     `parent_token` varchar(42) COMMENT '内容父内容的 token', 
     `is_ad` boolean COMMENT '内容是否是广告', 
     `ad_id` bigint COMMENT '广告的 id', 
     `display_type` varchar(6) COMMENT '首页展示的卡片形式', 
     `session_id` varchar(36) COMMENT '所在的大 session id', 
     `sub_session_id` varchar(36) COMMENT '所在的子 session_id', 
     `sub_session_type` varchar(10) COMMENT '所在的子 session 的类型', 
     `utm_medium` varchar(242) COMMENT 'utm_medium', 
     `utm_source` varchar(46) COMMENT 'utm_source', 
     `utm_campaign` varchar(22) COMMENT 'utm_campaign', 
     `utm_content` varchar(52) COMMENT 'utm_content', 
     `utm_division` varchar(151) COMMENT 'utm_division', 
     `first_content_type` varchar(12) COMMENT '子session入口类型,子session里点击OpenUrl跳转到新页面的那条日志对应的content_type, 或 PV', 
     `first_content_id` varchar(41) COMMENT '子 session 入口的内容,子session里点击OpenUrl跳转到新页面的那条日志对应的content_id, content_token', 
     `source_type` varchar(15) COMMENT '上一个子session 的类型', 
     `source_vertical_type` varchar(12) COMMENT '上一个子 session的最后一条日志url的vertical', 
     `context` varchar(14) COMMENT '新旧版首页, 来自entry[logtype=CardShow].detail.view.path[1].module', 
     `platform` varchar(12) COMMENT '平台: android ios ipad', 
     `version_name` varchar(12) COMMENT '版本名', 
     `version_code` int COMMENT '版本号码', 
     `is_read_finished` boolean COMMENT '读完内容', 
     `read_duration` bigint COMMENT '阅读时长', 
     `is_comment_read` boolean COMMENT '是否查看评论', 
     `comment_read_num` int COMMENT '查看评论条数', 
     `is_comment` boolean COMMENT '是否评论', 
     `is_upvote` boolean COMMENT '是否点赞', 
     `is_collect` boolean COMMENT '是否收藏', 
     `is_share` boolean COMMENT '是否分享', 
     `is_thank` boolean COMMENT '是否感谢', 
     `is_uninterest` boolean COMMENT '是否不感兴趣', 
     `is_down_vote` boolean COMMENT '是否反对', 
     `is_unhelp` boolean COMMENT '是否已没有帮助', 
     `is_purchase` boolean COMMENT '是否购买', 
     `is_autoplay` boolean COMMENT '是否自动播放', 
     `is_play` boolean COMMENT '是否主动播放', 
     `play_duration` bigint COMMENT '播放总时长', 
     `is_read` boolean COMMENT '点击内容(点击 body 或展开, 对新增的折叠卡片,点击就是展开, (action = OpenUrl and element_name in (Title, Body)) or action = Expand', 
     `is_title_click` boolean COMMENT '点击标题', 
     `is_report` boolean COMMENT '是否被举报', 
     `follow_question_kickoff` varchar(8) COMMENT '关注问题开关转换态', 
     `follow_collection_kickoff` varchar(8) COMMENT '关注收藏夹开关转换态', 
     `follow_roundtable_kickoff` varchar(8) COMMENT '关注圆桌开关转换态', 
     `follow_column_kickoff` varchar(8) COMMENT '关注专栏开关转换态', 
     `follow_topic_kickoff` varchar(8) COMMENT '关注话题开关转换态', 
     `follow_author_kickoff` varchar(8) COMMENT '关注作者开关转换态', 
     `extra_read_num` int COMMENT '对这条内容的衍生浏览内容数', 
     `extra_read_duration` bigint COMMENT '对这条内容的衍生浏览内容时长', 
     `is_up_stuff` boolean COMMENT '是否有正向点击行为', 
     `is_valid_sub_session` boolean COMMENT '是否是有效子 session', 
     `import_druid_time` bigint COMMENT '用于导入 druid', 
     `extra_read_content_num` bigint COMMENT '衍生浏览的内容日志条数', 
     `extra_read_content_duration` bigint COMMENT '衍生浏览的内容的时长', 
     `extra_upvote_num` bigint COMMENT '对衍生内容的点赞数', 
     `extra_collect_num` bigint COMMENT '对衍生内容的收藏数', 
     `extra_comment_read_num` bigint COMMENT '对衍生内容的评论浏览数', 
     `extra_comment_num` bigint COMMENT '对衍生内容的评论数', 
     `extra_follow_author_num` bigint COMMENT '衍生浏览带来的关注作者数', 
     `extra_share_num` bigint COMMENT '对衍生内容的分享数', 
     `extra_thank_num` bigint COMMENT '对衍生内容的感谢数', 
     `extra_downvote_num` bigint COMMENT '对衍生内容的反对数', 
     `extra_report_num` bigint COMMENT '对衍生内容的举报数', 
     `extra_is_follow_author` boolean COMMENT '是否是衍生内容带来的关注用户', 
     `cardshow_time` bigint COMMENT '卡片展现时的时间', 
     `charge_type` varchar(6) COMMENT '付费类型', 
     `is_answer` boolean COMMENT '是否添加回答', 
     `content_age_level` varchar(8) COMMENT '内容从发布到被看到的时间长度分片', 
     `container_type` varchar(40) COMMENT '区分是否是精彩动态还是 Timeline', 
     `tab_type` varchar(30) COMMENT '区分新老的关注页', 
     `cardshow_num` bigint COMMENT '用户推荐页卡片数', 
     `cardshow_clicknum` bigint COMMENT '用户推荐页卡片点击数', 
     `channel_app_store` varchar(19) COMMENT '渠道媒体商', 
     `brand` varchar(47) COMMENT '品牌', 
     `model` varchar(37) COMMENT '机型', 
     `city` varchar(12) COMMENT '地域', 
     `server_timestamp` bigint COMMENT '服务端时间戳', 
     `has_extra_read` boolean COMMENT '卡片是否有引申阅读', 
     `request_id` varchar(20) COMMENT '请求id', 
     `card_height` varchar(4) COMMENT '卡片高度', 
     `card_width` varchar(4) COMMENT '卡片宽度', 
     `ad_session_id` varchar(36) COMMENT '广告业务的sessionid', 
     `feed_offset` int COMMENT '首页卡片序列', 
     `network_type` varchar(8) COMMENT '当前网络类型', 
     `rec_reason` varchar(29) COMMENT '推荐理由', 
     `view_homefeed_label` int COMMENT '推荐页浏览类别', 
     `view_homefeed_label_name` varchar(13) COMMENT '推荐页浏览类别解释', 
     `view_other_label` int COMMENT '非推荐页浏览类别', 
     `view_other_label_name` varchar(2) COMMENT '非推荐页浏览类别解释', 
     `interaction_label` int COMMENT '互动行为类别', 
     `interaction_label_name` varchar(9) COMMENT '互动行为类别解释', 
     `creation_activity_label` int COMMENT '创作活跃度所属类别', 
     `creation_activity_label_name` varchar(9) COMMENT '创作活跃度所属类别解释', 
     `creation_ability_label` int COMMENT '创作能力所属类别', 
     `creation_ability_label_name` varchar(4) COMMENT '创作能力所属类别解释', 
     `social_label` int COMMENT '社交行为所属类别', 
     `active_label` int COMMENT '活跃等级', 
     `active_label_name` varchar(2) COMMENT '活跃等级解释', 
     `vip_rank` int COMMENT 'vip等级', 
     `is_popular` int COMMENT '是否低门槛内容', 
     `is_editor_recommend` int COMMENT '是否编辑推荐', 
     `is_operator_marked` int COMMENT '是否运营标记', 
     `is_audit_pass` int COMMENT '是否审核通过', 
     `parent_content_sub_type` varchar(9) COMMENT '内容的父内容的子类型名称', 
     `event_card_source` varchar(16) COMMENT '活动卡片来源', 
     `paid_answer` varchar(10) COMMENT '推荐页付费回答', 
     `common_card_style` varchar(10) COMMENT '通用化卡片展示样式', 
     `poll_id` varchar(20) COMMENT 'pk卡片pk项目id', 
     `is_detail_play` boolean COMMENT '是否详情页播放', 
     `is_detail_autoplay` boolean COMMENT '是否详情页自动播放', 
     `detail_play` bigint COMMENT '详情页时长', 
     `has_drama` varchar(5) COMMENT '是否包含直播', 
     `drama_status` varchar(12) COMMENT '直播状态:观看直播/预告/回放', 
     `media_type` varchar(6) COMMENT '激活媒体类型', 
     `is_interest_play` boolean COMMENT '是否感兴趣播放', 
     `member_author_level` int COMMENT '用户创作者等级', 
     `content_author_level` int COMMENT '内容作者创作者等级', 
     `brand_ad` varchar(4) COMMENT '品牌广告', 
     `commercial_content_pv_id` varchar(36) COMMENT '商业 pv_id', 
     `feed_pv_id` varchar(36) COMMENT '首页对应每 CardShow 的 pv_id 字段', 
     `feed_page_num` varchar(4) COMMENT '首页刷次信息', 
     `feed_delivery_type` varchar(10) COMMENT '首页分发类型字段', 
     `loyalty_day` varchar(4) COMMENT '注册时长(单位天)', 
     `is_reaction` boolean COMMENT '是否鼓掌', 
     `is_repost` boolean COMMENT '是否鼓掌', 
     `zvideo_paid` varchar(10) COMMENT '推荐页付费视频实体', 
     `feed_server_timestamp` bigint COMMENT '后端下发时间'
   ) 
   ENGINE=olap
   DUPLICATE KEY(member_id, client_id, hash_id)
   PARTITION BY RANGE (p_date)
   (
     PARTITION p1 VALUES LESS THAN ("2017-07-01"),
     PARTITION p2 VALUES LESS THAN ("2017-07-02"),
     PARTITION p3 VALUES LESS THAN ("2017-07-03"),
     PARTITION p4 VALUES LESS THAN ("2017-07-04"),
     PARTITION p5 VALUES LESS THAN ("2017-07-06"),
     PARTITION p6 VALUES LESS THAN ("2017-07-07"),
     PARTITION p7 VALUES LESS THAN ("2017-07-08"),
     PARTITION p8 VALUES LESS THAN ("2017-07-09"),
     PARTITION p9 VALUES LESS THAN ("2017-07-10")
   )
   DISTRIBUTED BY HASH(member_id) BUCKETS 32
   ROLLUP(
     user_dim_rollup(
       is_client_id_day_new, is_member_hash_id_day_new, is_user_logged_in, member_is_pu, people_rank, 
       author_id, author_is_pu, member_author_level, content_author_level
     ),
     user_type_rollup(user_type),
     author_type_rollup(author_user_type),
     content_dim_rollup(
       is_good_content, content_type,generator_type,display_type
     ),
     user_behavior_rollup(
       is_comment, is_upvote, is_share, is_thank, is_uninterest, is_down_vote, is_unhelp, is_purchase, is_autoplay, 
       is_play, is_read, is_title_click, is_report, is_up_stuff, is_reaction, is_repost, is_interest_play
     ),
     region_rollup(city),
     common_rollup(network_type, brand)
   )
   PROPERTIES(
     "replication_num"="1",
     "storage_type"="column"
   );
   ```
   2. query
   ```
   select count(*) from ads_feed_card_pd_info;
   ERROR 1064 (HY000): errCode = 2, detailMessage = field name is invalied. field=is_client_id_day_new
   ```
   3. explain query
   ```
   explain select count(*) from ads_feed_card_pd_info;
   +---------------------------------------------------------------------------------------------------------------+
   | Explain String                                                                                                |
   +---------------------------------------------------------------------------------------------------------------+
   | PLAN FRAGMENT 0                                                                                               |
   |  OUTPUT EXPRS:<slot 0> count(*)                                                                               |
   |   PARTITION: UNPARTITIONED                                                                                    |
   |                                                                                                               |
   |   RESULT SINK                                                                                                 |
   |                                                                                                               |
   |   3:AGGREGATE (merge finalize)                                                                                |
   |   |  output: count(<slot 0> count(*))                                                                         |
   |   |  group by:                                                                                                |
   |   |  tuple ids: 1                                                                                             |
   |   |                                                                                                           |
   |   2:EXCHANGE                                                                                                  |
   |      tuple ids: 1                                                                                             |
   |                                                                                                               |
   | PLAN FRAGMENT 1                                                                                               |
   |  OUTPUT EXPRS:                                                                                                |
   |   PARTITION: RANDOM                                                                                           |
   |                                                                                                               |
   |   STREAM DATA SINK                                                                                            |
   |     EXCHANGE ID: 02                                                                                           |
   |     UNPARTITIONED                                                                                             |
   |                                                                                                               |
   |   1:AGGREGATE (update serialize)                                                                              |
   |   |  output: count(*)                                                                                         |
   |   |  group by:                                                                                                |
   |   |  tuple ids: 1                                                                                             |
   |   |                                                                                                           |
   |   0:OlapScanNode                                                                                              |
   |      TABLE: ads_feed_card_pd_info                                                                             |
   |      PREAGGREGATION: ON                                                                                       |
   |      partitions=1/9                                                                                           |
   |      rollup: region_rollup                                                                                    |
   |      tabletRatio=32/32                                                                                        |
   |      tabletList=84298373,84298375,84298377,84298379,84298381,84298383,84298385,84298387,84298389,84298391 ... |
   |      cardinality=0                                                                                            |
   |      avgRowSize=0.0                                                                                           |
   |      numNodes=1                                                                                               |
   |      tuple ids: 0                                                                                             |
   +---------------------------------------------------------------------------------------------------------------+
   38 rows in set (0.02 sec)
   
   The incorrect index has been chosen.
   ```
   **Expected behavior**
   
   The index which include field is_client_id_day_new should be chosen.
   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


[GitHub] [incubator-doris] EmmyMiao87 closed issue #4065: [Bug] Materialized selector chooses the error index when Count(*)

Posted by GitBox <gi...@apache.org>.
EmmyMiao87 closed issue #4065:
URL: https://github.com/apache/incubator-doris/issues/4065


   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org