[ https://issues.apache.org/jira/browse/GEODE-6271?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Dan Smith updated GEODE-6271: ----------------------------- Description: If * A client is connected through two different pools to two different geode clusters * The clusters are not connected by WAN * The same pdx serialized class is used in both clusters * and the client puts into one or more clusters Then it is possible that the client put will result in a value in one of the clusters that will fail deserialization with "java.lang.IllegalStateException: Unknown pdx type." This is because the client will use a type id that is generated in one cluster but is not known to the other cluster. I've attached a test case that replicates this scenario. The client used to have some logic that copied PDX types from one cluster to another in some cases. That logic was removed with cf0b378429b643513366ce90226e4f6472056c7b. However, other cases were still not copying the type. In the attached test case, one of the tests will pass if the changes from cf0b3784 are reverted, but the others still fail. was: If * A client is connected through two different pools to two different geode clusters * The clusters are not connected by WAN * The same pdx serialized class is used in both clusters * and the client puts into one more more clusters Then it is possible that the client put will result in a value in on of the clusters that will fail deserialization with "java.lang.IllegalStateException: Unknown pdx type." because the client will use a type id that is generated in one cluster but is not known to the other cluster. I've attached a test case that replicates this scenario. The client used to have some logic that copied PDX types from one cluster to another in some cases. That logic was removed with cf0b378429b643513366ce90226e4f6472056c7b. However, other cases were still not copying the type. In the attached test case, one of the tests will pass if the changes from cf0b3784 are reverted, but the others still fail. > Unknown pdx type error occurs when a single client is connected to two > separate clusters > ---------------------------------------------------------------------------------------- > > Key: GEODE-6271 > URL: https://issues.apache.org/jira/browse/GEODE-6271 > Project: Geode > Issue Type: Bug > Components: serialization > Reporter: Dan Smith > Priority: Major > Attachments: > 0001-GEODE-6271-Test-of-client-connected-to-multiple-clus.patch > > > If > * A client is connected through two different pools to two different geode > clusters > * The clusters are not connected by WAN > * The same pdx serialized class is used in both clusters > * and the client puts into one or more clusters > Then it is possible that the client put will result in a value in one of the > clusters that will fail deserialization with > "java.lang.IllegalStateException: Unknown pdx type." This is because the > client will use a type id that is generated in one cluster but is not known > to the other cluster. > I've attached a test case that replicates this scenario. > The client used to have some logic that copied PDX types from one cluster to > another in some cases. That logic was removed with > cf0b378429b643513366ce90226e4f6472056c7b. However, other cases were still not > copying the type. In the attached test case, one of the tests will pass if > the changes from cf0b3784 are reverted, but the others still fail. -- This message was sent by Atlassian JIRA (v7.6.3#76005)