UmeshPatil-1 opened a new pull request, #489:
URL: https://github.com/apache/atlas/pull/489

   **ATLAS-5159**  
   
   **What changes were proposed in this pull request?**  
   
   **Background:**  
   Exporting entities of a parent type (e.g., `Referenceable`) does not export 
entities of its child type (e.g., `hive_table`).  
   When attempting to export using the parent type with unique attributes, no 
child entities were returned, leading to incomplete exports.  
   
   **Root Cause:**
   
   The export logic in StartEntityFetchByExportRequest did not properly handle 
abstract or parent types.
   Methods like getEntitiesForMatchTypeType() and 
getEntitiesForMatchTypeUsingUniqueAttributes() only fetched concrete types when 
specified, ignoring child entities.
   
   
   **Changes Proposed:**
   
   1. Refactored StartEntityFetchByExportRequest to properly handle unique 
attribute lookups.
   2. Updated getEntitiesForMatchTypeType() to include all subtypes of a parent 
type during export.
   3. Simplified getEntitiesForMatchTypeUsingUniqueAttributes() for better 
performance and maintainability.
   4. Updated getBindingsForTypeName() to ensure all subtypes are included in 
queries.
   5. Improved logging and error handling for clarity.
   
   **Impact:**
   
   - Exporting parent types like Referenceable now correctly includes all child 
entities.
   - Maintains consistent behavior for all fetch types (FULL, INCREMENTAL, 
CONNECTED).
   - Minimal impact on performance; no additional schema changes are required.
   
   **How was this patch tested?**
   
   - Maven Build:- Build Successfull.
   - Manual testing of export requests with all three fetch types: FULL, 
INCREMENTAL, CONNECTED.
   - Verified entity GUIDs are correctly returned for parent types and child 
entities.
   - Confirmed behavior for concrete types, abstract types, and 
invalid/misspelled types.
   - Logs verified query execution, fetch type handling, and error reporting.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to