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

Json serde MVP #25

Open
6 of 7 tasks
big-andy-coates opened this issue Mar 17, 2022 · 0 comments
Open
6 of 7 tasks

Json serde MVP #25

big-andy-coates opened this issue Mar 17, 2022 · 0 comments
Assignees
Labels
enhancement New feature or request epic

Comments

@big-andy-coates
Copy link
Member

big-andy-coates commented Mar 17, 2022

Support JSON serialised objects as record keys and values.

JSON payload on read and write will be validated against a plugable schema store, with a default impl for the Confluent schema registry.

Validation against schema on read / write operatilons controllable via config, with recommendation to leave it on even in Prod for all but the busiest of topics. (Would benefit from performance metrics).

Tasks

  1. Epic enhancement
  2. subtask
  3. enhancement
  4. bug
    big-andy-coates
  5. enhancement
@big-andy-coates big-andy-coates added the enhancement New feature or request label Oct 23, 2022
@big-andy-coates big-andy-coates changed the title Json Serdes Json Support Mar 11, 2023
@big-andy-coates big-andy-coates changed the title Json Support Json serde support Apr 13, 2023
@big-andy-coates big-andy-coates changed the title Json serde support Json serde Apr 13, 2023
@big-andy-coates big-andy-coates self-assigned this Apr 13, 2023
big-andy-coates added a commit that referenced this issue Nov 22, 2023
Wire in the ability for a serde provider to 'ensure' the schemas of owned topics are registered. This is called during service initialisation.

This will be used when JSON schema serde is added. (#25).
big-andy-coates added a commit that referenced this issue Nov 22, 2023
* Prep work for registering schemas

Wire in the ability for a serde provider to 'ensure' the schemas of owned topics are registered. This is called during service initialisation.

This will be used when JSON schema serde is added. (#25).
big-andy-coates added a commit that referenced this issue Jan 12, 2024
Prep work for: #25

1. Invert how serde resources are initialised. Rather than calling into the serde, pass the Creek API to the serde, allowing it to do anything legal, including registering a resource handler for topic schemas!

2. Clean up and improve validation of topic resources: this is now all done via the `validateGroup` callback on the `ResourceHandler`. Removed validation code from elsewhere. This allowed dropping `KafkaTopicDescriptors` and KafkaTopicConfigs`. Required parts moved into the validator code. Everything else can just use resource ids.

3. Standardised `TopicDescriptors` implementations and got them ready for supporting json format.

4. Plus, update to work with recent changes:
 - creek-service/creek-platform#195
 - creek-service/creek-service#257
 - creek-service/creek-system-test#397
big-andy-coates added a commit that referenced this issue Jan 12, 2024
* Allow serde to register resource handler.

Prep work for: #25

1. Invert how serde resources are initialised. Rather than calling into the serde, pass the Creek API to the serde, allowing it to do anything legal, including registering a resource handler for topic schemas!

2. Clean up and improve validation of topic resources: this is now all done via the `validateGroup` callback on the `ResourceHandler`. Removed validation code from elsewhere. This allowed dropping `KafkaTopicDescriptors` and KafkaTopicConfigs`. Required parts moved into the validator code. Everything else can just use resource ids.

3. Standardised `TopicDescriptors` implementations and got them ready for supporting json format.

4. Plus, update to work with recent changes:
 - creek-service/creek-platform#195
 - creek-service/creek-service#257
 - creek-service/creek-system-test#397

* Fix static checks

* Fix java docs

* Remove InitializationParams

As the type overrides can be obtained from the api.
@big-andy-coates big-andy-coates changed the title Json serde Json serde MVP Jan 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request epic
Projects
Status: In progress
Development

No branches or pull requests

1 participant