mirror of
				https://github.com/open-metadata/OpenMetadata.git
				synced 2025-10-31 02:29:03 +00:00 
			
		
		
		
	MINOR: Add location path to table entity (#18307)
This commit is contained in:
		
							parent
							
								
									0741788744
								
							
						
					
					
						commit
						5801e6c380
					
				| @ -478,6 +478,12 @@ class CommonDbSourceService( | ||||
|         """Not Implemented""" | ||||
|         yield from [] | ||||
| 
 | ||||
|     def get_location_path(self, table_name: str, schema_name: str) -> Optional[str]: | ||||
|         """ | ||||
|         Method to fetch the location path of the table | ||||
|         by default there will be no location path | ||||
|         """ | ||||
| 
 | ||||
|     @calculate_execution_time_generator() | ||||
|     def yield_table( | ||||
|         self, table_name_and_type: Tuple[str, TableType] | ||||
| @ -553,6 +559,9 @@ class CommonDbSourceService( | ||||
|                     table_type=table_type, | ||||
|                 ), | ||||
|                 owners=self.get_owner_ref(table_name=table_name), | ||||
|                 locationPath=self.get_location_path( | ||||
|                     table_name=table_name, schema_name=schema_name | ||||
|                 ), | ||||
|             ) | ||||
| 
 | ||||
|             is_partitioned, partition_details = self.get_table_partition_details( | ||||
|  | ||||
| @ -705,6 +705,14 @@ class DatabricksSource(ExternalTableLineageMixin, CommonDbSourceService, MultiDB | ||||
|             ) | ||||
|         return description | ||||
| 
 | ||||
|     def get_location_path(self, table_name: str, schema_name: str) -> Optional[str]: | ||||
|         """ | ||||
|         Method to fetch the location path of the table | ||||
|         """ | ||||
|         return self.external_location_map.get( | ||||
|             (self.context.get().database, schema_name, table_name) | ||||
|         ) | ||||
| 
 | ||||
|     def _filter_owner_name(self, owner_name: str) -> str: | ||||
|         """remove unnecessary keyword from name""" | ||||
|         pattern = r"\(Unknown\)" | ||||
|  | ||||
| @ -1114,6 +1114,7 @@ public class TableRepository extends EntityRepository<Table> { | ||||
|       recordChange("sourceUrl", original.getSourceUrl(), updated.getSourceUrl()); | ||||
|       recordChange("retentionPeriod", original.getRetentionPeriod(), updated.getRetentionPeriod()); | ||||
|       recordChange("sourceHash", original.getSourceHash(), updated.getSourceHash()); | ||||
|       recordChange("locationPath", original.getLocationPath(), updated.getLocationPath()); | ||||
|     } | ||||
| 
 | ||||
|     private void updateConstraints(Table origTable, Table updatedTable) { | ||||
|  | ||||
| @ -1232,6 +1232,7 @@ public class TableResource extends EntityResource<Table, TableRepository> { | ||||
|                 .copy(new Table(), create, user) | ||||
|                 .withColumns(create.getColumns()) | ||||
|                 .withSourceUrl(create.getSourceUrl()) | ||||
|                 .withLocationPath(create.getLocationPath()) | ||||
|                 .withTableConstraints(create.getTableConstraints()) | ||||
|                 .withTablePartition(create.getTablePartition()) | ||||
|                 .withTableType(create.getTableType()) | ||||
|  | ||||
| @ -98,6 +98,7 @@ public record TableIndex(Table table) implements ColumnIndex { | ||||
|     doc.put("schema_suggest", schemaSuggest); | ||||
|     doc.put("database_suggest", databaseSuggest); | ||||
|     doc.put("serviceType", table.getServiceType()); | ||||
|     doc.put("locationPath", table.getLocationPath()); | ||||
|     doc.put("service", getEntityWithDisplayName(table.getService())); | ||||
|     doc.put("database", getEntityWithDisplayName(table.getDatabase())); | ||||
|     doc.put("lineage", SearchIndex.getLineageData(table.getEntityReference())); | ||||
|  | ||||
| @ -499,6 +499,9 @@ | ||||
|           } | ||||
|         } | ||||
|       }, | ||||
|       "locationPath": { | ||||
|         "type": "text" | ||||
|       }, | ||||
|       "usageSummary": { | ||||
|         "properties": { | ||||
|           "dailyStats": { | ||||
|  | ||||
| @ -477,6 +477,9 @@ | ||||
|           } | ||||
|         } | ||||
|       }, | ||||
|       "locationPath": { | ||||
|         "type": "text" | ||||
|       }, | ||||
|       "usageSummary": { | ||||
|         "properties": { | ||||
|           "dailyStats": { | ||||
|  | ||||
| @ -452,6 +452,9 @@ | ||||
|           } | ||||
|         } | ||||
|       }, | ||||
|       "locationPath": { | ||||
|         "type": "text" | ||||
|       }, | ||||
|       "usageSummary": { | ||||
|         "properties": { | ||||
|           "dailyStats": { | ||||
|  | ||||
| @ -34,6 +34,11 @@ | ||||
|     "dataModel": { | ||||
|       "$ref": "../../entity/data/table.json#/definitions/dataModel" | ||||
|     }, | ||||
|     "locationPath": { | ||||
|       "description": "Full storage path in case of external and managed tables.", | ||||
|       "type": "string", | ||||
|       "default": null | ||||
|     }, | ||||
|     "tableConstraints": { | ||||
|       "type": "array", | ||||
|       "items": { | ||||
|  | ||||
| @ -996,6 +996,11 @@ | ||||
|       "description": "Reference to the Location that contains this table.", | ||||
|       "$ref": "../../type/entityReference.json" | ||||
|     }, | ||||
|     "locationPath": { | ||||
|       "description": "Full storage path in case of external and managed tables.", | ||||
|       "type": "string", | ||||
|       "default": null | ||||
|     }, | ||||
|     "schemaDefinition": { | ||||
|       "description": "DDL for Tables and Views", | ||||
|       "$ref": "../../type/basic.json#/definitions/sqlQuery" | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Mayur Singal
						Mayur Singal