OHDSI Home | Forums | Wiki | Github

Atlas 2.9 stuck at loading

I’ve been trying to configure WebAPI and Atlas and now I’ve reached a point that I can see the sources in WebAPI, but Atlas is stuck in with the loading icon. Only 2 errors are shown in console, I’m not sure how critical they are

one of the error is from GIS module, which seems to be optional from what I understand from this other thread

Hi Diego,

I’m facing the same problem you are.

The only lead I have right now is in the Tomcat logs > stdout.log file

2021-05-24 19:07:45.067 WARN taskExecutor-1 org.ohdsi.webapi.cdmresults.CDMResultsCacheTasklet - - Failed to warm cache for OMOP. Trying to execute caching from scratch. Exception: PreparedStatementCallback; bad SQL grammar [SELECT
concept_id,
record_count,
descendant_record_count
FROM OMOP_Achilles.dbo.achilles_result_concept_count]; nested exception is com.microsoft.sqlserver.jdbc.SQLServerException: Invalid object name ‘OMOP_Achilles.dbo.achilles_result_concept_count’.
2021-05-24 19:12:19.119 ERROR taskExecutor-1 org.springframework.batch.core.step.AbstractStep - - Encountered an error executing step warming OMOP cache results in job warming OMOP cache
java.lang.OutOfMemoryError: Java heap space
2021-05-24 19:12:19.828 INFO taskExecutor-1 org.springframework.batch.core.launch.support.SimpleJobLauncher - - Job: [SimpleJob: [name=warming OMOP cache]] completed with the following parameters: [{jobName=warming OMOP cache, time=1621879655911, jobAuthor=anonymous}] and the following status: [FAILED]

Could you check if you are also seeing this error in yours? I’m not sure if this is the cause but if we both have the same error it could be a starting point for troubleshooting.

(I believe the error in the stdout file is due to a failure when achilles was creating the results schema)

Thanks, John

John, it looks like you ahve 2 problems:

  • invalid object name ‘OMOP_Achilles.dbo.achilles_result_concept_count’: The name OMOP_ACHILLES.dbo seems like an odd name for the results schema but if that’s where your results schema is, that’s fine. We’ve had other questions on the forums about where the achilles_result_concept_count table comes from, you should be able to search for it and find guidance where it is comming from.
  • OutOfMemoryError : Looks like you need to configure your environment to increasse the heapsize. The WebAPI process attempts to cache the vocabulary record counts in memory to make the row counts faster, but it does eat up a lot of memory. I suggest increating your heap size to at least 4GB.

Edit:
The answer to the first problem is here:

-Chris

Yeah, seems that my error is related to java heap space too

edit: giving the app more heap space allows it to go pass these errors. Now I get CORS errors (what is surprising because supposedly I’ve disabled CORS in webAPI settings)

For atlas itself, now is showing this error
imagen

This is a snippet of WebAPI settings.xml
imagen

Another error I’m getting in the WebAPI log is this one. Not sure if are related, but seem to be two different issues (it says that there are two classes with the same XML name)

may 25, 2021 8:15:12 AM org.glassfish.jersey.server.wadl.internal.generators.WadlGeneratorJAXBGrammarGenerator buildModelAndSchemas
GRAVE: Failed to generate the schema for the JAX-B elements
com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 1 counts of IllegalAnnotationExceptions
Hay dos clases que tienen el mismo nombre de tipo XML “concept”. Utilice @XmlType.name y @XmlType.namespace para asignarles nombres diferentes.
this problem is related to the following location:
at org.ohdsi.webapi.cohortresults.Concept
this problem is related to the following location:
at org.ohdsi.circe.vocabulary.Concept
at public org.ohdsi.circe.vocabulary.Concept org.ohdsi.circe.vocabulary.ConceptSetExpression$ConceptSetItem.concept
at org.ohdsi.circe.vocabulary.ConceptSetExpression$ConceptSetItem
at public org.ohdsi.circe.vocabulary.ConceptSetExpression$ConceptSetItem[] org.ohdsi.circe.vocabulary.ConceptSetExpression.items
at org.ohdsi.circe.vocabulary.ConceptSetExpression
at public org.ohdsi.circe.vocabulary.ConceptSetExpression org.ohdsi.circe.cohortdefinition.ConceptSet.expression
at org.ohdsi.circe.cohortdefinition.ConceptSet

I’ve double checked that tomcat has CORS filter enabled, but in any case seems weird that CORS is a problem if it is disabled in webapi configuration. Added also Access-Control-Allow-Origin * to the IIS headers where ATLAS is deployed, still no luck

See my response here: CORS Error - Atlas - #10 by Chris_Knoll

1 Like

Enabling CORS and leaving it to * actually told me that I had declared cors twice. I removed it from Tomcat configuration and now ATLAS works. Thanks for the advice!

Now looking at the data I get duplicated info in the reports (every graph that uses concept has duplicated values). Maybe is related with Achilles report generation

Yes, looksl ike you ran it twice and somehow it inserted duplicate records. Just re-run it, see if you get rid of the dupes, or you may have to truncate the tables yourself.

1 Like

Running it again didn’t solve the issue. Any idea on where to find which tables to truncate?

Should be achilles_results and achilles_results_dist. also may be some other source of duplication like you have vocabulary concepts twice. Not sure, you should run some queries directly on your data to see if there are duplicate rows of data or duplicate concepts.

2 Likes

Oh wow, you were right, I had copied the concept csv twice when updating it, now it works!

This probably means you have missing indexes on your database (ie: concept_id should be a primary key on your concept table) so you might want to look into that. Proper indexes on CDM will make queries run faster.

1 Like
t