Brijesh Bhalala created ATLAS-5321:
--------------------------------------
Summary: Backend: Basic Search throws ATLAS-400-00-06E
"Unknown/invalid glossary term" after updating parent Glossary
Key: ATLAS-5321
URL: https://issues.apache.org/jira/browse/ATLAS-5321
Project: Atlas
Issue Type: Bug
Components: atlas-core
Affects Versions: 2.5.0
Reporter: Brijesh Bhalala
Assignee: Aditya Gupta
*Issue Overview:* A basic search for a valid Glossary Term using the
{{termName}} parameter fails with an {{ATLAS-400-00-06E}} error if its parent
Glossary has been recently updated. The term search works perfectly immediately
after creation but breaks as soon as the associated Glossary undergoes any
update operation.
*Steps to Reproduce:*
# Create a new Glossary (e.g., {{{}gloss23{}}}).
# Create a new Term within this glossary (e.g., {{{}term2{}}}, with
qualifiedName {{{}term2@gloss23{}}}).
# Perform a Basic Search via the API ({{{}/api/atlas/v2/search/basic{}}})
passing the term in the payload:
json
{
"termName": "term2@gloss23"
}
# Verify the search completes successfully and returns the expected results.
# Update the parent Glossary ({{{}gloss23{}}}) via the UI or API (e.g., change
its description or add an attribute).
# Perform the exact same Basic Search from Step 3 again.
*Expected Behavior:* The Basic Search API should successfully execute and
return the term/entities without any errors, identical to the behavior before
the glossary was updated.
*Actual Behavior:* The API throws a 400 Bad Request error, claiming the term no
longer exists:
json
{
"errorCode": "ATLAS-400-00-06E",
"errorMessage": "term2@gloss23: Unknown/invalid glossary term"
}
*Potential Root Causes (Backend):*
* *Search Index/Cache Invalidation:* Updating the parent Glossary might be
inadvertently dropping or corrupting the JanusGraph index / Solr cache for its
child terms.
* *Graph Edge Modification:* The glossary update process might be incorrectly
modifying or recreating the {{AtlasGlossaryTerm}} edges, causing the Basic
Search validator to fail when looking up the term's {{{}qualifiedName{}}}.
* *Term Status Disconnect:* The search validator may be referencing a stale
state of the Glossary that fails to correctly resolve active child terms after
a save operation.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)