kafka-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sachin Mittal <sjmit...@gmail.com>
Subject How to set concrete names for state stores and internal topics backed by these
Date Fri, 06 Dec 2019 17:15:22 GMT
Hi,
In my application I have names of internal topics like this:

ss-session-application-KSTREAM-JOINOTHER-0000000059-store-changelog-0
ss-session-application-KSTREAM-JOINTHIS-0000000049-store-changelog-0
ss-session-application-KSTREAM-OUTEROTHER-0000000050-store-changelog-0
ss-session-application-KTABLE-MERGE-STATE-STORE-0000000061-changelog-0

Is it possible to set concrete names for these instead of say **
KSTREAM-JOINOTHER-0000000059-store**

This way I can identify at what code in my DSL is responsible for data
inside them.

So far I have set names for:
Grouped.with
Materialized.as
Joined.with

This has helped me get concrete names at many places however still at some
places I see arbitrary names.

Also note that somehow this code works
Materialized.with(new JSONSerde<K>(), new TupleJSONSerde<Pair<L, V>>())

But not:
Materialized.as("d-l-i-store").withKeySerde(new
JSONSerde<K>()).withValueSerde(new TupleJSONSerde<Pair<L, V>>())

The error I get is:
Description Resource Path Location Type
The method withKeySerde(Serde<Object>) in the type
Materialized<Object,Object,StateStore> is not applicable for the arguments
(JSONSerde<K>)

I have my class

class JSONSerde<T extends JSONSerdeCompatible> implements Serializer<T>,
Deserializer<T>, Serde<T> {
......
}

This is pretty much same as from kafka streams typed example.

Thanks
Sachin

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message