Kudu维表在做join的时候,过滤条件不起作用

Open
#318 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
30/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Stale
Tech stack
java, sql
Domain
databases

Research direction

The report points to KuduAsyncSideInfo.buildEqualInfo and says dealOneEqualCon is never called; begin by locating those methods and reproducing the shown SQL against the Kudu side table. Trace the join setup and verify that the ON condition is applied rather than producing a Cartesian-product count, then add or update coverage for the corrected behavior.

Written by the indexing model from the issue text.

Description

insert into dim_kafka_sink SELECT p.no, p.code, count(c.phone) tag_test_1 from bdl_kafka_source s inner join bdl_kudu_side c on c.user_id = s.user_id

使用1.8版本,在测试的时候,发现统计的结果是s表和c做笛卡尔积的数量,怀疑join中的on条件没有起作用。通过源码断点调试,发现下面的循环不能进去:

image

继续排查发现KuduAsyncSideInfo类的buildEqualInfo方法是空的实现, dealOneEqualCon也方法也没有被调用

Dominant language
Java
Stars
2k
Forks
913
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from DTStack/flinkStreamSQL

All issues in DTStack/flinkStreamSQL

Similar issues

More Java issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.