-
Notifications
You must be signed in to change notification settings - Fork 11
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
Loop path queries: imjs silently swallows them #48
Comments
Just to clarify - do we think the bug is in InterMine core / java and we just need to test it, or do we also think there is a bug in imjs that needs to be fixed? |
no idea. I am only desperately trying to shift blame. Having a passing imjs loop query test would help though, even if it's not an imjs bug. Java has passing loop query tests. iodocs works (no imjs), UI does not (imjs). So imjs is a suspect. However, loopqueries were working last summer (at least) but I don't see any imjs changes that could have caused this issue. |
Okay, that's good to know. We might also need to broaden the scope to im-tables depending on what investigations reveal |
@LakshSingla Would you be able to take a look at this? It might be that this is (or isn't) imjs or im-tables. Let me know if anything isn't clear or if it seems like it's a problem on the intermine side :) |
According to me, loop constraints are still functional in
Following is the output of the given query:
PS: Am I able to correctly understand the problem ? |
@LakshSingla That's great! What I am worried about is this, I searched GitHub and don't see 'loopPath' anywhere in imjs:
So how do you convert the pathqueries you get from the webapp to be loop queries? If you don't ever handle the Here's an example query:
Shouldn't (sorry if a stupid question, i have no idea how imjs works!!) |
(Also loop queries have worked for a long time so this is a recent bug.) |
So the problem isn't running a Loop Query in imjs, it's translating from the XML that seems to be the problem. Run the above query in flymine, and you will get an error saying the query looks like this:
The |
|
That first error line is parsing a JSON query. Is that what imjs gets from the webapp? Or do you get XML then translate to JSON? |
Sorry for the late response!! I have been investigating
Output of following piece of code (illegal XML)
|
READING XML PathQueryHandler.java parses the XML and creates a WRITING XML Then when the XML is written out, if there is a That's how we end up with the valid query with a
Does that help? Thanks so much!! Great detective work. |
Ohh!! Lemme see what can be done from the |
Import that query into beta FlyMine and click on Submit. You are now in the "query builder" with a legal query. Scroll down, and on the right is a big green "Show Results" button. Under that is a link that says "export xml". If you click on that, you will see the XML is still correct. Now click on the big green button. ERROR!
XML is now wrong. |
See intermine/intermine#2053
Try running this query in flymine:
You get an error. However you don't get an error in MouseMine (older version) or in FlyMine's iodocs (doesn't use imjs). The error looks like it's dropped the
loopPath
value, and so we get aninvalid XML error
.It doesn't look like imjs has a test for loopPaths. Can you add one?
This is higher priority because loopPaths aren't working in the UI right now.
The text was updated successfully, but these errors were encountered: