Hi Mariusz,
How is fooKey de-/serialized?
I ask that because maybe the serializer for fooKey cannot handle the
extended enum.
Best,
Bruno
On 9/20/23 12:22 AM, M M wrote:
Hello,
This is my first time asking a question on a mailing list, so please
forgive me any inaccuracies.
I am having a Kafka Streams application with a Punctuator.
Inside the punctuate() I have this code:
// fooStore is a state store
for (FooKey fooKey : fooKeysRepository.get(Type.FOO)) { Foo foo =
fooStore.get(fooKey); // foo != null
This returns a Foo which is not null.
FooKey has fields: [string(nullable), enum(nullable), string(nullable)]
I extended enum with a new value, say BAZ (I appended that at the end of
the enum) so it looks like:
"symbols": [
"A",
"B",
....,
"UNKNOWN"
"BAZ"
],
"default": "UNKNOWN"
and suddenly after this change,
for (FooKey fooKey : fooKeysRepository.get(Type.FOO)) { Foo foo =
fooStore.get(fooKey); // foo == null
I'm at a loss to understand why this is happening. There is no exception,
no trace in application logs, nothing.
What's more, the FooKey is always represented as {"string", null, "string"}
so the value for enum is consistently null.
Cheers,
Mariusz