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

WIP - Add de-serialization autoconfiguration #162

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

quentingodeau
Copy link
Contributor

Hi, here the idea was to automatize the registration of de-serializer at startup, hope that it does go again the idea of the product.

@Crim
Copy link
Collaborator

Crim commented Apr 9, 2019

This is a really interesting idea! I wonder if we should just add your new interface into kafka-webview-plugin? It would be cool if we could have it work for both Deserializers and RecordFilters.

I'm not sure if we can easily support multiple message formats for one jar because if you were to edit one the message formats and upload a new jar, it would likely overwrite the others.

@quentingodeau
Copy link
Contributor Author

Nice you like the idea, no problem I will make the change to move everything in the plugin part, and for RecordFilter I will look.
Yes you are right about the update part can I change the DB (the default boolean to a enumerate)? I was thinking to suppress the configuration part on custom message formats when they are from autoconf, what do think?

@quentingodeau quentingodeau changed the title Add de-serialization autoconfiguration WIP - Add de-serialization autoconfiguration Apr 10, 2019
@quentingodeau quentingodeau force-pushed the feature/autoconfiguration branch 9 times, most recently from d08c64b to a446ebb Compare April 14, 2019 14:04
@quentingodeau
Copy link
Contributor Author

quentingodeau commented Apr 14, 2019

Hi I have finished the deserializer part and added tests (I will squash the two previous commit). There is more changes than I was expecting at the beginning...
I still have two problems:

  1. If the jar that provides deserializers is changed and the kafka-webview application restarted, then if some deserializerd have been deleted they will remain in the DB without the possibility to be removed. I have two possibilities:
  • one is to add a check at startup to find deserializers that have been removed and replace in existing view there usage by a ByteArray deserializer. The con of this method will be startup time and code complexity.
  • The second is to allow deletion of auto-configured deserializers.
  1. The second problem is that I have changed the database so it breaks compatibility with previous version. I was wandering where and how I can provide update scripts?

Finally, in the first commit, I've fixed the issue #160 but I can move this part outside and create a new PR just for this part.

Can we validate the changes that I have made so far before I work on RecordFilter?

@Crim Crim mentioned this pull request Jun 23, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants