为什么 DESCRIBE EXTENDED in Kafka KSQL return error ShowColumns not supported?

Why does DESCRIBE EXTENDED in Kafka KSQL return error ShowColumns not supported?

我在 KSQL 中有一个名为 DIMAGE 的简单 KTABLE

当我运行下面的代码

{
"ksql": "DESCRIBE EXTENDED DIMAGE ;"
}

我收到以下错误

{
    "@type": "generic_error",
    "error_code": 40000,
    "message": "Statement type `io.confluent.ksql.parser.tree.ShowColumns' not supported for this resource",
    "stackTrace": []
}

我也收到了一条试图描述流的类似错误消息。如果删除 EXTENDED 属性,我也会收到相同的错误消息。

您使用了错误的 REST 端点。如果你使用 query endpoint query 你会得到你的错误:

$ curl -s -X "POST" "http://localhost:8088/query" \
       -H "Content-Type: application/vnd.ksql.v1+json; charset=utf-8" \
       -d '{
    "ksql": "DESCRIBE EXTENDED COMPUTER_T;"
  }'
{"@type":"generic_error","error_code":40000,"message":"Statement type `io.confluent.ksql.parser.tree.ShowColumns' not supported for this resource","stackTrace":[]}⏎

如果你使用 statement endpoint ksql 它工作正常:

$ curl -s -X "POST" "http://localhost:8088/ksql" \
       -H "Content-Type: application/vnd.ksql.v1+json; charset=utf-8" \
       -d '{
    "ksql": "DESCRIBE EXTENDED COMPUTER_T;"
  }'|jq '.'
[
  {
    "@type": "sourceDescription",
    "statementText": "DESCRIBE EXTENDED COMPUTER_T;",
    "sourceDescription": {
      "name": "COMPUTER_T",
      "readQueries": [
        {
          "sinks": [
            "COMP_WATCH_BY_EMP_ID_T"
          ],
          "id": "CTAS_COMP_WATCH_BY_EMP_ID_T_0",
[...]

我已经登录 #2362 以便我们改进它的用户体验。