Ksqldb-api-client:7.0.0 No enum constant io.confluent.ksql.api.client.ColumnType.Type.TIMESTAMP

Hey,

I am using Avro 1.11.0 and have an attribute in timestamp format:

 {
      "name": "TRANSACTION_DATETIME",
      "type": {
        "type": "long",
        "logicalType": "timestamp-millis"
      }

when requesting the ksqldb server via ksqldb-api-client:7.0.0 i am getting this error:

Caused by: java.lang.IllegalArgumentException: No enum constant io.confluent.ksql.api.client.ColumnType.Type.TIMESTAMP
	at java.base/java.lang.Enum.valueOf(Enum.java:240)
	at io.confluent.ksql.api.client.ColumnType$Type.valueOf(ColumnType.java:23)
	at io.confluent.ksql.api.client.impl.ColumnTypeImpl.<init>(ColumnTypeImpl.java:26)
	at io.confluent.ksql.api.client.util.RowUtil.columnTypeFromString(RowUtil.java:51)
	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
	at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1655)
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
	at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913)
	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)

Having a look to this Enum I can not find the Timestamp Enum as well:
package io.confluent.ksql.api.client;

/**
 * The type of a column returned as part of a query result.
 */
public interface ColumnType {

  enum Type { STRING, INTEGER, BIGINT, DOUBLE, BOOLEAN, DECIMAL, ARRAY, MAP, STRUCT }

  /**
   * Returns the type.
   *
   * @return the type
   */
  Type getType();

}

Why is this attribute not supported?

This is a bug in the Java client. It was fixed in ksqlDB 0.22.

Hey Jzaralim,

I found the version of 0.22. but not in the maven central…
Would it be possible to also place it there?