【问题标题】:Ksql, GROUP BY return ServerError:java.lang.NullPointerExceptionKsql, GROUP BY 返回 ServerError:java.lang.NullPointerException
【发布时间】:2018-06-08 02:38:01
【问题描述】:

我正在使用 confluent 4.1.1,我尝试了几个聚合命令,但总是返回带有 GROUP BY 的 NPE:

ksql> select cust_id, count(*) as sum_sub from TBL_SUBSCRIBER GROUP BY cust_id;
 ServerError:java.lang.NullPointerException
ksql> 

ksql> describe extended TBL_SUBSCRIBER;

Type                 : TABLE
Key field            : SUB_ID
Timestamp field      : Not set - using <ROWTIME>
Key format           : STRING
Value format         : DELIMITED
Kafka output topic   : subscriber (partitions: 10, replication: 3)

 Field               | Type                      
 ROWTIME             | BIGINT           (system) 
 ROWKEY              | VARCHAR(STRING)  (system) 
 SUB_ID              | VARCHAR(STRING)           
 CONTRACT_ID         | VARCHAR(STRING)           
 CUST_ID             | VARCHAR(STRING)           
 ACCOUNT_ID          | VARCHAR(STRING)           
 TELECOM_SERVICE_ID  | VARCHAR(STRING)         

请帮帮我!

【问题讨论】:

  • 使用与here 相同的主题和流/表定义,我没有出错,所以这个应该 工作:) 出于兴趣,你能试试最新的@ 987654322@ 看看它是否在那里工作?如果没有,请将其提升为 github issue,并附上重现步骤。
  • 我尝试使用具有相同架构的流没有错误,但是使用 table 时,我得到了上述错误。也许查询只适用于流?
  • 听起来像一个错误。如果可以在最新版本的 ksqlDB 上重新创建,请提出Github issue

标签: apache-kafka ksqldb


【解决方案1】:

很抱歉,您在使用 KSQL 时遇到了问题。听起来像是您正在运行的旧版本中的错误。我相信您遇到的问题已在更新版本的 ksqlDB 中得到修复。我很有信心,因为有明确的测试用例涵盖了在 TABLE 源上执行这样的分组:https://github.com/confluentinc/ksql/blob/964c8ad665599123ad3635a2f806cb316e4f206e/ksqldb-functional-tests/src/test/resources/query-validation-tests/group-by.json#L184-L218

请升级并重试。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-11-03
    • 2018-01-30
    • 1970-01-01
    • 2011-04-05
    • 2014-04-26
    • 2016-01-02
    • 2017-07-15
    相关资源
    最近更新 更多