java.lang.NullPointerException: Cannot invoke "java.lang.String.equals(java.lang.Object)" because the return value of "org.mskcc.smile.model.SampleMetadata.getCmoPatientId()" is null
at org.mskcc.smile.service.impl.SampleServiceImpl.sampleHasMetadataUpdates(SampleServiceImpl.java:385) ~[service-0.1.0.jar!/:0.1.0]
at org.mskcc.smile.service.impl.SampleServiceImpl.updateSampleMetadata(SampleServiceImpl.java:281) ~[service-0.1.0.jar!/:0.1.0]
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[na:na]
at java.base/java.lang.reflect.Method.invoke(Method.java:586) ~[na:na]
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:355) ~[spring-aop-6.1.12.jar!/:6.1.12]
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:716) ~[spring-aop-6.1.12.jar!/:6.1.12]
at org.mskcc.smile.service.impl.SampleServiceImpl$$SpringCGLIB$$0.updateSampleMetadata(<generated>) ~[service-0.1.0.jar!/:0.1.0]
at org.mskcc.smile.service.impl.ResearchMessageHandlingServiceImpl$ResearchSampleMetadataUpdateHandler.run(ResearchMessageHandlingServiceImpl.java:244) ~[service-0.1.0.jar!/:0.1.0]
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) ~[na:na]
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) ~[na:na]
at java.base/java.lang.Thread.run(Thread.java:1595) ~[na:na]
Stack trace