You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@geode.apache.org by aashish choudhary <aa...@gmail.com> on 2019/02/15 16:46:11 UTC

Re: IllegalStateException: Unknown PDX Type on Client Side

Hi Barry,

We got the same issue today but this time we were getting unknown pdx type
error only while querying on pulse. We are using default disk store for
pdx. This time we have not played anything with .drf .crf .krf .if files
and tried restarting both server and client application but issue was same.
Not sure how I go about replicating this issue. I mean in general how
should one reproduce this issue.

Also I was reading the documents that it generally happens when pdx
metadata go out of sync between clients and servers. Where are these files
present in client application.

Thanks,
Ashish

On Thu, Jan 31, 2019, 1:37 AM Barry Oglesby <boglesby@pivotal.io wrote:

> That should work ok if you still have the files, and the data hasn't been
> recreated.
>
> I ran this test:
>
> 1. Start server with persistent PDX and region
> 2. Load data into region
> 3. Query data (successful)
> 4. Stop servers
> 5. Move PDX persistence files (.crf, .drf, .krf, .if)
> 6. Restart servers
> 7. Query data (throws 'IllegalStateException: Unknown pdx type=7699560')
> 8. Stop servers
> 9. Replace PDX persistence files (remove the ones created for the restart)
> 10. Restart servers
> 11. Query data (successful)
>
> How are you defining your pdx and data region? Do they have their own disk
> stores?
>
> I'm doing this:
>
> <disk-store name="pdx_store" max-oplog-size="10">
>   <disk-dirs>
>     <disk-dir>.</disk-dir>
>   </disk-dirs>
> </disk-store>
>
> <disk-store name="data_store" max-oplog-size="10">
>   <disk-dirs>
>     <disk-dir>.</disk-dir>
>   </disk-dirs>
> </disk-store>
>
> <pdx read-serialized="true" persistent="true" disk-store-name="pdx_store">
>   <pdx-serializer>
>     ...
>   </pdx-serializer>
> </pdx>
>
> <region name="data" refid="PARTITION_REDUNDANT_PERSISTENT">
>   <region-attributes disk-store-name="data_store"/>
> </region>
>
> In my case, the PDX persistence files are:
>
> BACKUPpdx_store_1.crf
> BACKUPpdx_store_1.drf
> BACKUPpdx_store_1.krf
> BACKUPpdx_store.if
>
> If you don't specify a disk-store-name in the pdx element, the DEFAULT
> disk store is used like:
>
> BACKUPDEFAULT_1.crf
> BACKUPDEFAULT_1.drf
> BACKUPDEFAULT_1.krf
> BACKUPDEFAULT.if
>
> Thanks,
> Barry Oglesby
>
>
>
> On Wed, Jan 30, 2019 at 3:26 AM aashish choudhary <
> aashish.choudhary1@gmail.com> wrote:
>
>> Thanks Dan for explanation. So if we replace the files with old one(It
>> has anyways created new files after restart) which were their earlier
>> will it resolve the issue?. Not sure how to recover from this State.
>>
>> With best regards,
>> Ashish
>>
>> On Wed, Jan 30, 2019, 2:31 AM Dan Smith <dsmith@pivotal.io wrote:
>>
>>> Yes, your PDX metadata is stored in a disk store if you have persistence
>>> enabled fro PDX. The default disk store files are stored in the working
>>> directory of each server, with names like .crf, .drf, .if. So if you moved
>>> those files, you potentially moved all of the PDX metadata, and that
>>> explain why your client can't lookup the PDX type.
>>>
>>> -Dan
>>>
>>> On Tue, Jan 29, 2019 at 9:31 AM aashish choudhary <
>>> aashish.choudhary1@gmail.com> wrote:
>>>
>>>> Hi,
>>>>
>>>> We have been getting below exception while running queries on Pulse.
>>>> There is link available with possible cause and resolution for this issue.
>>>> We have tried the steps as mentioned on the official article. But it's not
>>>> helping.
>>>>
>>>> Exception while running query on pulse.
>>>> IllegalStateException: Unknown PDX Type on Client Side
>>>>
>>>>
>>>> https://community.pivotal.io/s/article/IllegalStateException-Unknown-PDX-Type-on-Client-Side
>>>>
>>>> We have verified that our pdx persistence is enabled on all the members
>>>> so it should have not have happened in that case. One observation that i
>>>> could make is that while debugging issue someone moved the filed named as
>>>> .drf or .crf something like that and restarted the cluster. I believe these
>>>> files are used to persistence so could this be the main problem in our
>>>> case?. Also when the disk-store is default where pdx metadata is stored?
>>>> Which file holds pdx metadata. I think this problem should be same for
>>>> other main clients applications as well .i.e java client. Will confirm on
>>>> this.
>>>>
>>>> Any help or inputs would be appreciated.
>>>>
>>>> With Best Regards,
>>>> Ashish
>>>>
>>>

Re: IllegalStateException: Unknown PDX Type on Client Side

Posted by Juan José Ramos <jr...@pivotal.io>.
Hello Ashish,

These files do not exist for client applications, basically because PDX
metadata is never persisted on client caches. Even if you configure the PDX
persistence on client side, nothing is actually persisted and you should
see the following message in the logs during the client startup: *PDX
persistence is not supported on client side.*
So, long story short, the PDX metadata on client side is *always stored in
memory*.
Cheers.


On Fri, Feb 15, 2019 at 4:46 PM aashish choudhary <
aashish.choudhary1@gmail.com> wrote:

> Hi Barry,
>
> We got the same issue today but this time we were getting unknown pdx type
> error only while querying on pulse. We are using default disk store for
> pdx. This time we have not played anything with .drf .crf .krf .if files
> and tried restarting both server and client application but issue was same.
> Not sure how I go about replicating this issue. I mean in general how
> should one reproduce this issue.
>
> Also I was reading the documents that it generally happens when pdx
> metadata go out of sync between clients and servers. Where are these files
> present in client application.
>
> Thanks,
> Ashish
>
> On Thu, Jan 31, 2019, 1:37 AM Barry Oglesby <boglesby@pivotal.io wrote:
>
>> That should work ok if you still have the files, and the data hasn't been
>> recreated.
>>
>> I ran this test:
>>
>> 1. Start server with persistent PDX and region
>> 2. Load data into region
>> 3. Query data (successful)
>> 4. Stop servers
>> 5. Move PDX persistence files (.crf, .drf, .krf, .if)
>> 6. Restart servers
>> 7. Query data (throws 'IllegalStateException: Unknown pdx type=7699560')
>> 8. Stop servers
>> 9. Replace PDX persistence files (remove the ones created for the restart)
>> 10. Restart servers
>> 11. Query data (successful)
>>
>> How are you defining your pdx and data region? Do they have their own
>> disk stores?
>>
>> I'm doing this:
>>
>> <disk-store name="pdx_store" max-oplog-size="10">
>>   <disk-dirs>
>>     <disk-dir>.</disk-dir>
>>   </disk-dirs>
>> </disk-store>
>>
>> <disk-store name="data_store" max-oplog-size="10">
>>   <disk-dirs>
>>     <disk-dir>.</disk-dir>
>>   </disk-dirs>
>> </disk-store>
>>
>> <pdx read-serialized="true" persistent="true" disk-store-name="pdx_store">
>>   <pdx-serializer>
>>     ...
>>   </pdx-serializer>
>> </pdx>
>>
>> <region name="data" refid="PARTITION_REDUNDANT_PERSISTENT">
>>   <region-attributes disk-store-name="data_store"/>
>> </region>
>>
>> In my case, the PDX persistence files are:
>>
>> BACKUPpdx_store_1.crf
>> BACKUPpdx_store_1.drf
>> BACKUPpdx_store_1.krf
>> BACKUPpdx_store.if
>>
>> If you don't specify a disk-store-name in the pdx element, the DEFAULT
>> disk store is used like:
>>
>> BACKUPDEFAULT_1.crf
>> BACKUPDEFAULT_1.drf
>> BACKUPDEFAULT_1.krf
>> BACKUPDEFAULT.if
>>
>> Thanks,
>> Barry Oglesby
>>
>>
>>
>> On Wed, Jan 30, 2019 at 3:26 AM aashish choudhary <
>> aashish.choudhary1@gmail.com> wrote:
>>
>>> Thanks Dan for explanation. So if we replace the files with old one(It
>>> has anyways created new files after restart) which were their earlier
>>> will it resolve the issue?. Not sure how to recover from this State.
>>>
>>> With best regards,
>>> Ashish
>>>
>>> On Wed, Jan 30, 2019, 2:31 AM Dan Smith <dsmith@pivotal.io wrote:
>>>
>>>> Yes, your PDX metadata is stored in a disk store if you have
>>>> persistence enabled fro PDX. The default disk store files are stored in the
>>>> working directory of each server, with names like .crf, .drf, .if. So if
>>>> you moved those files, you potentially moved all of the PDX metadata, and
>>>> that explain why your client can't lookup the PDX type.
>>>>
>>>> -Dan
>>>>
>>>> On Tue, Jan 29, 2019 at 9:31 AM aashish choudhary <
>>>> aashish.choudhary1@gmail.com> wrote:
>>>>
>>>>> Hi,
>>>>>
>>>>> We have been getting below exception while running queries on Pulse.
>>>>> There is link available with possible cause and resolution for this issue.
>>>>> We have tried the steps as mentioned on the official article. But it's not
>>>>> helping.
>>>>>
>>>>> Exception while running query on pulse.
>>>>> IllegalStateException: Unknown PDX Type on Client Side
>>>>>
>>>>>
>>>>> https://community.pivotal.io/s/article/IllegalStateException-Unknown-PDX-Type-on-Client-Side
>>>>>
>>>>> We have verified that our pdx persistence is enabled on all the
>>>>> members so it should have not have happened in that case. One observation
>>>>> that i could make is that while debugging issue someone moved the filed
>>>>> named as .drf or .crf something like that and restarted the cluster. I
>>>>> believe these files are used to persistence so could this be the main
>>>>> problem in our case?. Also when the disk-store is default where pdx
>>>>> metadata is stored? Which file holds pdx metadata. I think this problem
>>>>> should be same for other main clients applications as well .i.e java
>>>>> client. Will confirm on this.
>>>>>
>>>>> Any help or inputs would be appreciated.
>>>>>
>>>>> With Best Regards,
>>>>> Ashish
>>>>>
>>>>

-- 
Juan José Ramos Cassella
Senior Technical Support Engineer
Email: jramos@pivotal.io
Office#: +353 21 4238611
Mobile#: +353 87 2074066
After Hours Contact#: +1 877 477 2269
Office Hours: Mon - Thu 08:30 - 17:00 GMT. Fri 08:30 - 16:00 GMT
How to upload artifacts:
https://support.pivotal.io/hc/en-us/articles/204369073
How to escalate a ticket:
https://support.pivotal.io/hc/en-us/articles/203809556

[image: support] <https://support.pivotal.io/> [image: twitter]
<https://twitter.com/pivotal> [image: linkedin]
<https://www.linkedin.com/company/3048967> [image: facebook]
<https://www.facebook.com/pivotalsoftware> [image: google plus]
<https://plus.google.com/+Pivotal> [image: youtube]
<https://www.youtube.com/playlist?list=PLAdzTan_eSPScpj2J50ErtzR9ANSzv3kl>