OHDSI Home | Forums | Wiki | Github

ATLAS vocabulary search does not work / how to debug?

Hi Folks.

I have several data sources configured in my WebAPI (2.11.1). One in particular (cerner-prd) uses a Impala database called “sandbox_gov_hdsb_omop_vocab”, and other (cerner-dev) uses also an Impala database called “sandbox_gov_hdsb_omop_dev” (fig below)

When I try to use Atlas (2.10.1) to search for a concept (say, “I21” or “cancer”), and select cerner-prd as the source for vocabulary, it yields no results. Using cerner-dev, I get results.

First question: What could be possibly be wrong in this particular issue? Both databases had vocabularies uploaded by the same script (should be also the same data nowadays)

Second question: What is an easier way to debug Atlas? I used to turn on query logging in the impala jdbc url (something like adding DEBUG_LEVEL=1,LOG_FILE=/tmp/log.txt to it) but the server is in production level now and I don’t have direct access to it anymore.

Using F12 on the browser shows that the /vocabulary/cerner-dev/search?query=I21 returns 200 OK but an empty set of results.

1 Like

I waws inspecting WEBAPI source code and found that /vocabulary/{source}/search uses this query [1]:

select CONCEPT_ID, CONCEPT_NAME, ISNULL(STANDARD_CONCEPT,'N') STANDARD_CONCEPT, ISNULL(INVALID_REASON,'V') INVALID_REASON, CONCEPT_CODE, CONCEPT_CLASS_ID, DOMAIN_ID, VOCABULARY_ID
from @CDM_schema.concept
where (LOWER(CONCEPT_NAME) LIKE '%@query%' or LOWER(CONCEPT_CODE) LIKE '%@query%' or CAST(CONCEPT_ID as VARCHAR(255)) = '@query')
@filters
order by CONCEPT_NAME ASC

So aparently it expects the CONCEPT table to be in CDM, not in VOCAB database. Isn’t it a violation of the OMOP data architecture [2]?

1: https://github.com/OHDSI/WebAPI/blob/v2.11.1/src/main/resources/resources/vocabulary/sql/search.sql

2: Data Standardization – OHDSI

1 Like
t