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

KLIP-3: WITH OUTPUT_SCHEMA #2679

Closed
wants to merge 1 commit into from
Closed

KLIP-3: WITH OUTPUT_SCHEMA #2679

wants to merge 1 commit into from

Conversation

TobiasHauck
Copy link

@TobiasHauck TobiasHauck commented Apr 12, 2019

Description

Design proposal to support WITH (OUTPUT_SCHEMA='<schema-name>')

Related issues:

Testing done

Reviewer checklist

  • Ensure docs are updated if necessary. (eg. if a user visible feature is being added or changed).
  • Ensure relevant issues are linked (description should include text like "Fixes #")

@TobiasHauck TobiasHauck requested a review from a team as a code owner April 12, 2019 08:06
@ghost
Copy link

ghost commented Apr 12, 2019

It looks like @TobiasHauck hasn't signed our Contributor License Agreement, yet.

The purpose of a CLA is to ensure that the guardian of a project's outputs has the necessary ownership or grants of rights over all contributions to allow them to distribute under the chosen licence.
Wikipedia

You can read and sign our full Contributor License Agreement here.

Once you've signed reply with [clabot:check] to prove it.

Appreciation of efforts,

clabot

@TobiasHauck
Copy link
Author

[clabot:check]

@ghost
Copy link

ghost commented Apr 12, 2019

@confluentinc It looks like @TobiasHauck just signed our Contributor License Agreement. 👍

Always at your service,

clabot

@rmoff rmoff added the design-proposal Tag KLIP Prs with this label label Apr 12, 2019

## Design

The new ```WITH``` property is analyzed by the Analyzer and stored in the Query Analysis. That information is processed by the query engine and used by the AvroSerializer (KsqlAvroTopicSerDe). KsqlAvroTopicSerDe uses the schema registry client to get the latest metadata of the related output schema and uses this schema instead of the current one.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Won't think require KSQL to validate that the selected schema is compatible with the actual data being produced? Is there a schema registry API to do this?

Copy link
Author

@TobiasHauck TobiasHauck Apr 12, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes it must be validated if the selected schema is be compatible to the actual data being produced. We can check the original schema against the selected one by using this method:

https://github.com/confluentinc/schema-registry/blob/master/client/src/main/java/io/confluent/kafka/schemaregistry/avro/AvroCompatibilityChecker.java#L84

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@apurvam How shall we continue? Should I adjust the text?

@big-andy-coates
Copy link
Contributor

This KLIP likely overlaps with #3634.

@andrewegel
Copy link
Contributor

Causing CI to break due to the "unknown repository" - This needs to be closed to get around that. If this change is still required, please re-do it.

@andrewegel andrewegel closed this Jan 6, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
design-proposal Tag KLIP Prs with this label
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants