You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@atlas.apache.org by "Umesh Patil (Jira)" <ji...@apache.org> on 2026/08/07 09:14:00 UTC

[jira] [Resolved] (ATLAS-5321) Backend: Basic Search for term throws ATLAS-400-00-06E "Unknown/invalid glossary term" after updating parent Glossary

     [ https://issues.apache.org/jira/browse/ATLAS-5321?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Umesh Patil resolved ATLAS-5321.
--------------------------------
    Fix Version/s: 3.0.0
                   2.6.0
       Resolution: Fixed

Summary of changes:
1. Added AtlasAuthorizationUtils.verifyAccess(SERVICE_NOTIFICATION_POST) to rest-notification NotificationREST — blocks read-only users from POSTing hook messages on port 41000 (Nixon CVE / ATLAS-5207).
2. Moved Jersey exception mappers to server-common for shared JSON error handling between webapp and rest-notification.
3. Updated rest-notification web.xml: removed broken Jersey packages scanning (Java 17 503); final state uses Spring component-scan like main webapp (commit 6226a27).
 
Commits:
- a7249c014 — authorization + shared mappers
- 6226a27b2 — simplified rest web.xml to match webapp (Spring scan)

> Backend: Basic Search for term 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: Umesh Patil
>            Priority: Minor
>              Labels: backend
>             Fix For: 3.0.0, 2.6.0
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> *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)