Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

KSQL should warn when forcing CSAS object names to upper case #1287

Closed
rmoff opened this issue May 9, 2018 · 1 comment
Closed

KSQL should warn when forcing CSAS object names to upper case #1287

rmoff opened this issue May 9, 2018 · 1 comment
Assignees

Comments

@rmoff
Copy link
Contributor

rmoff commented May 9, 2018

Creating a stream called mysql_customers, KSQL instead calls it (and the underlying topic) MYSQL_CUSTOMERS.

Either KSQL is case-sensitive or it isn't. If it is, then it should warn the user (probably in the output from the CSAS) that it's used a different object name from that specified in the DDL

ksql> CREATE STREAM mysql_customers AS SELECT * FROM CUSTOMERS_SRC PARTITION BY ID;

 Message
----------------------------
 Stream created and running
----------------------------

ksql> CREATE TABLE CUSTOMERS WITH (KAFKA_TOPIC='mysql_customers', VALUE_FORMAT ='AVRO', KEY='ID');
 Could not fetch the AVRO schema from schema registry. Subject not found.; error code: 40401

ksql> show streams;

 Stream Name         | Kafka Topic           | Format
------------------------------------------------------
 CUSTOMERS_SRC_REKEY | CUSTOMERS_SRC_REKEY   | AVRO
 RATINGS             | ratings               | AVRO
 CUSTOMERS_SRC       | asgard.demo.customers | AVRO
 MYSQL_CUSTOMERS     | MYSQL_CUSTOMERS       | AVRO
------------------------------------------------------

Bonus points : From a UX point of view, it would be nice if KSQL can't find a schema that it did a second check against the Schema Registry and told the user that there is a schema of that name and did they mean to use that one instead?

@big-andy-coates
Copy link
Contributor

big-andy-coates commented Sep 11, 2019

Maybe we could include the stream name in the message returned? e.g.

ksql> CREATE STREAM mysql_customers AS SELECT * FROM CUSTOMERS_SRC PARTITION BY ID;

 Message
----------------------------------------------------
 Stream 'MYSQL_CUSTOMERS' created and running
----------------------------------------------------

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants