Question

34
Views
MustafaJ Member since 2020 1 post
Anthem
Posted: 4 months ago
Last activity: 4 months 4 weeks ago

Duplicate rules created after branch merge in development environment

Quite a lot of duplicate rules have been created in trunk after a branch was merged into trunk using the merge wizard. (Around 400+ duplicate rules) We merge the branches 2-3 times a week but encountered the issue for the first time. No error was reported after the branch was merged but was discovered during testing.

Instead or merging, duplicate rules with different pzInskeys have been created.

Impact

Application is unstable Related functionalities are not working since rule resolution is failing because of duplicate rules. Log full of rule assembly error Section rules are not rendered properly - existing and new - blank screen Activity ruleforms are distorted

New pzInskey is created for the rule - RULE-OBJ-WHEN A-FW-SFW ISNEWPROVIDERS #20200601T140622.266 GMT

Original pzInskey - RULE-OBJ-WHEN A-FW-SFW ISNEWPROVIDERS #20200407T130759.255 GMT

Error in logs –

 [6/1/20 11:05:32:661 EDT] 000000bd SystemOut     O 2020-06-01 11:05:32,597 [   WebContainer : 19] [TABTHREAD0] [                    ] [ditImplTest:01.01.01] (ternal.vtable.VirtualTableImpl) ERROR va33duvwbs302.wellpoint.com|vdaasw1003606.us.ad.wellpoint.com AG09053 - Unable to resolve MultipleRuleVersionException by reloading candidates for hashCode: -1302368267; identity: -1387662964; pxObjClass: 'RULE-OBJ-WHEN'; pxInsId: '!ISNEWPROVIDERS'. The database contains multiple versions of the rule.

com.pega.pegarules.pub.generator.UnresolvedAssemblyError: Unable to select between versions

                at com.pega.pegarules.generation.internal.vtable.ruleres.VirtualTableResolver.findCircumstancedCandidateInResults(VirtualTableResolver.java:542) ~[prprivate.jar:?]

                at com.pega.pegarules.generation.internal.vtable.ruleres.VirtualTableResolver.selectUsingRuleResolution(VirtualTableResolver.java:471) ~[prprivate.jar:?]

                at com.pega.pegarules.generation.internal.vtable.ruleres.VirtualTableResolver.resolveToContainer(VirtualTableResolver.java:397) ~[prprivate.jar:?]

                at com.pega.pegarules.generation.internal.vtable.ruleres.VirtualTableResolver.resolveRule(VirtualTableResolver.java:153) ~[prprivate.jar:?]

                at com.pega.pegarules.generation.internal.vtable.VirtualTableImpl.resolveRule(VirtualTableImpl.java:297) ~[prprivate.jar:?]

                at com.pega.pegarules.generation.internal.PRGenProviderImpl.get(PRGenProviderImpl.java:498) ~[prprivate.jar:?]

                at com.pega.pegarules.session.internal.mgmt.Executable.evaluateWhen(Executable.java:4307) ~[prprivate.jar:?]

                at com.pega.pegarules.session.internal.mgmt.Executable.invokeWhen(Executable.java:10819) ~[prprivate.jar:?]

                at com.pega.pegarules.generation.internal.stream.StreamToolsImpl.evaluateWhenCondition(StreamToolsImpl.java:1329) ~[prprivate.jar:?]

                at com.pega.pegarules.generation.internal.stream.StreamToolsImpl.evaluateWhenCondition(StreamToolsImpl.java:1314) ~[prprivate.jar:?]

                at com.pega.pegarules.generation.internal.assembly.jspwhen.JspWhenEvaluate.processElement(JspWhenEvaluate.java:230) ~[prprivate.jar:?]

                at com.pega.pegarules.generation.internal.assembly.jspwhen.JspWhenEvaluate.evaluateCompiledWhen(JspWhenEvaluate.java:60) ~[prprivate.jar:?]

                at com.pega.pegarules.generation.internal.assembly.jspwhen.ProcessWhenExpression.evaluateCompiledWhen(ProcessWhenExpression.java:250) ~[prprivate.jar:?]

                at com.pega.pegarules.generation.internal.PRGenProviderImpl.evaluateCompiledWhen(PRGenProviderImpl.java:957) ~[prprivate.jar:?]

                at com.pega.pegarules.session.internal.mgmt.autostreams.AutoStreamRuntimeImpl.evaluateCompiledWhen(AutoStreamRuntimeImpl.java:1207) ~[prprivate.jar:?]

                at com.pega.pegarules.session.internal.mgmt.autostreams.AutoStreamRuntimeImpl.handleEvaluateWhen(AutoStreamRuntimeImpl.java:1223) ~[prprivate.jar:?]

                at com.pegarules.generated.html_section.ra_stream_initialcontractingwrapper_78c069134ad408fbac83d9e7a8490bd5.simpleLayoutCell_2(ra_stream_initialcontractingwrapper_78c069134ad408fbac83d9e7a8490bd5.java:8512) ~[?:?]

                at com.pegarules.generated.html_section.ra_stream_initialcontractingwrapper_78c069134ad408fbac83d9e7a8490bd5.simpleLayout_2(ra_stream_initialcontractingwrapper_78c069134ad408fbac83d9e7a8490bd5.java:8633) ~[?:?]

                at com.pegarules.generated.html_section.ra_stream_initialcontractingwrapper_78c069134ad408fbac83d9e7a8490bd5.pzLayoutBodyWrapper_10(ra_stream_initialcontractingwrapper_78c069134ad408fbac83d9e7a8490bd5.java:4553) ~[?:?]

                at com.pegarules.generated.html_section.ra_stream_initialcontractingwrapper_78c069134ad408fbac83d9e7a8490bd5.pzLayout_3(ra_stream_initialcontractingwrapper_78c069134ad408fbac83d9e7a8490bd5.java:8680) ~[?:?]

                at com.pegarules.generated.html_section.ra_stream_initialcontractingwrapper_78c069134ad408fbac83d9e7a8490bd5.pzSectionBody_1(ra_stream_initialcontractingwrapper_78c069134ad408fbac83d9e7a8490bd5.java:505) ~[?:?]

                at com.pegarules.generated.html_section.ra_stream_initialcontractingwrapper_78c069134ad408fbac83d9e7a8490bd5.performStream_1(ra_stream_initialcontractingwrapper_78c069134ad408fbac83d9e7a8490bd5.java:15104) ~[?:?]

                at com.pegarules.generated.html_section.ra_stream_initialcontractingwrapper_78c069134ad408fbac83d9e7a8490bd5.execute(ra_stream_initialcontractingwrapper_78c069134ad408fbac83d9e7a8490bd5.java:117) ~[?:?]

                at com.pega.pegarules.session.internal.mgmt.Executable.getStream(Executable.java:4136) ~[prprivate.jar:?]

                at com.pega.pegarules.session.internal.mgmt.Executable.getStream(Executable.java:3958) ~[prprivate.jar:?]

                at com.pegarules.generated.activity.ra_action_getsectionhtmlfordesignview_38a3bf72809a5787dc730ed66e3465e5.step4_circum0(ra_action_getsectionhtmlfordesignview_38a3bf72809a5787dc730ed66e3465e5.java:421) ~[?:?]

                at com.pegarules.generated.activity.ra_action_getsectionhtmlfordesignview_38a3bf72809a5787dc730ed66e3465e5.perform(ra_action_getsectionhtmlfordesignview_38a3bf72809a5787dc730ed66e3465e5.java:124) ~[?:?]

                at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3597) ~[prprivate.jar:?]

                at com.pega.pegarules.session.internal.mgmt.Executable.invokeActivity(Executable.java:10845) ~[prprivate.jar:?]

                at com.pegarules.generated.activity.ra_action_pzgetsectionhtmlfordesignviewwithpost_62870f993d38e86032f4e93e54edaff9.step2_circum0(ra_action_pzgetsectionhtmlfordesignviewwithpost_62870f993d38e86032f4e93e54edaff9.java:222) ~[?:?]

                at com.pegarules.generated.activity.ra_action_pzgetsectionhtmlfordesignviewwithpost_62870f993d38e86032f4e93e54edaff9.perform(ra_action_pzgetsectionhtmlfordesignviewwithpost_62870f993d38e86032f4e93e54edaff9.java:87) ~[?:?]

                at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3597) ~[prprivate.jar:?]

                at com.pega.pegarules.session.internal.mgmt.base.ThreadRunner.runActivitiesAlt(ThreadRunner.java:646) ~[prprivate.jar:?]

                at com.pega.pegarules.session.internal.mgmt.PRThreadImpl.runActivitiesAlt(PRThreadImpl.java:481) ~[prprivate.jar:?]

                at com.pega.pegarules.session.internal.engineinterface.service.HttpAPI.runActivities(HttpAPI.java:3414) ~[prprivate.jar:?]

                at com.pega.pegarules.session.external.engineinterface.service.EngineAPI.processRequestInner(EngineAPI.java:399) ~[prenginext.jar:?]

                at sun.reflect.GeneratedMethodAccessor75.invoke(Unknown Source) ~[?:?]

                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55) ~[?:1.8.0]

                at java.lang.reflect.Method.invoke(Method.java:508) ~[?:1.8.0]

                at com.pega.pegarules.session.internal.PRSessionProviderImpl.performTargetActionWithLock(PRSessionProviderImpl.java:1338) ~[prprivate.jar:?]

                at com.pega.pegarules.session.internal.PRSessionProviderImpl.doWithRequestorLocked(PRSessionProviderImpl.java:1075) ~[prprivate.jar:?]

                at com.pega.pegarules.session.internal.PRSessionProviderImpl.doWithRequestorLocked(PRSessionProviderImpl.java:930) ~[prprivate.jar:?]

                at com.pega.pegarules.session.external.engineinterface.service.EngineAPI.processRequest(EngineAPI.java:336) ~[prenginext.jar:?]

                at com.pega.pegarules.session.internal.engineinterface.service.HttpAPI.invoke(HttpAPI.java:854) ~[prprivate.jar:?]

                at com.pega.pegarules.session.internal.engineinterface.etier.impl.EngineImpl._invokeEngine_privact(EngineImpl.java:331) ~[prprivate.jar:?]

                at com.pega.pegarules.session.internal.engineinterface.etier.impl.EngineImpl.invokeEngine(EngineImpl.java:274) ~[prprivate.jar:?]

                at com.pega.pegarules.session.internal.engineinterface.etier.impl.EngineImpl.invokeEngine(EngineImpl.java:251) ~[prprivate.jar:?]

                at com.pega.pegarules.priv.context.JNDIEnvironment.invokeEngineInner(JNDIEnvironment.java:278) ~[prpublic.jar:?]

                at com.pega.pegarules.priv.context.JNDIEnvironment.invokeEngine(JNDIEnvironment.java:223) ~[prpublic.jar:?]

                at com.pega.pegarules.web.impl.WebStandardImpl.makeEtierRequest(WebStandardImpl.java:678) ~[prwebj2ee.jar:?]

                at com.pega.pegarules.web.impl.WebStandardImpl.doPost(WebStandardImpl.java:394) ~[prwebj2ee.jar:?]

                at sun.reflect.GeneratedMethodAccessor74.invoke(Unknown Source) ~[?:?]

                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55) ~[?:1.8.0]

                at java.lang.reflect.Method.invoke(Method.java:508) ~[?:1.8.0]

                at com.pega.pegarules.internal.bootstrap.PRBootstrap.invokeMethod(PRBootstrap.java:370) ~[prbootstrap-7.3.1-218.jar:7.3.1-218]

                at com.pega.pegarules.internal.bootstrap.PRBootstrap.invokeMethodPropagatingThrowable(PRBootstrap.java:411) ~[prbootstrap-7.3.1-218.jar:7.3.1-218]

                at com.pega.pegarules.boot.internal.extbridge.AppServerBridgeToPega.invokeMethodPropagatingThrowable(AppServerBridgeToPega.java:224) ~[prbootstrap-api-7.3.1-218.jar:7.3.1-218]

                at com.pega.pegarules.boot.internal.extbridge.AppServerBridgeToPega.invokeMethod(AppServerBridgeToPega.java:273) ~[prbootstrap-api-7.3.1-218.jar:7.3.1-218]

                at com.pega.pegarules.internal.web.servlet.WebStandardBoot.doPost(WebStandardBoot.java:129) ~[prbootstrap-api-7.3.1-218.jar:7.3.1-218]

                at javax.servlet.http.HttpServlet.service(HttpServlet.java:595) ~[javax.j2ee.servlet.jar:?]

                at javax.servlet.http.HttpServlet.service(HttpServlet.java:668) ~[javax.j2ee.servlet.jar:?]

                at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1233) ~[com.ibm.ws.webcontainer.jar:?]

                at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:782) ~[com.ibm.ws.webcontainer.jar:?]

                at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:481) ~[com.ibm.ws.webcontainer.jar:?]

                at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178) ~[com.ibm.ws.webcontainer.jar:?]

                at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1114) ~[com.ibm.ws.webcontainer.jar:?]

                at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:87) ~[com.ibm.ws.webcontainer.jar:?]

                at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:949) ~[com.ibm.ws.webcontainer.jar:?]

                at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1817) ~[com.ibm.ws.webcontainer.jar:?]

                at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:213) ~[com.ibm.ws.webcontainer.jar:?]

                at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:463) ~[com.ibm.ws.runtime.jar:?]

                at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:530) ~[com.ibm.ws.runtime.jar:?]

                at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:316) ~[com.ibm.ws.runtime.jar:?]

                at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:88) ~[com.ibm.ws.runtime.jar:?]

                at com.ibm.ws.ssl.channel.impl.SSLReadServiceContext$SSLReadCompletedCallback.complete(SSLReadServiceContext.java:1833) ~[com.ibm.ws.runtime.jar:?]

                at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:175) ~[com.ibm.ws.runtime.jar:?]

                at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217) ~[com.ibm.ws.runtime.jar:?]

                at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161) ~[com.ibm.ws.runtime.jar:?]

                at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138) ~[com.ibm.ws.runtime.jar:?]

                at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204) ~[com.ibm.ws.runtime.jar:?]

                at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775) ~[com.ibm.ws.runtime.jar:?]

                at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905) ~[com.ibm.ws.runtime.jar:?]

                at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1892) ~[com.ibm.ws.runtime.jar:?]

Caused by: com.pega.pegarules.pub.database.MultipleRuleVersionException: Rule resolution identified 2 versions of the rule with class Rule-Obj-When and name ANTM-FW-DPSFW!ISNEWPROVIDERS

                at com.pega.pegarules.data.internal.access.RuleResolver.filterAllCachedCandidates(RuleResolver.java:2043) ~[prprivate.jar:?]

                at com.pega.pegarules.data.internal.PRDataProviderImpl.invokeRuleResolutionFilterCachedCandidatesAlwaysReturnsCandidate(PRDataProviderImpl.java:514) ~[prprivate.jar:?]

                at com.pega.pegarules.generation.internal.vtable.ruleres.VirtualTableResolver.findCircumstancedCandidateInResults(VirtualTableResolver.java:539) ~[prprivate.jar:?]

                ... 82 more

 

We have tried to revalidate and save a few rules and receiving the following errors.

pzInskey is the primary key of the work table. We have manually saved the duplicate rules created in a different ruleset as backup however application is quite unstable.

 

 

***Edited by Moderator Marissa to update Support Case Details***

Pega Platform System Administration SR Exists
Share this page LinkedIn