Hi Gordon,
Following is the stack trace that I'm getting:

*Exception in thread "main" java.util.concurrent.ExecutionException:
java.lang.RuntimeException: Failed request 0.*
* Caused by: java.lang.RuntimeException: Failed request 0.*
* Caused by: java.lang.RuntimeException: Error while processing request
with ID 0. Caused by: com.esotericsoftware.kryo.KryoException: Encountered
unregistered class ID: -985346241*
*Serialization trace:*
*$outer (scala.collection.convert.Wrappers$SeqWrapper)*
* at
com.esotericsoftware.kryo.util.DefaultClassResolver.readClass(DefaultClassResolver.java:119)*
* at com.esotericsoftware.kryo.Kryo.readClass(Kryo.java:641)*
* at
com.esotericsoftware.kryo.serializers.ObjectField.read(ObjectField.java:99)*
* at
com.esotericsoftware.kryo.serializers.FieldSerializer.read(FieldSerializer.java:528)*
* at com.esotericsoftware.kryo.Kryo.readClassAndObject(Kryo.java:761)*
* at
org.apache.flink.api.java.typeutils.runtime.kryo.KryoSerializer.deserialize(KryoSerializer.java:249)*
* at
org.apache.flink.api.java.typeutils.runtime.TupleSerializer.deserialize(TupleSerializer.java:136)*
* at
org.apache.flink.api.java.typeutils.runtime.TupleSerializer.deserialize(TupleSerializer.java:30)*
* at
org.apache.flink.queryablestate.client.state.serialization.KvStateSerializer.deserializeKeyAndNamespace(KvStateSerializer.java:94)*
* at
org.apache.flink.runtime.state.heap.AbstractHeapState.getSerializedValue(AbstractHeapState.java:93)*
* at
org.apache.flink.queryablestate.server.KvStateServerHandler.handleRequest(KvStateServerHandler.java:87)*
* at
org.apache.flink.queryablestate.server.KvStateServerHandler.handleRequest(KvStateServerHandler.java:49)*
* at
org.apache.flink.queryablestate.network.AbstractServerHandler$AsyncRequestTask.run(AbstractServerHandler.java:229)*
* at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)*
* at java.util.concurrent.FutureTask.run(FutureTask.java:266)*
* at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)*
* at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)*
* at java.lang.Thread.run(Thread.java:748)*

I am not using any custom serialize as mentioned by Jiayi.

Jayant Ameta


On Thu, Oct 25, 2018 at 3:01 PM bupt_ljy <bupt_...@163.com> wrote:

> Hi  Jayant,
>
>   There should be a Serializer parameter in the constructor of the
> StateDescriptor, you should create a new serializer like this:
>
>
>    new GenericTypeInfo(classOf[UUID]).createSerializer(env.getConfig)
>
>
>  By the way, can you show us your kryo exception like what Gordon said?
>
>
> Jiayi Liao, Best
>
>
>
>  Original Message
> *Sender:* Tzu-Li (Gordon) Tai<tzuli...@apache.org>
> *Recipient:* Jayant Ameta<wittyam...@gmail.com>; bupt_ljy<bupt_...@163.com
> >
> *Cc:* user<user@flink.apache.org>
> *Date:* Thursday, Oct 25, 2018 17:18
> *Subject:* Re: Queryable state when key is UUID - getting Kyro Exception
>
> Hi Jayant,
>
> What is the Kryo exception message that you are getting?
>
> Cheers,
> Gordon
>
>
> On 25 October 2018 at 5:17:13 PM, Jayant Ameta (wittyam...@gmail.com)
> wrote:
>
> Hi,
> I've not configured any serializer in the descriptor. (Neither in flink
> job, nor in state query client).
> Which serializer should I use?
>
> Jayant Ameta
>
>
> On Thu, Oct 25, 2018 at 2:13 PM bupt_ljy <bupt_...@163.com> wrote:
>
>> Hi,
>>
>>    It seems that your codes are right. Are you sure that you’re using the
>> same Serializer as the Flink program do? Could you show the serializer in
>> descriptor?
>>
>>
>>
>> Jiayi Liao, Best
>>
>>  Original Message
>> *Sender:* Jayant Ameta<wittyam...@gmail.com>
>> *Recipient:* user<user@flink.apache.org>
>> *Date:* Thursday, Oct 25, 2018 14:17
>> *Subject:* Queryable state when key is UUID - getting Kyro Exception
>>
>> I get Kyro exception when querying the state.
>>
>> Key: UUID
>> MapState<UUID, String>
>>
>> Client code snippet:
>>
>> CompletableFuture<MapState<UUID, String>> resultFuture =
>>     
>> client.getKvState(JobID.fromHexString("c7b8af14b8afacf4fac16cdd0da7e997"), 
>> "rule",
>>         UUID.fromString("3b3f17a0-d81a-11e8-bb91-7fd1412de84d"),
>>         TypeInformation.of(new TypeHint<UUID>() {}), descriptor);
>> MapState<UUID, String> mapState = resultFuture.get(10, TimeUnit.SECONDS);
>>
>>
>> Any better way to query it?
>>
>>
>> Jayant Ameta
>>
>

Reply via email to