geode-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Bruce Schuchardt <bschucha...@pivotal.io>
Subject Re: distributedTest hang
Date Thu, 05 Apr 2018 21:30:00 GMT
This should all be resolved with my commits that reverted serialization 
changes for classes implementing DataSerializableFixedID.

We were trying to protect Geode internals from being PDX serialized as 
in GEODE-4822, where a Spring PDXSerializer was introduced into a server 
that PDX-serialized java.util collection classes and caused grave 
problems when pdx-read-serialized was set to true.


On 4/5/18 11:47 AM, Kirk Lund wrote:
> I disabled PartitionedRegionQueryDUnitTest last week because it hung.
>
> Over the last week, I overhauled this test and extracted several test
> methods that were very unique to their own test classes. Precheckin was
> green, but our two checkins collided. Looks like one of these extracted
> tests hung. What needs to change?
>
> commit 6b2d45ac34663b1eeda6c2e921b73d1a114b2a9a (origin/develop, develop)
> Author: Kirk Lund <klund@apache.org>
> Date:   Wed Apr 4 10:29:37 2018 -0700
>
>      GEODE-4970: Overhaul and split up PartitionedRegionQueryDUnitTest
> (#1718)
>
>      Rename:
>      * PartitionedRegionQueryDUnitTest -> PRQueryDistributedTest
>
>      Extract the following tests from PRQueryDistributedTest:
>      * PRQueryWithIndexAndPdxDistributedTest
>      * PRQueryWithIndexDistributedTest
>      * PRQueryWithOrderByDistributedTest
>      * PRQueryWithPdxDuringRebalanceRegressionTest
>      * PRWithIndexAfterRebalanceRegressionTest
>
>      Introduce and use:
>      * InternalClientCache interface
>      * ClientCacheRule
>
> On Thu, Apr 5, 2018 at 9:00 AM, Bruce Schuchardt <bschuchardt@pivotal.io>
> wrote:
>
>>   The distributedTest hangs are once again caused by deserialization
>> problems in a query message class.  The deserialization errors are caused
>> by the fix for GEODE-4822 <https://issues.apache.org/jir
>> a/browse/GEODE-4822>, which I am going to revert this morning.  We
>> obviously don't have the test coverage to ensure that this fix doesn't
>> cause problems and I don't want to keep finding new and unusual hangs.
>>
>> Details, if you have the time:
>>
>> The hang occurred because someone checked in a new
>> query/indexing/pdx-read-serialized test at the same time I checked in a
>> fix for a different hang.  The message class that I modified turns out to
>> have a field that sometimes holds an internal Geode object and other times
>> holds a user object.  In the former case we want to protect against it
>> having been PDX serialized by ignoring pdx-read-serialized.  In the latter
>> case we want to respect the user's pdx-read-serialized setting.  There's no
>> straightforward way of knowing which kind of object it is, internal or
>> external, before deserializing it.
>>
>>


Mime
View raw message