Yes. Currently, the HBase lookup source only supports lookup on rowkey.
If there is more than one join on condition, it may fail.

We should support lookup HBase on multiple fields (by Get#setFilter).
Feel free to open issues.

Best,
Jark

On Mon, 28 Jun 2021 at 12:48, 纳兰清风 <houying910...@163.com> wrote:

> Hi,
>
>   When I was using hbase table as my lookup table, I got this error:
>
>     Caused by: java.lang.IllegalArgumentException: Currently, HBase table
> can only be lookup by single row key.
>     at
> org.apache.flink.util.Preconditions.checkArgument(Preconditions.java:138)
>
> My SQL is
>
> insert into sink_kafka(user_ucid,city_code,`source`,system_type)
> SELECT t1.ucid AS user_ucid,
>      t1.city_code,
>      t1.`source`,
>      t1.system_type
> FROM tmp_ucid_check t1
> LEFT JOIN dim_hbase_valid_im_commercial_cust_di_cache
> for SYSTEM_TIME AS OF t1.proctime AS t2
> ON concat(t1.ucid,'&',t1.city_code) = t2.rowKey
> WHERE t2.city_code is NOT null
> AND t1.city_code = t2.city_code;
>
> It maybe because the conditions in where clause, being pushed down as  a 
> predicate
> into join clause ?
> How can I solve this problem ?
>
> Thank you
>
>
>
>

Reply via email to