Apollo not responding?

Hello,
I am working through the tutorial " Refining Genome Annotations with Apollo (prokaryotes)", but the Create or Update Organism step fails:

Here is the error message:
INFO:root:curl https://usegalaxy.eu/apollo_api/user/loadUsers -H ‘Content-Type: application/json’ -d ‘{“userId”: “bburnes01@gmail.com”, “username”: “XXXXXXXXX”, “password”: “XXXXXXXXX”}’
INFO:main:Determining if add or update required
INFO:root:curl

Any help is appreciated. Thanks.

Hi @brianburnes

Would you please post back the link to the exact tutorial you are following? I’ll try to replicate the error, then we can report to the EU admins. Thanks!

Hi Jenna,

Thank you for responding. I have tried to open a JBrowse in Apollo as part of several tutorials:

They all have this step:
image

But it gives an error message. I tried going directly to Apollo with this link: https://usegalaxy.eu/apollo, but it gives this error message:

image

I have tried to generate a json for Apollo instead of specifying a genome, but I don’t know how. Here is my history, if it helps:

Thank you so much!

Brian

Thanks for sharing that. I actually don’t know if this is limited to certain accounts or not. (I was also excluded!) Let’s ask the server admins if they recognized what is going on. ping @bjoern.gruening or maybe @wm75 could you help?

Update: Decided to cross post over the EU chat. You can reach that at the bottom of the server’s homepage, or by using the link here You're invited to talk on Matrix

Please keep in mind time differences while waiting for a reply …

Thanks so much!

@jennaj neither Björn nor Wolfgang maintain the EU Apollo instance, I’m still maintaining it so please feel free to ping me on such issues.

@brianburnes I’ll have time to look at it Friday, and I’ll let you know then!

1 Like

@brianburnes Just a note. The error message from your first post is truncated, most likely because got it from the history entry.

grafik

If you click the grafik icon, you will have access to the complete error message.

Unsurprisingly, it matches what you get when you visit Apollo directly.

I hope that helps when the next issue arises.

1 Like

@jdom Thank you, that helps. It says to get permission or choose a different name for organism. I will try another name.

this is still an unexpected error, since the organism names are allocated per-user (hence the (gx####) portion in the organism name.

That said, please let us know if that fixes it.

1 Like

I’m seeing a lot of organisms in the database without proper identifiers, I wonder what’s wrong there.

based on the current deployment of EU, it’s supposed to be included (GALAXY_APOLLO_ORG_SUFFIX=id")

group_vars/all.yml
151:# Apollo env vars
152:apollo_env: "GALAXY_WEBAPOLLO_URL={{ GALAXY_WEBAPOLLO_URL }} GALAXY_WEBAPOLLO_USER={{ GALAXY_WEBAPOLLO_USER }} GALAXY_WEBAPOLLO_PASSWORD={{ GALAXY_WEBAPOLLO_PASSWORD }} GALAXY_WEBAPOLLO_EXT_URL={{ GALAXY_WEBAPOLLO_EXT_URL }} GALAXY_SHARED_DIR={{ GALAXY_SHARED_DIR }} GALAXY_APOLLO_ORG_SUFFIX=id"

so, that’s rather unexpected and can be exacerbating this issue; anyone using a common name will encounter these permission errors. @jdom maybe you have some ideas? is this related to the TPV migration somehow, that the env vars aren’t getting passed properly?

I debugged create_or_update_organism.py for a while and so far I found the following.

Line 134 sets org = {'annotationCount': 0, 'blatdb': None, 'commonName': 'E. coli K12 (gx*****)', 'currentOrganism': False, 'directory': '/data/dnb01/apollo/*********', 'genomeFasta': 'seq/genome.fasta', 'genomeFastaIndex': 'seq/genome.fasta.fai', 'genus': 'Escherichia', 'id': *******, 'metadata': '{"creator":"**"}', 'nonDefaultTranslationTable': None, 'obsolete': False, 'publicMode': False, 'sequences': 2, 'species': 'coli', 'valid': True}.

Execution continues until line 148.

In accessible_organisms, both permission_map (a dict) and user.organismPermissions are empty. Thus, an empty list is returned, triggering the exception on line 150.

The user passed to accessible_organisms is created here. The content of wa.users._assert_or_create_user(args.email) is

{'firstName': 'Brian ',
 'lastName': 'Burnes',
 'inactive': False,
 'role': 'USER',
 'availableGroups': [
  {'name': '****'},
  ...,
  {'name': '****'},
  {'name': '****'},
  {'name': '****'}],
 'userCount': 1,
 'searchName': None,
 'groups': [],
 'userId': *******,
 'organismPermissions': [],
 'username': 'bburnes01@gmail.com'}

The value for the key organismPermissions is an empty list. Digging deeper, that information comes from the loadUsers endpoint.

Feel free to continue debugging if you find some time for it.

1 Like

Hi JDOM, @jdom

I am still trying to use this tool. When I try to call up Apollo, I am getting this error: (What does “list index out of range” mean?

"/opt/galaxy/shed_tools/[toolshed.g2.bx.psu.edu/repos/gga/apollo_create_or_update/9e7b8c7185ad/apollo_create_or_update/create_or_update_organism.py](http://toolshed.g2.bx.psu.edu/repos/gga/apollo_create_or_update/9e7b8c7185ad/apollo_create_or_update/create_or_update_organism.py)", line 123, in <module>
    org_cn = org_cn[0]
IndexError: list index out of range

Hi Helena, @hexylena

I am still trying to use this tool. When I try to use Apollo, I am getting this “list index out of range” error. Any ideas? Thanks.

"/opt/galaxy/shed_tools/[toolshed.g2.bx.psu.edu/repos/gga/apollo_create_or_update/9e7b8c7185ad/apollo_create_or_update/create_or_update_organism.py](http://toolshed.g2.bx.psu.edu/repos/gga/apollo_create_or_update/9e7b8c7185ad/apollo_create_or_update/create_or_update_organism.py)", line 123, in <module>
    org_cn = org_cn[0]
IndexError: list index out of range

@jdom did you check if the env var galaxy_apollo_org_suffix was properly set?

Ok, I can confirm some issue in creating the organism, it’s created on the backend without assigning permissions properly. I’m investigating currently.

Ok, here’s how the bug happens:

This request takes more than 60 seconds, which means proxy B says the request timed out, and proxy A also fails it, which ends up back in the job.

We (@abretaud) and I proxy the request to /organism/findAllOrganisms through a project GitHub - galaxy-genome-annotation/apolpi: Partial, faster reimplementation of Apollo API because of how slow it is, to avoid this issue in other situations.

However, creating an organism also generates this same list of organisms, a process that currently takes 74 seconds on EU.

We can bump the timeouts as a short term solution which should help, but long term, hopefully this can be fixed by Apollo3.

I’ve requested an infrastructure change at EU, hopefully they can merge it soon :slight_smile: Increase proxy timeout for apollo by hexylena · Pull Request #1013 · usegalaxy-eu/infrastructure-playbook · GitHub

1 Like

Thank you, Helena!

@brianburnes Is Apollo now working or do you still have issues?

YES, it worked!!! So, I was checking an existing history and rerunning the “Create or update organism” tool, but it kept failing. Then, I rebuilt the history and it ran just fine. Thank you so much for your help. Hooray, Galaxy!!!

Awesome!

@jennaj I assume only @brianburnes or a forum admin can mark this as solved right?

1 Like