Hi Anthony, thank you for bringing your concern.

If there is consensus from the Geode community that your proposed fix satisfies 
the “critical fixes” rule, I will be happy to bring it to the release/1.10.0 
release branch.

Regards
Dick & Owen

> On Sep 6, 2019, at 2:18 PM, Anthony Baker <aba...@pivotal.io> wrote:
> 
> Please pull aaa1378472ce0a8a05e0afabfdfc874e14fe13e6 into the release branch 
> to fix the build problem.
> 
> Anthony
> 
> 
>> On Sep 6, 2019, at 11:29 AM, Dick Cavender <dcaven...@pivotal.io> wrote:
>> 
>> The 1.10.0 voting has been extended until Monday, September 9th at 3pm.
>> 
>> To all- please update your 1.10.0 vote if/when your issue(s) have been
>> resolved. There are still no -1 votes at this time.
>> 
>> On Fri, Sep 6, 2019 at 9:32 AM Nabarun Nag <n...@pivotal.io> wrote:
>> 
>>> Hi Anthony,
>>> 
>>> I had faced this issue in the current develop too. One way to get around it
>>> is to run ./gradlew spotlessApply independently before the build.
>>> 
>>> Regards
>>> Naba
>>> 
>>> 
>>> On Fri, Sep 6, 2019 at 8:53 AM Anthony Baker <aba...@pivotal.io> wrote:
>>> 
>>>> This seems to be a simple change to catch IllegalStateException instead
>>> of
>>>> IllegalArgumentException in build.gradle.
>>>> 
>>>> But I’m also getting a ton of spotless errors like:
>>>> 
>>>>> Task :geode-cq:spotlessJava FAILED
>>>> Step 'removeUnusedImports' found problem in
>>>> 
>>> 'geode-cq/src/test/java/org/apache/geode/cache/query/internal/cq/CqServiceUnitTest.java':
>>>> null
>>>> java.lang.reflect.InvocationTargetException
>>>>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>>       at
>>>> 
>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>>>>       at
>>>> 
>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>>>       at java.lang.reflect.Method.invoke(Method.java:498)
>>>>       at
>>>> 
>>> com.diffplug.spotless.java.GoogleJavaFormatStep$State.lambda$createRemoveUnusedImportsOnly$1(GoogleJavaFormatStep.java:153)
>>>>       at
>>> com.diffplug.spotless.FormatterFunc.apply(FormatterFunc.java:31)
>>>>       at
>>>> 
>>> com.diffplug.spotless.FormatterStepImpl$Standard.format(FormatterStepImpl.java:78)
>>>>       at
>>>> com.diffplug.spotless.FormatterStep$Strict.format(FormatterStep.java:76)
>>>>       at com.diffplug.spotless.Formatter.compute(Formatter.java:230)
>>>>       at com.diffplug.spotless.Formatter.isClean(Formatter.java:167)
>>>>       at
>>>> com.diffplug.gradle.spotless.SpotlessTask.check(SpotlessTask.java:297)
>>>>       at
>>>> 
>>> com.diffplug.gradle.spotless.SpotlessTask.performAction(SpotlessTask.java:238)
>>>>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>>       at
>>>> 
>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>>>>       at
>>>> 
>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>>>       at java.lang.reflect.Method.invoke(Method.java:498)
>>>>       at
>>>> org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:103)
>>>>       at
>>>> 
>>> org.gradle.api.internal.project.taskfactory.IncrementalTaskInputsTaskAction.doExecute(IncrementalTaskInputsTaskAction.java:46)
>>>>       at
>>>> 
>>> org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:41)
>>>>       at
>>>> 
>>> org.gradle.api.internal.project.taskfactory.AbstractIncrementalTaskAction.execute(AbstractIncrementalTaskAction.java:25)
>>>>       at
>>>> 
>>> org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:28)
>>>>       at
>>>> 
>>> org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$5.run(ExecuteActionsTaskExecuter.java:404)
>>>>       at
>>>> 
>>> org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:402)
>>>>       at
>>>> 
>>> org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:394)
>>>>       at
>>>> 
>>> org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:165)
>>>>       at
>>>> 
>>> org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:250)
>>>>       at
>>>> 
>>> org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:158)
>>>>       at
>>>> 
>>> org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:92)
>>>>       at
>>>> 
>>> org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
>>>>       at
>>>> 
>>> org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:393)
>>>>       at
>>>> 
>>> org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:376)
>>>>       at
>>>> 
>>> org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.access$200(ExecuteActionsTaskExecuter.java:80)
>>>>       at
>>>> 
>>> org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$TaskExecution.execute(ExecuteActionsTaskExecuter.java:213)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.ExecuteStep.lambda$execute$0(ExecuteStep.java:32)
>>>>       at java.util.Optional.map(Optional.java:215)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:32)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:26)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.CleanupOutputsStep.execute(CleanupOutputsStep.java:58)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.CleanupOutputsStep.execute(CleanupOutputsStep.java:35)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:48)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:33)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.CancelExecutionStep.execute(CancelExecutionStep.java:39)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.TimeoutStep.executeWithoutTimeout(TimeoutStep.java:73)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.TimeoutStep.execute(TimeoutStep.java:54)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.CatchExceptionStep.execute(CatchExceptionStep.java:35)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.CreateOutputsStep.execute(CreateOutputsStep.java:51)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.SnapshotOutputsStep.execute(SnapshotOutputsStep.java:45)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.SnapshotOutputsStep.execute(SnapshotOutputsStep.java:31)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.CacheStep.executeWithoutCache(CacheStep.java:201)
>>>>       at
>>>> org.gradle.internal.execution.steps.CacheStep.execute(CacheStep.java:70)
>>>>       at
>>>> org.gradle.internal.execution.steps.CacheStep.execute(CacheStep.java:45)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.BroadcastChangingOutputsStep.execute(BroadcastChangingOutputsStep.java:49)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.StoreSnapshotsStep.execute(StoreSnapshotsStep.java:43)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.StoreSnapshotsStep.execute(StoreSnapshotsStep.java:32)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:38)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:24)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.SkipUpToDateStep.executeBecause(SkipUpToDateStep.java:96)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.SkipUpToDateStep.lambda$execute$0(SkipUpToDateStep.java:89)
>>>>       at java.util.Optional.map(Optional.java:215)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:54)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:38)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:77)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:37)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:36)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:26)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:90)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:48)
>>>>       at
>>>> 
>>> org.gradle.internal.execution.impl.DefaultWorkExecutor.execute(DefaultWorkExecutor.java:33)
>>>>       at
>>>> 
>>> org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:120)
>>>>       at
>>>> 
>>> org.gradle.api.internal.tasks.execution.ResolveBeforeExecutionStateTaskExecuter.execute(ResolveBeforeExecutionStateTaskExecuter.java:75)
>>>>       at
>>>> 
>>> org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:62)
>>>>       at
>>>> 
>>> org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:108)
>>>>       at
>>>> 
>>> org.gradle.api.internal.tasks.execution.ResolveBeforeExecutionOutputsTaskExecuter.execute(ResolveBeforeExecutionOutputsTaskExecuter.java:67)
>>>>       at
>>>> 
>>> org.gradle.api.internal.tasks.execution.StartSnapshotTaskInputsBuildOperationTaskExecuter.execute(StartSnapshotTaskInputsBuildOperationTaskExecuter.java:62)
>>>>       at
>>>> 
>>> org.gradle.api.internal.tasks.execution.ResolveAfterPreviousExecutionStateTaskExecuter.execute(ResolveAfterPreviousExecutionStateTaskExecuter.java:46)
>>>>       at
>>>> 
>>> org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:94)
>>>>       at
>>>> 
>>> org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
>>>>       at
>>>> 
>>> org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:95)
>>>>       at
>>>> 
>>> org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
>>>>       at
>>>> 
>>> org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:56)
>>>>       at
>>>> 
>>> org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
>>>>       at
>>>> 
>>> org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:73)
>>>>       at
>>>> 
>>> org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
>>>>       at
>>>> 
>>> org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:49)
>>>>       at
>>>> 
>>> org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:416)
>>>>       at
>>>> 
>>> org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:406)
>>>>       at
>>>> 
>>> org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:165)
>>>>       at
>>>> 
>>> org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:250)
>>>>       at
>>>> 
>>> org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:158)
>>>>       at
>>>> 
>>> org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:102)
>>>>       at
>>>> 
>>> org.gradle.internal.operations.DelegatingBuildOperationExecutor.call(DelegatingBuildOperationExecutor.java:36)
>>>>       at
>>>> 
>>> org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:49)
>>>>       at
>>>> 
>>> org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:43)
>>>>       at
>>>> 
>>> org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:355)
>>>>       at
>>>> 
>>> org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:343)
>>>>       at
>>>> 
>>> org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:336)
>>>>       at
>>>> 
>>> org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:322)
>>>>       at
>>>> 
>>> org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker$1.execute(DefaultPlanExecutor.java:134)
>>>>       at
>>>> 
>>> org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker$1.execute(DefaultPlanExecutor.java:129)
>>>>       at
>>>> 
>>> org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:202)
>>>>       at
>>>> 
>>> org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.executeNextNode(DefaultPlanExecutor.java:193)
>>>>       at
>>>> 
>>> org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:129)
>>>>       at
>>>> 
>>> org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
>>>>       at
>>>> 
>>> org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
>>>>       at
>>>> 
>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>>>>       at
>>>> 
>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>>>>       at
>>>> 
>>> org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
>>>>       at java.lang.Thread.run(Thread.java:748)
>>>> Caused by: java.lang.NoClassDefFoundError:
>>>> org/openjdk/tools/javac/main/Option$ArgKind
>>>>       at org.openjdk.tools.javac.main.Option.<init>(Option.java:971)
>>>>       at org.openjdk.tools.javac.main.Option.<clinit>(Option.java:87)
>>>>       at
>>>> 
>>> com.google.googlejavaformat.java.RemoveUnusedImports.removeUnusedImports(RemoveUnusedImports.java:210)
>>>>       at
>>>> 
>>> com.google.googlejavaformat.java.RemoveUnusedImports.removeUnusedImports(RemoveUnusedImports.java:204)
>>>>       ... 108 more
>>>> Caused by: java.lang.ClassNotFoundException:
>>>> org.openjdk.tools.javac.main.Option$ArgKind
>>>>       at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
>>>>       at
>>>> 
>>> com.diffplug.spotless.FeatureClassLoader.findClass(FeatureClassLoader.java:74)
>>>>       at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
>>>>       at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
>>>>       ... 112 more
>>>> 
>>>> 
>>>>> On Sep 6, 2019, at 8:44 AM, Anthony Baker <aba...@pivotal.io> wrote:
>>>>> 
>>>>> I ran into a problem while checking the release candidate.  When I try
>>>> to build from source I get this error:
>>>>> 
>>>>> A problem occurred evaluating project ':geode-core'.
>>>>>> Could not create task ':writeBuildInfo'.
>>>>>> No .git directory found!
>>>>> 
>>>>> The .buildinfo file looks correct, but the gradle scripts that use the
>>>> git plugin aren’t catch that exception like they used to do (works on
>>>> 1.9.1).
>>>>> 
>>>>> Since the source archive is the official release and I can’t build it,
>>>> I”m voting -1.  I would change my vote if we can fix this.
>>>>> 
>>>>> Anthony
>>>>> 
>>>>> 
>>>>>> On Sep 6, 2019, at 8:19 AM, Anthony Baker <aba...@pivotal.io> wrote:
>>>>>> 
>>>>>> I think we should extend the vote in order to understand this issue
>>>> better.
>>>>>> 
>>>>>> Anthony
>>>>>> 
>>>>>> 
>>>>>>> On Sep 6, 2019, at 12:41 AM, Ivan Godwin <igod...@pivotal.io> wrote:
>>>>>>> 
>>>>>>> Hello,
>>>>>>> 
>>>>>>> I don't know that this will be cause to hold anything up, but
>>>> geode-native
>>>>>>> has two integration tests failing when trying to perform
>>>> Region::remove().
>>>>>>> This is the case for all platforms supported by native client. The
>>> two
>>>>>>> tests are testThinClientCallbackArg and
>>>>>>> testThinClientListenerCallbackArgTest.
>>>>>>> 
>>>>>>> Here's the stacktrace, and I will continue investigating in the
>>>> morning.
>>>>>>> 
>>>>>>> Region::remove: An exception (java.lang.ClassCastException:
>>>>>>> java.lang.Byte cannot be cast to org.apache.geode.cache.Operation
>>>>>>> 
>>>>>>>   at
>>>> 
>>> org.apache.geode.internal.cache.tier.sockets.BaseCommand.getOperation(BaseCommand.java:1466)
>>>>>>> 
>>>>>>>   at
>>>> 
>>> org.apache.geode.internal.cache.tier.sockets.command.Destroy65.cmdExecute(Destroy65.java:114)
>>>>>>> 
>>>>>>>   at
>>>> 
>>> org.apache.geode.internal.cache.tier.sockets.BaseCommand.execute(BaseCommand.java:183)
>>>>>>> 
>>>>>>>   at
>>>> 
>>> org.apache.geode.internal.cache.tier.sockets.ServerConnection.doNormalMessage(ServerConnection.java:848)
>>>>>>> 
>>>>>>>   at
>>>> 
>>> org.apache.geode.internal.cache.tier.sockets.OriginalServerConnection.doOneMessage(OriginalServerConnection.java:72)
>>>>>>> 
>>>>>>>   at
>>>> 
>>> org.apache.geode.internal.cache.tier.sockets.ServerConnection.run(ServerConnection.java:1212)
>>>>>>> 
>>>>>>>   at
>>>> 
>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>>>>>>> 
>>>>>>>   at
>>>> 
>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>>>>>>> 
>>>>>>>   at
>>>> 
>>> org.apache.geode.internal.cache.tier.sockets.AcceptorImpl.lambda$initializeServerConnectionThreadPool$3(AcceptorImpl.java:666)
>>>>>>> 
>>>>>>>   at
>>>> 
>>> org.apache.geode.internal.logging.LoggingThreadFactory.lambda$newThread$0(LoggingThreadFactory.java:121)
>>>>>>> 
>>>>>>>   at java.lang.Thread.run(Thread.java:748)
>>>>>>> 
>>>>>>> ) happened at remote server.
>>>>>>> 
>>>>>>> 
>>>>>>> On Thu, Sep 5, 2019 at 9:00 PM Nabarun Nag <n...@pivotal.io> wrote:
>>>>>>> 
>>>>>>>> Thank you Dan for the explanation.
>>>>>>>> 
>>>>>>>> Regards
>>>>>>>> Naba
>>>>>>>> 
>>>>>>>> 
>>>>>>>> On Thu, Sep 5, 2019 at 4:34 PM Dan Smith <dsm...@pivotal.io> wrote:
>>>>>>>> 
>>>>>>>>> Hi Naba,
>>>>>>>>> 
>>>>>>>>> This sanctioned-serializable stuff is not an issue.
>>>>>>>>> 
>>>>>>>>> When you removed those files from
>>>> sanctioned-geode-core-serializables,
>>>>>>>> they
>>>>>>>>> get rejected by the serialization filter. Look at the error message
>>>> you
>>>>>>>> see
>>>>>>>>> when you remove them - it is failing to serialize a class that has
>>> a
>>>>>>>>> *nested* EvictionAttributes.
>>>>>>>>> 
>>>>>>>>> Those classes need to be in the sanctioned file, if they are
>>>> embedded in
>>>>>>>>> another serialized object. They are probably not showing up in the
>>>>>>>>> actualSerializables file because they are DataSerializable.
>>>>>>>>> 
>>>>>>>>> -Dan
>>>>>>>>> 
>>>>>>>>> On Thu, Sep 5, 2019 at 3:49 PM Kirk Lund <kl...@apache.org> wrote:
>>>>>>>>> 
>>>>>>>>>> Ah, ok. I think I see what you're asking about. I don't have an
>>>> answer,
>>>>>>>>> but
>>>>>>>>>> someone else such as Bruce could explain it.
>>>>>>>>>> 
>>>>>>>>>> <klund@Kirks-MacBook-Pro-2>/Users/klund/dev/geode3 [610]$ diff
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>> 
>>>> 
>>> geode-core/src/main/resources/org/apache/geode/internal/sanctioned-geode-core-serializables.txt
>>>>>>>>>> geode-core/build/integrationTest/actualSerializables.dat
>>>>>>>>>> 69d68
>>>>>>>>>> < org/apache/geode/cache/EvictionAttributes,false
>>>>>>>>>> 71d69
>>>>>>>>>> < org/apache/geode/cache/ExpirationAttributes,false
>>>>>>>>>> 79d76
>>>>>>>>>> < org/apache/geode/cache/MembershipAttributes,false
>>>>>>>>>> 99d95
>>>>>>>>>> < org/apache/geode/cache/SubscriptionAttributes,false
>>>>>>>>>> 262d257
>>>>>>>>>> < org/apache/geode/internal/cache/EvictionAttributesImpl,false
>>>>>>>>>> 276d270
>>>>>>>>>> < org/apache/geode/internal/cache/PartitionAttributesImpl,false
>>>>>>>>>> 517d510
>>>>>>>>>> <
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>> 
>>>> 
>>> org/apache/geode/management/internal/cli/functions/CacheRealizationFunction,false
>>>>>>>>>> 
>>>>>>>>>> On Thu, Sep 5, 2019 at 3:44 PM Nabarun Nag <n...@pivotal.io>
>>> wrote:
>>>>>>>>>> 
>>>>>>>>>>> Hi Kirk,
>>>>>>>>>>> 
>>>>>>>>>>> The test does not fail.
>>>>>>>>>>> When you run the test (testSerializable) it creates a list of
>>>>>>>>>> serializable
>>>>>>>>>>> classes and puts it in the actualSerializables.dat file and them
>>>>>>>>> compares
>>>>>>>>>>> if all the classes listed are present in the
>>>>>>>>>>> sanctioned-geode-core-serializables.txt.
>>>>>>>>>>> If we did not change any serializabale classes then these two
>>> files
>>>>>>>>>>> remain the same. However now in this release, there are classes
>>> in
>>>>>>>>>>> sanctioned-geode-core-serializables.txt which are not present in
>>>>>>>>>>> actualSerializables.dat.
>>>>>>>>>>> 
>>>>>>>>>>> I wanted to know why are those classes are not listed in
>>>>>>>>>>> actualSerializables.dat
>>>>>>>>>>> and if you remove them from
>>> sanctioned-geode-core-serializables.txt
>>>>>>>>>>> testSerializables passes but
>>>>>>>> testSanctionedClassesExistAndDoDeserialize
>>>>>>>>>>> fails.
>>>>>>>>>>> 
>>>>>>>>>>> Regards
>>>>>>>>>>> Naba
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> On Thu, Sep 5, 2019 at 3:21 PM Kirk Lund <kl...@apache.org>
>>> wrote:
>>>>>>>>>>> 
>>>>>>>>>>>> Hi Naba,
>>>>>>>>>>>> 
>>>>>>>>>>>> I failed to reproduce the problem you reported on Mac OS, and
>>> our
>>>>>>>>>>> pipeline
>>>>>>>>>>>> didn't fail this test. What OS are you running integrationTest
>>> on?
>>>>>>>>>> Here's
>>>>>>>>>>>> the steps I followed:
>>>>>>>>>>>> 
>>>>>>>>>>>> 1) checkout tag rel/v1.10.0.RC1
>>>>>>>>>>>> 
>>>>>>>>>>>> $ git checkout tags/rel/v1.10.0.RC1
>>>>>>>>>>>> 
>>>>>>>>>>>> 2) clean, then build with unit tests
>>>>>>>>>>>> 
>>>>>>>>>>>> $ ./gradlew clean
>>>>>>>>>>>> $ ./gradlew build
>>>>>>>>>>>> 
>>>>>>>>>>>> 3) run AnalyzeSerializablesJUnitTest
>>>>>>>>>>>> 
>>>>>>>>>>>> $ ./gradlew geode-core:integrationTest --tests
>>>>>>>>>>>> AnalyzeSerializablesJUnitTest
>>>>>>>>>>>> 
>>>>>>>>>>>> The test passes for me and there are no modified files in the
>>> repo
>>>>>>>>>> after
>>>>>>>>>>>> running the test. Did the test actually fail for you? If so,
>>>> please
>>>>>>>>>> share
>>>>>>>>>>>> the call stack. If it is still failing for you I recommend
>>> getting
>>>>>>>> a
>>>>>>>>>>> fresh
>>>>>>>>>>>> clone of geode and then repeat the above steps.
>>>>>>>>>>>> 
>>>>>>>>>>>> Thanks,
>>>>>>>>>>>> Kirk
>>>>>>>>>>>> 
>>>>>>>>>>>> On Thu, Sep 5, 2019 at 10:16 AM Nabarun Nag <n...@apache.org>
>>>>>>>> wrote:
>>>>>>>>>>>> 
>>>>>>>>>>>>> Hello,
>>>>>>>>>>>>> 
>>>>>>>>>>>>> I was able to notice that after running the testSerializable
>>>>>>>> JUnit
>>>>>>>>>>> test,
>>>>>>>>>>>>> the generated actualSerializables.dat and the
>>>>>>>>>>>>> sanctioned-geode-core-serializables.txt do not match. There are
>>>>>>>>>> certain
>>>>>>>>>>>>> classes mentioned in sanctioned-geode-core-serializables.txt
>>> that
>>>>>>>>> are
>>>>>>>>>>> not
>>>>>>>>>>>>> present in actualSerializables.dat file
>>>>>>>>>>>>> 
>>>>>>>>>>>>> - EvictionAttributes
>>>>>>>>>>>>> - ExpirationAttributes
>>>>>>>>>>>>> - MembershipAttributes
>>>>>>>>>>>>> - SubscriptionAttributes
>>>>>>>>>>>>> - EvictionAttributesImpl
>>>>>>>>>>>>> - PartitionAttributesImpl
>>>>>>>>>>>>> - CacheRealizaitonFunction
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>> But removing them causes
>>>>>>>>> testSanctionedClassesExistAndDoDeserialize()
>>>>>>>>>>>> test
>>>>>>>>>>>>> to fail.
>>>>>>>>>>>>> 
>>>>>>>>>>>>> I am not sure if this is harmless or has some adverse
>>>>>>>>> consequences. I
>>>>>>>>>>>> would
>>>>>>>>>>>>> like to know why it's designed this way.
>>>>>>>>>>>>> 
>>>>>>>>>>>>> Regards
>>>>>>>>>>>>> Nabarun Nag
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>> On Wed, Sep 4, 2019 at 4:14 PM Dick Cavender <
>>>>>>>> dcaven...@pivotal.io
>>>>>>>>>> 
>>>>>>>>>>>> wrote:
>>>>>>>>>>>>> 
>>>>>>>>>>>>>> We manually signed the apache-geode-1.10.0-src.tgz dist and
>>>>>>>>>> uploaded
>>>>>>>>>>>> the
>>>>>>>>>>>>>> asc file.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> Unclear on why this is no longer automatically generated as
>>>>>>>> part
>>>>>>>>> of
>>>>>>>>>>> the
>>>>>>>>>>>>>> build step as 1.9.1 it was generated correctly. We have worked
>>>>>>>>>> around
>>>>>>>>>>>> it
>>>>>>>>>>>>> in
>>>>>>>>>>>>>> the prepare_rc.sh adding a check for it going forward and
>>>>>>>>>> generating
>>>>>>>>>>> it
>>>>>>>>>>>>> if
>>>>>>>>>>>>>> missing.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> On Wed, Sep 4, 2019 at 3:32 PM Dan Smith <dsm...@pivotal.io>
>>>>>>>>>> wrote:
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> I don't see a .asc signature file for
>>>>>>>>>> apache-geode-1.10.0-src.tgz.
>>>>>>>>>>>> Did
>>>>>>>>>>>>> we
>>>>>>>>>>>>>>> miss that signature file somehow?
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> -Dan
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> On Wed, Sep 4, 2019 at 9:33 AM Dick Cavender <
>>>>>>>>>> dcaven...@pivotal.io
>>>>>>>>>>>> 
>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> The apache-geode-native-1.10.0-src.tar.gz dist has been
>>>>>>>> fixed
>>>>>>>>>> in
>>>>>>>>>>>> RC1
>>>>>>>>>>>>>> and
>>>>>>>>>>>>>>>> can be found at:
>>>>>>>>>>>>>>> https://dist.apache.org/repos/dist/dev/geode/1.10.0.RC1/
>>>>>>>>>>>>>>>> Please continue to review RC1 as a viable 1.10 RC. The
>>>>>>>> voting
>>>>>>>>>>>>> deadline
>>>>>>>>>>>>>>>> remains 3PM PST Thursday Sept 5th.
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> -Dick
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> On Tue, Sep 3, 2019 at 3:09 PM Dan Smith <
>>>>>>>> dsm...@pivotal.io>
>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> Everything but the missing native source looks good. If
>>>>>>>> we
>>>>>>>>>> can
>>>>>>>>>>>> fix
>>>>>>>>>>>>>>> that,
>>>>>>>>>>>>>>>>> I'll +1 this RC.
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> -Dan
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> On Tue, Sep 3, 2019 at 2:26 PM Dan Smith <
>>>>>>>>> dsm...@pivotal.io>
>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> -1 It looks like this RC is also missing the native
>>>>>>>>> source,
>>>>>>>>>>>> just
>>>>>>>>>>>>>> like
>>>>>>>>>>>>>>>>>> 1.9.1.RC3. The tar file is there, but it is empty.
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> -Dan
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> On Fri, Aug 30, 2019 at 2:06 PM Dick Cavender <
>>>>>>>>>>>>>> dcaven...@pivotal.io>
>>>>>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> Hello Geode dev community,
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> This is a release candidate for Apache Geode, version
>>>>>>>>>>>>> 1.10.0.RC1.
>>>>>>>>>>>>>>>>>>> Thanks to all the community members for their
>>>>>>>>>> contributions
>>>>>>>>>>> to
>>>>>>>>>>>>>> this
>>>>>>>>>>>>>>>>>>> release!
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> Please do a review and give your feedback. The
>>>>>>>> deadline
>>>>>>>>> is
>>>>>>>>>>> 3PM
>>>>>>>>>>>>> PST
>>>>>>>>>>>>>>>>>>> Thursday
>>>>>>>>>>>>>>>>>>> Sept 5th.
>>>>>>>>>>>>>>>>>>> Release notes can be found at:
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>> 
>>>> 
>>> https://cwiki.apache.org/confluence/display/GEODE/Release+Notes#ReleaseNotes-1.10.0
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> Please note that we are voting upon the source tags:
>>>>>>>>>>>>>> rel/v1.10.0.RC1
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> Apache Geode:
>>>>>>>>>>>>>>>>>>> https://github.com/apache/geode/tree/rel/v1.10.0.RC1
>>>>>>>>>>>>>>>>>>> Apache Geode examples:
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>> https://github.com/apache/geode-examples/tree/rel/v1.10.0.RC1
>>>>>>>>>>>>>>>>>>> Apache Geode native:
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>> https://github.com/apache/geode-native/tree/rel/v1.10.0.RC1
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> Source and binary files:
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>> https://dist.apache.org/repos/dist/dev/geode/1.10.0.RC1/
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> Maven staging repo:
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>> 
>>>> https://repository.apache.org/content/repositories/orgapachegeode-1058
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> Geode's KEYS file containing PGP keys we use to sign
>>>>>>>> the
>>>>>>>>>>>>> release:
>>>>>>>>>>>>>>>>>>> https://github.com/apache/geode/blob/develop/KEYS
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> PS: Command to run geode-examples: ./gradlew
>>>>>>>>>>>> -PgeodeReleaseUrl=
>>>>>>>>>>>>>>>>>>> 
>>>>>>>> https://dist.apache.org/repos/dist/dev/geode/1.10.0.RC1
>>>>>>>>>>>>>>>>>>> -PgeodeRepositoryUrl=
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>> 
>>>> https://repository.apache.org/content/repositories/orgapachegeode-1058
>>>>>>>>>>>>>>>>>>> build runAll
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> Regards
>>>>>>>>>>>>>>>>>>> Dick Cavender
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>> 
>>>>>> 
>>>>> 
>>>> 
>>>> 
>>> 
> 

Reply via email to