-
Notifications
You must be signed in to change notification settings - Fork 15
Issues after upgrading ELM to 7.1 #70
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Hi #1 - oslc.where=rdm_types:ArtifactFormat = jazz_rm:Module I guess you upgraded from 7.0.2 on a fairly early iFix, pre-017? The rdm_types:ArtifactFormat = jazz_rm:Module certainly worked pre-017. From iFix017 the query to check for modules is oslc.where=rdf:type=jazz_rm:Module - apparently this should have been the test for a module before 017, when I believe both styles of query where accepted, but the rdm_types query syntax isn't accepted now. #2 I'll look at this |
#2 - not sure how I broke using the -F flag for oslcquery, but it works now in 0.27.0 and 0.27.1 - tested with both a local configuration name and a URL like you're trying to use. |
Hi Thanks for your help! #1 - That worked pretty fine, just changed the query and worked with same results as before. Thanks! About #2 - I noticed that the issue seems is coming from requesting to: 'baseurl:9443/rm/oslc_config/components' I have added this line to test if any behaviour changed and at least the execution is not blocked with an error:
But of course, not sure at all what effect it may produce, just hardcoded it for testing. Also I read herethis: "In DOORS Next 7.1 or later, a new OSLC configuration query capability is provided under the following service provider URL, https://:/rm/oslc_config/components" Not sure if this might have any relation And just one other thing which I'm not sure if is related with this update, but before wasn't happening to me. After running a similar oslcquery as in #2, before I did get a csv with several attributes in first row, included one called 'Satisfies'. Now in contrast the execution stops throwing error like:
Which if I hardcode it and don't rise the exception Which looks strange as in the typesystemreport the "Satisfies" is appearing with same uri as always, but the failing uri is not appearing anywhere in the document. Do you think this LT_.... id means something? Thanks! |
I've just tried updating also to this version with same python version you use according to readme but still have same issue Also as a note: at line 706 of oslcquery.py python complains of nesting with same quotes, at least for me :) Thanks! |
Ah yes I see line 706 should have '' instead of "". I'll add the -B option to my regression testing somewhere so those lines of code get covered in future releases. I'm currently using Python 3.12.0 - not aware of relying on newer version of Python though, AFAIK elmclient should work back to 3.9 although haven't tested that. Does the -F option work with a named configuration rather than the config URL? Yes there's a new configuration query capability in 7.1, it's the first application-wide Query Capability for DOORS Next, which is why I haven't implemented it yet, it's in a different place than the other application-wide query capability like for GCM and ETM so I have to code for rm differently to find it. The new QueryCapability is in the components content, but it's retrieving that which is giving you the 404. https://xx.xx.com:1234/rm/oslc_config/components is part of the discovery chain. It returns some RDF with all the projects - oslcquery will find the project name you specified with -p and then go looking for its components and configurations. It's a protected resource but you have to be authenticated to get everything after the rootservices document. A UUID starting LT_ is a link type, I guess that's your Satisfies link, but not sure why it won't resolve to "Satisfies" - you could try using the -Q option to disable converting URIs to helpful names, see if that works? Are you using the OOTB Satisfaction link type? Do you have a URI on your Satisfies link definition? Odd that removing headers sort of fixes things, but those headers are pretty much on every request so why would that affect just the GET on components? Does your network have a 'protective' security proxy that you're trying to traverse to get to DOORS Next, which might for some security reason object to that request (or the response) and return 404 to elmclient, meaning the request doesn't even get to DN, or the DN response is thrown away? |
If you reapply the headers one by one, which one breaks things? I'd start by putting OSLC-Core-Version and Accept back first, then the others. |
Hi, Thanks for your replies! I was using Python 3.9 and works great, now was testing with 3.11 and works same for me. I was checking according to your information, and actually I reached some good temporary fixes. Related with the headers, yes you are right, it's so odd it only breaks with that request, while with the others there's no problem apparently. I checked this morning and actually with just removing 'net.jazz.jfs.owning-context' and keeping the others it does not fails, looks like that's the header which is breaking it. To be honest about the network 'protection', I'm not so sure about how our company firewall configurations could affect these requests, but there is no proxies configured afaik to reach doors instance. The other requests works fine so not sure about this. And then, about the LT_ issue: For clarifying, yes, the satisfaction link is added, I think in most of the projects, with the same URI defined as I was digging into the xml received and after adding
Now it resolves the name, not sure if this may cause any interference with other uris or might be a good way to get it, but at least it works to me for now. I'm wondering if this satisfaction link is somewhere in our instance projects defined with same name but different or no uri, but... not sure why this happens now and not before while the configurations have not changed, we did just upgraded doors. Thanks a lot for the support! |
Hi
I think this header is a hangover from 6.x when configuration management isn't used. It may be necessary for EWM, so I've removed it just for rm, and my regression test works fine so that'll be incorporated in the next release. Still don't understand, though, why this was a problem for you.
I don't understand why the change you've suggested is needed, but I've also incorporated it and it'll be in the next release.
In DOORS Next the types are local to the configuration you're querying, so while querying in a local config it doesn't matter what other definitions there are in other configurations. Querying in a GC is different, that could return types used in any of the contributions - this is not really in scope for oslcquery, i.e. I didn't think of it when I started and I still don't have a tactic to properly address it - basically oslcquery is relying on a well-built typeystem where the same type names have the same definition. See https://jazz.net/library/article/92352 HTH |
After upgrading doors to Version 7.1.0 I'm having some issues when performing oslcqueries with elmclient.
For instance, with previous versions I run this and worked pretty fine:
But now with 7.1 instead, it only works if I remove the -q query or produces this error:
And similar happens with other queries like:
getting below error:
But actually, for this last case if I input
https://XX.XX.com:1234/rm/oslc_config/components
in my browser it downloads an *.rdf file.Not sure is there is any change in the oslc api, encodings, authentication methods or what could happen.
I'm trying to find a workaround but if anyone has any clue would help a lot.
Thanks in advance!
The text was updated successfully, but these errors were encountered: