Global configuration with multiple QM contributing streams does not return results from all QM streams to a Reportable REST QM Feed GET
I have an ELM 7.0.2 global configuration with two QM streams contributing. The two streams are each from a different QM component. My PUB template is expecting a feed of all test plans in the global configuration. I've constructed a PUB Reportable REST API URI as follows:
The response includes results from only the FIRST QM stream in the list of contributors in the global stream.
<?xml version="1.0" encoding="UTF-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title type="text">testplan ATOM feed for project area Demo (QM)</title><id>https://elmdemo.rivernorthsolutions.com/qm/service/com.ibm.rqm.integration.service.IIntegrationService/resources/Demo+%28QM%29/testplan</id><link href="https://elmdemo.rivernorthsolutions.com/qm/web/console/" rel="alternate"/><link rel="self" href="https://elmdemo.rivernorthsolutions.com/qm/service/com.ibm.rqm.integration.service.IIntegrationService/resources/Demo+%28QM%29/testplan?fields=feed%2Fentry%2Fcontent%2Ftestplan%2Ftitle&abbreviate=true&calmlinks=false&oslc_config.context=https%3A%2F%2Felmdemo.rivernorthsolutions.com%2Fgc%2Fconfiguration%2F2"/><entry xmlns="http://www.w3.org/2005/Atom"><id>https://elmdemo.rivernorthsolutions.com/qm/service/com.ibm.rqm.integration.service.IIntegrationService/resources/Demo+%28QM%29/testplan/urn:com.ibm.rqm:testplan:2</id><updated>2023-05-04T02:09:54.265Z</updated><title type="text">QD1234A</title><summary type="text"></summary><link href="https://elmdemo.rivernorthsolutions.com/qm/service/com.ibm.rqm.integration.service.IIntegrationService/resources/Demo+%28QM%29/testplan/urn:com.ibm.rqm:testplan:2" rel="alternate" type="application/xml" title=""/><link href="https://elmdemo.rivernorthsolutions.com/qm/web/console/Demo%20(QM)?oslc_config.context=_tPgt0OogEe21MrMMr7MZ0Q&oslc.configuration=https%3A%2F%2Felmdemo.rivernorthsolutions.com%2Fgc%2Fconfiguration%2F2#action=com.ibm.rqm.planning.home.actionDispatcher&subAction=viewTestPlan&id=2" rel="enclosure" type="text/html" title="Web Console"/></entry></feed>
Furthermore, if I manually rearrange the order of the QM contributing streams within the global stream, then the GET response includes only results from the NEW first QM contributing stream.
What I was expecting was to receive a feed that includes results from all QM streams which contribute to the global configuration specified in the GET request.
Would someone from the IBM team comment on this?
Note: A very closely related issue to this was resolved back in 2019 (link to work item on jazz.net). [APAR PH11597] [RQM: Fetching a resource in context of Global Configuration fails, if two components (of same project) are assembled and resource is located on second component.] [https://jazz.net/jazz02/resource/itemName/com.ibm.team.workitem.WorkItem/181363] APAR PH11597 was related to the ETM QM-type Reportable REST GET, like https://elmdemo.rivernorthsolutions.com/qm/service/com.ibm.rqm.integration.service.IIntegrationService/resources/Demo+%28QM%29/testplan/urn:com.ibm.rqm:testplan:1?abbreviate=true&calmlinks=false&oslc_config.context=https://elmdemo.rivernorthsolutions.com/gc/configuration/2
Accepted answer
Hi,
I think QM is different to RM since if there are two local configurations (same QM project area) in a global configuration, the reportable REST API will only return the first component that it finds in the global configuration and report on that. See appendix 1 in the API doc at the link below. This is behaviour, rightly or wrongly, is “by design”, which I too found out the hard way.
One other answer
Bob,
I'm not an expert on reportable REST. However, I assume from the request URI you are trying to report on test plans in a project area named "Demo+(QM)". This will have an associated component. The way that OSLC Configuration Management works is that a component is resolved in the specified [global] configuration context to a single local configuration of that component. If you have multiple local configurations of that component (component skew), it resolves to the first one based on contributiuon order. See https://docs.oasis-open-projects.org/oslc-op/config/v1.0/ps01/config-resources.html#vresolution and https://oslc-op.github.io/oslc-specs/notes/config-primer/config-primer.html#global-configurations for more details.
Best regards,
David.