It's all about the answers!

Ask a question

CLM605[iFix002]: RM - QM links cannot be created/modified


Suvajit Chakraborty (111) | asked Apr 02 '18, 8:40 a.m.

 Hello Jazz Experts


We have upgraded our CLM [WAS based] apps from 602 [latest iFix] to 605 [iFix002] and since then the projects which are linked between RM & QM by [Sbatisfied by & Validated by relations] are no longer allowing any link to be created or modified. The existing links show, but some of them are missing as well.

Another interesting observation is that post upgrade, if I or any user logging into an RM project [connected to QM] it does not checkout any RM Analyst license, it checks out Quality Professional floating or Developer Floating licenses, instead of DNG Analyst. All licenses are 6.0 based which were working fine till version 6.0.2.

While doing linking from an RM artifact to a QM test case, the error reported in rm.log is as below -

2018-04-02 08:09:03,692 [WebContainer : 23 @@ 08:09 212358406 <Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:52.0) Gecko/20100101 Firefox/52.0@3.57.20.243> /rm/links]  WARN .fronting.server.core.links.internal.LinkConverter  - InterestingData_LinkAttributeslink=attr=https://alm.health.ge.com/rm/types/_jJYoYasWEeaSL4F7dWxPkw
2018-04-02 08:09:03,769 [WebContainer : 23 @@ 08:09 212358406 <Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:52.0) Gecko/20100101 Firefox/52.0@3.57.20.243> /rm/links] ERROR ibm.rdm.fronting.server.services.RMRestServiceBase  - CRRRS1007E  A problem occurred in the Requirements Management (RM) server: Entry [ebc221a6005ec47b]
com.ibm.rdm.fronting.server.exception.InternalServerErrorException: Propagated exception; original message [NullPointerException: null]
at com.ibm.rdm.fronting.server.exception.RRSException.newException(RRSException.java:271)
at com.ibm.rdm.fronting.server.exception.RRSException.newInternalServerErrorException(RRSException.java:149)
at com.ibm.rdm.fronting.server.core.jpi.internal.InternalServiceExchange.checkError(InternalServiceExchange.java:56)
at com.ibm.rdm.fronting.server.core.jpi.internal.InternalServiceExchange.getResponse(InternalServiceExchange.java:37)
at com.ibm.rdm.fronting.server.core.DefaultExchangeHTTPSerializer.serialize(DefaultExchangeHTTPSerializer.java:48)
at com.ibm.rdm.fronting.server.services.RMRestService.passthru(RMRestService.java:305)
at com.ibm.rdm.fronting.server.services.RMRestService.serializeISR(RMRestService.java:283)
at com.ibm.rdm.fronting.server.services.RMRestService$RMRestServiceMappingChangesetAwareExecutor.execute(RMRestService.java:774)
at com.ibm.rdm.fronting.server.services.RMRestService.executeInMappingChangeSet(RMRestService.java:719)
at com.ibm.rdm.fronting.server.services.RMRestService.runInternalMethodWithVVCWrapper(RMRestService.java:684)
at com.ibm.rdm.fronting.server.services.RMRestService.runInternalMethod(RMRestService.java:460)
at com.ibm.rdm.fronting.server.services.RMRestService.handleMethod(RMRestService.java:406)
at com.ibm.rdm.fronting.server.services.RMRestService.performService(RMRestService.java:342)
at com.ibm.rdm.fronting.server.services.RMRestServiceBase.service(RMRestServiceBase.java:229)
at com.ibm.rdm.fronting.server.services.RMBridgeService.service(RMBridgeService.java:145)
at sun.reflect.GeneratedMethodAccessor1445.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
at java.lang.reflect.Method.invoke(Method.java:508)
at org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord.invoke(ExportProxyServiceRecord.java:361)
at org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord.access$0(ExportProxyServiceRecord.java:347)
at org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord$ExportedServiceInvocationHandler.invoke(ExportProxyServiceRecord.java:56)
at com.sun.proxy.$Proxy1244.service(Unknown Source)
at com.ibm.team.repository.servlet.AbstractTeamServerServlet.doRestService(AbstractTeamServerServlet.java:1107)
at com.ibm.team.repository.servlet.AbstractTeamServerServlet.handleRequest2(AbstractTeamServerServlet.java:2711)
at com.ibm.team.repository.servlet.AbstractTeamServerServlet.handleRequest(AbstractTeamServerServlet.java:2489)
at com.ibm.team.repository.servlet.AbstractTeamServerServlet.access$0(AbstractTeamServerServlet.java:2474)
at com.ibm.team.repository.servlet.AbstractTeamServerServlet$1.service(AbstractTeamServerServlet.java:257)
at com.ibm.team.repository.service.internal.compatibility.auth.DelegatedAuthHandlerService$1.run(DelegatedAuthHandlerService.java:264)
at com.ibm.team.repository.servlet.AbstractTeamServerServlet.handleAuthentication(AbstractTeamServerServlet.java:2161)
at com.ibm.team.repository.servlet.AbstractTeamServerServlet.service(AbstractTeamServerServlet.java:1898)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:128)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
at org.eclipse.equinox.servletbridge.BridgeServlet.service(BridgeServlet.java:152)
at com.ibm.team.repository.server.servletbridge.JazzServlet.service(JazzServlet.java:74)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1233)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:782)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:481)
at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:136)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:97)
at com.ibm.team.repository.server.servletbridge.BridgeFilter.processDelegate(BridgeFilter.java:165)
at com.ibm.team.repository.server.servletbridge.BridgeFilter.doFilter(BridgeFilter.java:198)
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:967)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1107)
at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:4028)
at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:304)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:1016)
at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1817)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:200)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:463)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:530)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:316)
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:88)
at com.ibm.ws.ssl.channel.impl.SSLReadServiceContext$SSLReadCompletedCallback.complete(SSLReadServiceContext.java:1833)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:175)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1892)
Caused by: java.lang.NullPointerException
at com.ibm.rdm.fronting.server.core.links.internal.LinkServiceUtil.processLinkStorageLocation(LinkServiceUtil.java:487)
at com.ibm.rdm.fronting.server.core.links.isrs.CreateLinkRequestJAF.linkStorageLocationProcessing(CreateLinkRequestJAF.java:148)
at com.ibm.rdm.fronting.server.core.links.isrs.CreateLinkRequestJAF.executeServiceRequest(CreateLinkRequestJAF.java:325)
at com.ibm.rdm.fronting.server.core.jpi.internal.InternalDefaultPartitionerFactory$1ExecuteServiceRequest.call(InternalDefaultPartitionerFactory.java:29)
at com.ibm.rdm.fronting.server.core.jpi.internal.InternalDefaultPartitionerFactory$1ExecuteServiceRequest.call(InternalDefaultPartitionerFactory.java:1)
at com.ibm.rdm.fronting.server.core.spi.DefaultPartitionerFactory$1DefaultExecutor.call(DefaultPartitionerFactory.java:76)
at com.ibm.rdm.fronting.server.core.spi.DefaultPartitionerFactory$1DefaultExecutor.call(DefaultPartitionerFactory.java:1)
at com.ibm.rdm.fronting.server.core.jpi.internal.InternalCoreServices.handleExecutables(InternalCoreServices.java:715)
at com.ibm.rdm.fronting.server.core.jpi.internal.InternalCoreServices.execute(InternalCoreServices.java:409)
at com.ibm.rdm.fronting.server.core.jpi.internal.InternalCoreServices.execute(InternalCoreServices.java:260)
at com.ibm.rdm.fronting.server.core.jpi.internal.InternalCoreServices.execute(InternalCoreServices.java:253)
at com.ibm.rdm.fronting.server.core.jpi.internal.InternalCoreServices.execute(InternalCoreServices.java:243)
at com.ibm.rdm.fronting.server.services.RMRestService$RMRestServiceMappingChangesetAwareExecutor.execute(RMRestService.java:770)
... 61 more
Request
--Not Provided--
Response
--Not Provided--

There is a PMR to IBM support already in place - but they are unsure/unaware of such issues and unable to point to any direction.

if any of you are aware of such an issue, let me know. it will be of great help.

One answer



permanent link
Daniel Barbour (250222) | answered Apr 02 '18, 4:52 p.m.

Hi Suvajit,

I upgraded from 6.0.4 to 6.0.5 and our RQM/RM links work.

There are two things to look at:
1) Did you update your licenses for 6.0.5 per the upgrade instructions?  There was a change made between 6.0.4. and 6.0.5 that affected the authentication operations performed during license checking and the older license files do not work.  Below is an extract from the upgrade instructions:

Update license files Back to top

If you are using WebSphere Liberty, the new Java version that is shipped with version 6.0.5 is not compatible and blocks the access to MD5 signed license files. The licenses have been updated in the IBM Rational License Key Center to use a newer signature algorithm. Complete the following steps to update your current license files: ...


2) Did you rebase RM TRS and reindex the LDX data sources per the upgrade instructions? (look for instructions like the following).

Rebase TRS and reindex Requirements Management data sources Back to top

If you are using Lifecycle Query Engine, complete the following steps after you upgrade your Requirements Management application. Note that these steps might take some time to complete depending on the size of your repository.



Comments
Suvajit Chakraborty commented Apr 03 '18, 3:13 a.m.

Thanks for answering Daniel. It is indeed surprising to understand that during upgrade [602 - 605] the license needed to be changed. I followed the interactive upgrade guide from 6.0.2 to 6.0.5 upgrade, nowhere it mentioned about the licenses for DNG. IBM Support also believes that it is not a license issue as they are calling it "intended behavior" for this version. 


About the application, we are not using Liberty but the actual WAS 8.5.5.13 with IBM Java JRE 1.8 and Database Oracle 11gr2 with ojdbc8.jar.

Could you provide a URL where in it is mentioned about the license change or java version ?


Daniel Barbour commented Apr 03 '18, 9:29 a.m. | edited Apr 03 '18, 9:31 a.m.

Suvajit,

The snippets I posted above (that referred to updating the licenses and reindexing the RM data sources) were taken from the interactive upgrade guide page - you should be able to recreate those if you re-generate the instructions (but given that you aren't using Liberty then it makes sense that you didn't see them).

Working with IBM Support is likely the best option.

Your answer


Register or to post your answer.


Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.