openmetadata-ingestion 1.6.3.2.dev0__py3-none-any.whl → 1.6.4.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of openmetadata-ingestion might be problematic. Click here for more details.

Files changed (699) hide show
  1. metadata/generated/schema/analytics/__init__.py +1 -1
  2. metadata/generated/schema/analytics/basic.py +1 -1
  3. metadata/generated/schema/analytics/reportData.py +1 -1
  4. metadata/generated/schema/analytics/reportDataType/__init__.py +1 -1
  5. metadata/generated/schema/analytics/reportDataType/aggregatedCostAnalysisReportData.py +1 -1
  6. metadata/generated/schema/analytics/reportDataType/entityReportData.py +1 -1
  7. metadata/generated/schema/analytics/reportDataType/rawCostAnalysisReportData.py +1 -1
  8. metadata/generated/schema/analytics/reportDataType/webAnalyticEntityViewReportData.py +1 -1
  9. metadata/generated/schema/analytics/reportDataType/webAnalyticUserActivityReportData.py +1 -1
  10. metadata/generated/schema/analytics/webAnalyticEvent.py +1 -1
  11. metadata/generated/schema/analytics/webAnalyticEventData.py +1 -1
  12. metadata/generated/schema/analytics/webAnalyticEventType/__init__.py +1 -1
  13. metadata/generated/schema/analytics/webAnalyticEventType/customEvent.py +1 -1
  14. metadata/generated/schema/analytics/webAnalyticEventType/pageViewEvent.py +1 -1
  15. metadata/generated/schema/api/__init__.py +1 -1
  16. metadata/generated/schema/api/addGlossaryToAssetsRequest.py +1 -1
  17. metadata/generated/schema/api/addTagToAssetsRequest.py +1 -1
  18. metadata/generated/schema/api/analytics/__init__.py +1 -1
  19. metadata/generated/schema/api/analytics/createWebAnalyticEvent.py +1 -1
  20. metadata/generated/schema/api/automations/__init__.py +1 -1
  21. metadata/generated/schema/api/automations/createWorkflow.py +1 -1
  22. metadata/generated/schema/api/bulkAssets.py +1 -1
  23. metadata/generated/schema/api/classification/__init__.py +1 -1
  24. metadata/generated/schema/api/classification/createClassification.py +1 -1
  25. metadata/generated/schema/api/classification/createTag.py +1 -1
  26. metadata/generated/schema/api/classification/loadTags.py +1 -1
  27. metadata/generated/schema/api/createBot.py +1 -1
  28. metadata/generated/schema/api/createEventPublisherJob.py +1 -1
  29. metadata/generated/schema/api/createType.py +1 -1
  30. metadata/generated/schema/api/data/__init__.py +1 -1
  31. metadata/generated/schema/api/data/createAPICollection.py +1 -1
  32. metadata/generated/schema/api/data/createAPIEndpoint.py +1 -1
  33. metadata/generated/schema/api/data/createChart.py +1 -1
  34. metadata/generated/schema/api/data/createContainer.py +1 -1
  35. metadata/generated/schema/api/data/createCustomProperty.py +1 -1
  36. metadata/generated/schema/api/data/createDashboard.py +1 -1
  37. metadata/generated/schema/api/data/createDashboardDataModel.py +1 -1
  38. metadata/generated/schema/api/data/createDatabase.py +1 -1
  39. metadata/generated/schema/api/data/createDatabaseSchema.py +1 -1
  40. metadata/generated/schema/api/data/createGlossary.py +1 -1
  41. metadata/generated/schema/api/data/createGlossaryTerm.py +1 -1
  42. metadata/generated/schema/api/data/createMetric.py +1 -1
  43. metadata/generated/schema/api/data/createMlModel.py +1 -1
  44. metadata/generated/schema/api/data/createPipeline.py +1 -1
  45. metadata/generated/schema/api/data/createQuery.py +1 -1
  46. metadata/generated/schema/api/data/createSearchIndex.py +1 -1
  47. metadata/generated/schema/api/data/createStoredProcedure.py +1 -1
  48. metadata/generated/schema/api/data/createTable.py +1 -1
  49. metadata/generated/schema/api/data/createTableProfile.py +1 -1
  50. metadata/generated/schema/api/data/createTopic.py +1 -1
  51. metadata/generated/schema/api/data/loadGlossary.py +1 -1
  52. metadata/generated/schema/api/data/restoreEntity.py +1 -1
  53. metadata/generated/schema/api/dataInsight/__init__.py +1 -1
  54. metadata/generated/schema/api/dataInsight/createDataInsightChart.py +1 -1
  55. metadata/generated/schema/api/dataInsight/custom/__init__.py +1 -1
  56. metadata/generated/schema/api/dataInsight/custom/createDataInsightCustomChart.py +1 -1
  57. metadata/generated/schema/api/dataInsight/kpi/__init__.py +1 -1
  58. metadata/generated/schema/api/dataInsight/kpi/createKpiRequest.py +1 -1
  59. metadata/generated/schema/api/docStore/__init__.py +1 -1
  60. metadata/generated/schema/api/docStore/createDocument.py +1 -1
  61. metadata/generated/schema/api/domains/__init__.py +1 -1
  62. metadata/generated/schema/api/domains/createDataProduct.py +1 -1
  63. metadata/generated/schema/api/domains/createDomain.py +1 -1
  64. metadata/generated/schema/api/feed/__init__.py +1 -1
  65. metadata/generated/schema/api/feed/closeTask.py +1 -1
  66. metadata/generated/schema/api/feed/createPost.py +1 -1
  67. metadata/generated/schema/api/feed/createSuggestion.py +1 -1
  68. metadata/generated/schema/api/feed/createThread.py +1 -1
  69. metadata/generated/schema/api/feed/resolveTask.py +1 -1
  70. metadata/generated/schema/api/feed/threadCount.py +1 -1
  71. metadata/generated/schema/api/governance/__init__.py +1 -1
  72. metadata/generated/schema/api/governance/createWorkflowDefinition.py +1 -1
  73. metadata/generated/schema/api/governance/createWorkflowInstanceState.py +1 -1
  74. metadata/generated/schema/api/lineage/__init__.py +1 -1
  75. metadata/generated/schema/api/lineage/addLineage.py +1 -1
  76. metadata/generated/schema/api/openMetadataServerVersion.py +1 -1
  77. metadata/generated/schema/api/policies/__init__.py +1 -1
  78. metadata/generated/schema/api/policies/createPolicy.py +1 -1
  79. metadata/generated/schema/api/services/__init__.py +1 -1
  80. metadata/generated/schema/api/services/createApiService.py +1 -1
  81. metadata/generated/schema/api/services/createDashboardService.py +1 -1
  82. metadata/generated/schema/api/services/createDatabaseService.py +1 -1
  83. metadata/generated/schema/api/services/createMessagingService.py +1 -1
  84. metadata/generated/schema/api/services/createMetadataService.py +1 -1
  85. metadata/generated/schema/api/services/createMlModelService.py +1 -1
  86. metadata/generated/schema/api/services/createPipelineService.py +1 -1
  87. metadata/generated/schema/api/services/createSearchService.py +1 -1
  88. metadata/generated/schema/api/services/createStorageService.py +1 -1
  89. metadata/generated/schema/api/services/ingestionPipelines/__init__.py +1 -1
  90. metadata/generated/schema/api/services/ingestionPipelines/createIngestionPipeline.py +1 -1
  91. metadata/generated/schema/api/setOwner.py +1 -1
  92. metadata/generated/schema/api/teams/__init__.py +1 -1
  93. metadata/generated/schema/api/teams/createPersona.py +1 -1
  94. metadata/generated/schema/api/teams/createRole.py +1 -1
  95. metadata/generated/schema/api/teams/createTeam.py +1 -1
  96. metadata/generated/schema/api/teams/createUser.py +1 -1
  97. metadata/generated/schema/api/tests/__init__.py +1 -1
  98. metadata/generated/schema/api/tests/createCustomMetric.py +1 -1
  99. metadata/generated/schema/api/tests/createLogicalTestCases.py +1 -1
  100. metadata/generated/schema/api/tests/createTestCase.py +1 -1
  101. metadata/generated/schema/api/tests/createTestCaseResolutionStatus.py +1 -1
  102. metadata/generated/schema/api/tests/createTestCaseResult.py +1 -1
  103. metadata/generated/schema/api/tests/createTestDefinition.py +1 -1
  104. metadata/generated/schema/api/tests/createTestSuite.py +1 -1
  105. metadata/generated/schema/api/voteRequest.py +1 -1
  106. metadata/generated/schema/auth/__init__.py +1 -1
  107. metadata/generated/schema/auth/basicAuth.py +1 -1
  108. metadata/generated/schema/auth/basicLoginRequest.py +1 -1
  109. metadata/generated/schema/auth/changePasswordRequest.py +1 -1
  110. metadata/generated/schema/auth/createPersonalToken.py +1 -1
  111. metadata/generated/schema/auth/emailRequest.py +1 -1
  112. metadata/generated/schema/auth/emailVerificationToken.py +2 -4
  113. metadata/generated/schema/auth/generateToken.py +1 -1
  114. metadata/generated/schema/auth/jwtAuth.py +1 -1
  115. metadata/generated/schema/auth/loginRequest.py +1 -1
  116. metadata/generated/schema/auth/logoutRequest.py +1 -1
  117. metadata/generated/schema/auth/passwordResetRequest.py +1 -1
  118. metadata/generated/schema/auth/passwordResetToken.py +1 -1
  119. metadata/generated/schema/auth/personalAccessToken.py +1 -1
  120. metadata/generated/schema/auth/refreshToken.py +1 -1
  121. metadata/generated/schema/auth/registrationRequest.py +1 -1
  122. metadata/generated/schema/auth/revokePersonalToken.py +1 -1
  123. metadata/generated/schema/auth/revokeToken.py +1 -1
  124. metadata/generated/schema/auth/serviceTokenEnum.py +1 -1
  125. metadata/generated/schema/auth/ssoAuth.py +1 -1
  126. metadata/generated/schema/auth/tokenRefreshRequest.py +1 -1
  127. metadata/generated/schema/configuration/__init__.py +1 -1
  128. metadata/generated/schema/configuration/appsPrivateConfiguration.py +1 -1
  129. metadata/generated/schema/configuration/assetCertificationSettings.py +1 -1
  130. metadata/generated/schema/configuration/authConfig.py +1 -1
  131. metadata/generated/schema/configuration/authenticationConfiguration.py +1 -1
  132. metadata/generated/schema/configuration/authorizerConfiguration.py +1 -1
  133. metadata/generated/schema/configuration/changeEventConfiguration.py +1 -1
  134. metadata/generated/schema/configuration/dataQualityConfiguration.py +1 -1
  135. metadata/generated/schema/configuration/elasticSearchConfiguration.py +1 -1
  136. metadata/generated/schema/configuration/eventHandlerConfiguration.py +1 -1
  137. metadata/generated/schema/configuration/fernetConfiguration.py +1 -1
  138. metadata/generated/schema/configuration/jwtTokenConfiguration.py +1 -1
  139. metadata/generated/schema/configuration/kafkaEventConfiguration.py +1 -1
  140. metadata/generated/schema/configuration/ldapConfiguration.py +1 -1
  141. metadata/generated/schema/configuration/ldapTrustStoreConfig/__init__.py +1 -1
  142. metadata/generated/schema/configuration/ldapTrustStoreConfig/customTrustManagerConfig.py +1 -1
  143. metadata/generated/schema/configuration/ldapTrustStoreConfig/hostNameConfig.py +1 -1
  144. metadata/generated/schema/configuration/ldapTrustStoreConfig/jvmDefaultConfig.py +1 -1
  145. metadata/generated/schema/configuration/ldapTrustStoreConfig/trustAllConfig.py +1 -1
  146. metadata/generated/schema/configuration/ldapTrustStoreConfig/truststoreConfig.py +1 -1
  147. metadata/generated/schema/configuration/limitsConfiguration.py +1 -1
  148. metadata/generated/schema/configuration/lineageSettings.py +1 -1
  149. metadata/generated/schema/configuration/loginConfiguration.py +1 -1
  150. metadata/generated/schema/configuration/logoConfiguration.py +1 -1
  151. metadata/generated/schema/configuration/pipelineServiceClientConfiguration.py +1 -1
  152. metadata/generated/schema/configuration/profilerConfiguration.py +1 -1
  153. metadata/generated/schema/configuration/searchSettings.py +1 -1
  154. metadata/generated/schema/configuration/slackAppConfiguration.py +1 -1
  155. metadata/generated/schema/configuration/taskNotificationConfiguration.py +1 -1
  156. metadata/generated/schema/configuration/testResultNotificationConfiguration.py +1 -1
  157. metadata/generated/schema/configuration/themeConfiguration.py +1 -1
  158. metadata/generated/schema/configuration/uiThemePreference.py +1 -1
  159. metadata/generated/schema/configuration/workflowSettings.py +1 -1
  160. metadata/generated/schema/dataInsight/__init__.py +1 -1
  161. metadata/generated/schema/dataInsight/custom/__init__.py +1 -1
  162. metadata/generated/schema/dataInsight/custom/dataInsightCustomChart.py +1 -1
  163. metadata/generated/schema/dataInsight/custom/dataInsightCustomChartResult.py +1 -1
  164. metadata/generated/schema/dataInsight/custom/dataInsightCustomChartResultList.py +1 -1
  165. metadata/generated/schema/dataInsight/custom/formulaHolder.py +1 -1
  166. metadata/generated/schema/dataInsight/custom/lineChart.py +1 -1
  167. metadata/generated/schema/dataInsight/custom/summaryCard.py +1 -1
  168. metadata/generated/schema/dataInsight/dataInsightChart.py +1 -1
  169. metadata/generated/schema/dataInsight/dataInsightChartResult.py +1 -1
  170. metadata/generated/schema/dataInsight/kpi/__init__.py +1 -1
  171. metadata/generated/schema/dataInsight/kpi/basic.py +1 -1
  172. metadata/generated/schema/dataInsight/kpi/kpi.py +1 -1
  173. metadata/generated/schema/dataInsight/type/__init__.py +1 -1
  174. metadata/generated/schema/dataInsight/type/aggregatedUnusedAssetsCount.py +1 -1
  175. metadata/generated/schema/dataInsight/type/aggregatedUnusedAssetsSize.py +1 -1
  176. metadata/generated/schema/dataInsight/type/aggregatedUsedVsUnusedAssetsCount.py +1 -1
  177. metadata/generated/schema/dataInsight/type/aggregatedUsedVsUnusedAssetsSize.py +1 -1
  178. metadata/generated/schema/dataInsight/type/dailyActiveUsers.py +1 -1
  179. metadata/generated/schema/dataInsight/type/mostActiveUsers.py +1 -1
  180. metadata/generated/schema/dataInsight/type/mostViewedEntities.py +1 -1
  181. metadata/generated/schema/dataInsight/type/pageViewsByEntities.py +1 -1
  182. metadata/generated/schema/dataInsight/type/unusedAssets.py +1 -1
  183. metadata/generated/schema/email/__init__.py +1 -1
  184. metadata/generated/schema/email/emailRequest.py +1 -1
  185. metadata/generated/schema/email/emailTemplate.py +1 -1
  186. metadata/generated/schema/email/emailTemplatePlaceholder.py +1 -1
  187. metadata/generated/schema/email/smtpSettings.py +1 -1
  188. metadata/generated/schema/email/templateValidationReponse.py +1 -1
  189. metadata/generated/schema/entity/__init__.py +1 -1
  190. metadata/generated/schema/entity/applications/__init__.py +1 -1
  191. metadata/generated/schema/entity/applications/app.py +1 -1
  192. metadata/generated/schema/entity/applications/appExtension.py +1 -1
  193. metadata/generated/schema/entity/applications/appRunRecord.py +3 -1
  194. metadata/generated/schema/entity/applications/configuration/__init__.py +1 -1
  195. metadata/generated/schema/entity/applications/configuration/applicationConfig.py +1 -1
  196. metadata/generated/schema/entity/applications/configuration/external/__init__.py +1 -1
  197. metadata/generated/schema/entity/applications/configuration/external/automator/__init__.py +1 -1
  198. metadata/generated/schema/entity/applications/configuration/external/automator/addCustomProperties.py +1 -1
  199. metadata/generated/schema/entity/applications/configuration/external/automator/addDescriptionAction.py +1 -1
  200. metadata/generated/schema/entity/applications/configuration/external/automator/addDomainAction.py +1 -1
  201. metadata/generated/schema/entity/applications/configuration/external/automator/addOwnerAction.py +1 -1
  202. metadata/generated/schema/entity/applications/configuration/external/automator/addTagsAction.py +1 -1
  203. metadata/generated/schema/entity/applications/configuration/external/automator/addTierAction.py +1 -1
  204. metadata/generated/schema/entity/applications/configuration/external/automator/lineagePropagationAction.py +1 -1
  205. metadata/generated/schema/entity/applications/configuration/external/automator/mlTaggingAction.py +1 -1
  206. metadata/generated/schema/entity/applications/configuration/external/automator/removeCustomPropertiesAction.py +1 -1
  207. metadata/generated/schema/entity/applications/configuration/external/automator/removeDescriptionAction.py +10 -2
  208. metadata/generated/schema/entity/applications/configuration/external/automator/removeDomainAction.py +1 -1
  209. metadata/generated/schema/entity/applications/configuration/external/automator/removeOwnerAction.py +1 -1
  210. metadata/generated/schema/entity/applications/configuration/external/automator/removeTagsAction.py +23 -3
  211. metadata/generated/schema/entity/applications/configuration/external/automator/removeTierAction.py +1 -1
  212. metadata/generated/schema/entity/applications/configuration/external/automatorAppConfig.py +1 -1
  213. metadata/generated/schema/entity/applications/configuration/external/collateAIAppConfig.py +1 -1
  214. metadata/generated/schema/entity/applications/configuration/external/slackAppTokenConfiguration.py +1 -1
  215. metadata/generated/schema/entity/applications/configuration/internal/__init__.py +1 -1
  216. metadata/generated/schema/entity/applications/configuration/internal/dataInsightsAppConfig.py +1 -1
  217. metadata/generated/schema/entity/applications/configuration/internal/dataInsightsReportAppConfig.py +1 -1
  218. metadata/generated/schema/entity/applications/configuration/internal/dataRetentionConfiguration.py +1 -1
  219. metadata/generated/schema/entity/applications/configuration/internal/searchIndexingAppConfig.py +1 -1
  220. metadata/generated/schema/entity/applications/configuration/private/external/__init__.py +1 -1
  221. metadata/generated/schema/entity/applications/configuration/private/external/collateAIAppPrivateConfig.py +1 -1
  222. metadata/generated/schema/entity/applications/createAppRequest.py +1 -1
  223. metadata/generated/schema/entity/applications/jobStatus.py +1 -1
  224. metadata/generated/schema/entity/applications/liveExecutionContext.py +1 -1
  225. metadata/generated/schema/entity/applications/marketplace/__init__.py +1 -1
  226. metadata/generated/schema/entity/applications/marketplace/appMarketPlaceDefinition.py +1 -1
  227. metadata/generated/schema/entity/applications/marketplace/createAppMarketPlaceDefinitionReq.py +1 -1
  228. metadata/generated/schema/entity/applications/scheduledExecutionContext.py +1 -1
  229. metadata/generated/schema/entity/automations/__init__.py +1 -1
  230. metadata/generated/schema/entity/automations/testServiceConnection.py +1 -1
  231. metadata/generated/schema/entity/automations/workflow.py +1 -1
  232. metadata/generated/schema/entity/bot.py +1 -1
  233. metadata/generated/schema/entity/classification/__init__.py +1 -1
  234. metadata/generated/schema/entity/classification/classification.py +1 -1
  235. metadata/generated/schema/entity/classification/tag.py +1 -1
  236. metadata/generated/schema/entity/data/__init__.py +1 -1
  237. metadata/generated/schema/entity/data/apiCollection.py +1 -1
  238. metadata/generated/schema/entity/data/apiEndpoint.py +1 -1
  239. metadata/generated/schema/entity/data/chart.py +1 -1
  240. metadata/generated/schema/entity/data/container.py +1 -1
  241. metadata/generated/schema/entity/data/dashboard.py +1 -1
  242. metadata/generated/schema/entity/data/dashboardDataModel.py +1 -1
  243. metadata/generated/schema/entity/data/database.py +1 -1
  244. metadata/generated/schema/entity/data/databaseSchema.py +1 -1
  245. metadata/generated/schema/entity/data/glossary.py +1 -1
  246. metadata/generated/schema/entity/data/glossaryTerm.py +1 -1
  247. metadata/generated/schema/entity/data/metric.py +1 -1
  248. metadata/generated/schema/entity/data/mlmodel.py +1 -1
  249. metadata/generated/schema/entity/data/pipeline.py +1 -1
  250. metadata/generated/schema/entity/data/query.py +1 -1
  251. metadata/generated/schema/entity/data/report.py +1 -1
  252. metadata/generated/schema/entity/data/searchIndex.py +1 -1
  253. metadata/generated/schema/entity/data/storedProcedure.py +1 -1
  254. metadata/generated/schema/entity/data/table.py +2 -1
  255. metadata/generated/schema/entity/data/topic.py +1 -1
  256. metadata/generated/schema/entity/docStore/__init__.py +1 -1
  257. metadata/generated/schema/entity/docStore/document.py +1 -1
  258. metadata/generated/schema/entity/domains/__init__.py +1 -1
  259. metadata/generated/schema/entity/domains/dataProduct.py +1 -1
  260. metadata/generated/schema/entity/domains/domain.py +1 -1
  261. metadata/generated/schema/entity/events/__init__.py +1 -1
  262. metadata/generated/schema/entity/events/webhook.py +1 -1
  263. metadata/generated/schema/entity/feed/__init__.py +1 -1
  264. metadata/generated/schema/entity/feed/assets.py +1 -1
  265. metadata/generated/schema/entity/feed/customProperty.py +1 -1
  266. metadata/generated/schema/entity/feed/description.py +1 -1
  267. metadata/generated/schema/entity/feed/domain.py +1 -1
  268. metadata/generated/schema/entity/feed/entityInfo.py +1 -1
  269. metadata/generated/schema/entity/feed/owner.py +1 -1
  270. metadata/generated/schema/entity/feed/suggestion.py +1 -1
  271. metadata/generated/schema/entity/feed/tag.py +1 -1
  272. metadata/generated/schema/entity/feed/testCaseResult.py +1 -1
  273. metadata/generated/schema/entity/feed/thread.py +1 -1
  274. metadata/generated/schema/entity/policies/__init__.py +1 -1
  275. metadata/generated/schema/entity/policies/accessControl/__init__.py +1 -1
  276. metadata/generated/schema/entity/policies/accessControl/resourceDescriptor.py +1 -1
  277. metadata/generated/schema/entity/policies/accessControl/resourcePermission.py +1 -1
  278. metadata/generated/schema/entity/policies/accessControl/rule.py +1 -1
  279. metadata/generated/schema/entity/policies/filters.py +1 -1
  280. metadata/generated/schema/entity/policies/policy.py +1 -1
  281. metadata/generated/schema/entity/services/__init__.py +1 -1
  282. metadata/generated/schema/entity/services/apiService.py +1 -1
  283. metadata/generated/schema/entity/services/connections/__init__.py +1 -1
  284. metadata/generated/schema/entity/services/connections/api/__init__.py +1 -1
  285. metadata/generated/schema/entity/services/connections/api/restConnection.py +1 -1
  286. metadata/generated/schema/entity/services/connections/common/__init__.py +1 -1
  287. metadata/generated/schema/entity/services/connections/common/sslCertPaths.py +1 -1
  288. metadata/generated/schema/entity/services/connections/common/sslCertValues.py +1 -1
  289. metadata/generated/schema/entity/services/connections/common/sslConfig.py +1 -1
  290. metadata/generated/schema/entity/services/connections/connectionBasicType.py +1 -1
  291. metadata/generated/schema/entity/services/connections/dashboard/__init__.py +1 -1
  292. metadata/generated/schema/entity/services/connections/dashboard/customDashboardConnection.py +1 -1
  293. metadata/generated/schema/entity/services/connections/dashboard/domoDashboardConnection.py +1 -1
  294. metadata/generated/schema/entity/services/connections/dashboard/lightdashConnection.py +1 -1
  295. metadata/generated/schema/entity/services/connections/dashboard/lookerConnection.py +1 -1
  296. metadata/generated/schema/entity/services/connections/dashboard/metabaseConnection.py +1 -1
  297. metadata/generated/schema/entity/services/connections/dashboard/microStrategyConnection.py +1 -1
  298. metadata/generated/schema/entity/services/connections/dashboard/modeConnection.py +1 -1
  299. metadata/generated/schema/entity/services/connections/dashboard/powerBIConnection.py +1 -1
  300. metadata/generated/schema/entity/services/connections/dashboard/powerBIReportServerConnection.py +1 -1
  301. metadata/generated/schema/entity/services/connections/dashboard/powerbi/__init__.py +1 -1
  302. metadata/generated/schema/entity/services/connections/dashboard/powerbi/azureConfig.py +1 -1
  303. metadata/generated/schema/entity/services/connections/dashboard/powerbi/bucketDetails.py +1 -1
  304. metadata/generated/schema/entity/services/connections/dashboard/powerbi/gcsConfig.py +1 -1
  305. metadata/generated/schema/entity/services/connections/dashboard/powerbi/s3Config.py +1 -1
  306. metadata/generated/schema/entity/services/connections/dashboard/qlikCloudConnection.py +1 -1
  307. metadata/generated/schema/entity/services/connections/dashboard/qlikSenseConnection.py +1 -1
  308. metadata/generated/schema/entity/services/connections/dashboard/quickSightConnection.py +1 -1
  309. metadata/generated/schema/entity/services/connections/dashboard/redashConnection.py +1 -1
  310. metadata/generated/schema/entity/services/connections/dashboard/sigmaConnection.py +1 -1
  311. metadata/generated/schema/entity/services/connections/dashboard/supersetConnection.py +1 -1
  312. metadata/generated/schema/entity/services/connections/dashboard/tableauConnection.py +1 -1
  313. metadata/generated/schema/entity/services/connections/database/__init__.py +1 -1
  314. metadata/generated/schema/entity/services/connections/database/athenaConnection.py +1 -1
  315. metadata/generated/schema/entity/services/connections/database/azureSQLConnection.py +1 -1
  316. metadata/generated/schema/entity/services/connections/database/bigQueryConnection.py +1 -1
  317. metadata/generated/schema/entity/services/connections/database/bigTableConnection.py +1 -1
  318. metadata/generated/schema/entity/services/connections/database/clickhouseConnection.py +1 -1
  319. metadata/generated/schema/entity/services/connections/database/common/__init__.py +1 -1
  320. metadata/generated/schema/entity/services/connections/database/common/azureConfig.py +1 -1
  321. metadata/generated/schema/entity/services/connections/database/common/basicAuth.py +1 -1
  322. metadata/generated/schema/entity/services/connections/database/common/iamAuthConfig.py +1 -1
  323. metadata/generated/schema/entity/services/connections/database/common/jwtAuth.py +1 -1
  324. metadata/generated/schema/entity/services/connections/database/common/noConfigAuthenticationTypes.py +1 -1
  325. metadata/generated/schema/entity/services/connections/database/couchbaseConnection.py +1 -1
  326. metadata/generated/schema/entity/services/connections/database/customDatabaseConnection.py +1 -1
  327. metadata/generated/schema/entity/services/connections/database/databricksConnection.py +9 -1
  328. metadata/generated/schema/entity/services/connections/database/datalake/__init__.py +1 -1
  329. metadata/generated/schema/entity/services/connections/database/datalake/azureConfig.py +1 -1
  330. metadata/generated/schema/entity/services/connections/database/datalake/gcsConfig.py +1 -1
  331. metadata/generated/schema/entity/services/connections/database/datalake/s3Config.py +1 -1
  332. metadata/generated/schema/entity/services/connections/database/datalakeConnection.py +1 -1
  333. metadata/generated/schema/entity/services/connections/database/db2Connection.py +1 -1
  334. metadata/generated/schema/entity/services/connections/database/deltaLakeConnection.py +1 -1
  335. metadata/generated/schema/entity/services/connections/database/deltalake/__init__.py +1 -1
  336. metadata/generated/schema/entity/services/connections/database/deltalake/metastoreConfig.py +1 -1
  337. metadata/generated/schema/entity/services/connections/database/deltalake/storageConfig.py +1 -1
  338. metadata/generated/schema/entity/services/connections/database/domoDatabaseConnection.py +1 -1
  339. metadata/generated/schema/entity/services/connections/database/dorisConnection.py +1 -1
  340. metadata/generated/schema/entity/services/connections/database/druidConnection.py +1 -1
  341. metadata/generated/schema/entity/services/connections/database/dynamoDBConnection.py +1 -1
  342. metadata/generated/schema/entity/services/connections/database/exasolConnection.py +1 -1
  343. metadata/generated/schema/entity/services/connections/database/glueConnection.py +1 -1
  344. metadata/generated/schema/entity/services/connections/database/greenplumConnection.py +1 -1
  345. metadata/generated/schema/entity/services/connections/database/hiveConnection.py +1 -1
  346. metadata/generated/schema/entity/services/connections/database/iceberg/__init__.py +1 -1
  347. metadata/generated/schema/entity/services/connections/database/iceberg/dynamoDbCatalogConnection.py +1 -1
  348. metadata/generated/schema/entity/services/connections/database/iceberg/glueCatalogConnection.py +1 -1
  349. metadata/generated/schema/entity/services/connections/database/iceberg/hiveCatalogConnection.py +1 -1
  350. metadata/generated/schema/entity/services/connections/database/iceberg/icebergCatalog.py +1 -1
  351. metadata/generated/schema/entity/services/connections/database/iceberg/icebergFileSystem.py +1 -1
  352. metadata/generated/schema/entity/services/connections/database/iceberg/restCatalogConnection.py +1 -1
  353. metadata/generated/schema/entity/services/connections/database/icebergConnection.py +1 -1
  354. metadata/generated/schema/entity/services/connections/database/impalaConnection.py +1 -1
  355. metadata/generated/schema/entity/services/connections/database/mariaDBConnection.py +1 -1
  356. metadata/generated/schema/entity/services/connections/database/mongoDBConnection.py +1 -1
  357. metadata/generated/schema/entity/services/connections/database/mssqlConnection.py +1 -1
  358. metadata/generated/schema/entity/services/connections/database/mysqlConnection.py +1 -1
  359. metadata/generated/schema/entity/services/connections/database/oracleConnection.py +1 -1
  360. metadata/generated/schema/entity/services/connections/database/pinotDBConnection.py +1 -1
  361. metadata/generated/schema/entity/services/connections/database/postgresConnection.py +1 -1
  362. metadata/generated/schema/entity/services/connections/database/prestoConnection.py +1 -1
  363. metadata/generated/schema/entity/services/connections/database/redshiftConnection.py +1 -1
  364. metadata/generated/schema/entity/services/connections/database/salesforceConnection.py +1 -1
  365. metadata/generated/schema/entity/services/connections/database/sapErpConnection.py +1 -1
  366. metadata/generated/schema/entity/services/connections/database/sapHana/__init__.py +1 -1
  367. metadata/generated/schema/entity/services/connections/database/sapHana/sapHanaHDBConnection.py +1 -1
  368. metadata/generated/schema/entity/services/connections/database/sapHana/sapHanaSQLConnection.py +1 -1
  369. metadata/generated/schema/entity/services/connections/database/sapHanaConnection.py +1 -1
  370. metadata/generated/schema/entity/services/connections/database/sasConnection.py +1 -1
  371. metadata/generated/schema/entity/services/connections/database/singleStoreConnection.py +1 -1
  372. metadata/generated/schema/entity/services/connections/database/snowflakeConnection.py +9 -1
  373. metadata/generated/schema/entity/services/connections/database/sqliteConnection.py +1 -1
  374. metadata/generated/schema/entity/services/connections/database/synapseConnection.py +1 -1
  375. metadata/generated/schema/entity/services/connections/database/teradataConnection.py +1 -1
  376. metadata/generated/schema/entity/services/connections/database/trinoConnection.py +1 -1
  377. metadata/generated/schema/entity/services/connections/database/unityCatalogConnection.py +1 -1
  378. metadata/generated/schema/entity/services/connections/database/verticaConnection.py +1 -1
  379. metadata/generated/schema/entity/services/connections/messaging/__init__.py +1 -1
  380. metadata/generated/schema/entity/services/connections/messaging/customMessagingConnection.py +1 -1
  381. metadata/generated/schema/entity/services/connections/messaging/kafkaConnection.py +1 -1
  382. metadata/generated/schema/entity/services/connections/messaging/kinesisConnection.py +1 -1
  383. metadata/generated/schema/entity/services/connections/messaging/pulsarConnection.py +1 -1
  384. metadata/generated/schema/entity/services/connections/messaging/redpandaConnection.py +1 -1
  385. metadata/generated/schema/entity/services/connections/messaging/saslMechanismType.py +1 -1
  386. metadata/generated/schema/entity/services/connections/metadata/__init__.py +1 -1
  387. metadata/generated/schema/entity/services/connections/metadata/alationConnection.py +1 -1
  388. metadata/generated/schema/entity/services/connections/metadata/alationSinkConnection.py +1 -1
  389. metadata/generated/schema/entity/services/connections/metadata/amundsenConnection.py +1 -1
  390. metadata/generated/schema/entity/services/connections/metadata/atlasConnection.py +1 -1
  391. metadata/generated/schema/entity/services/connections/metadata/metadataESConnection.py +1 -1
  392. metadata/generated/schema/entity/services/connections/metadata/openMetadataConnection.py +1 -1
  393. metadata/generated/schema/entity/services/connections/mlmodel/__init__.py +1 -1
  394. metadata/generated/schema/entity/services/connections/mlmodel/customMlModelConnection.py +1 -1
  395. metadata/generated/schema/entity/services/connections/mlmodel/mlflowConnection.py +1 -1
  396. metadata/generated/schema/entity/services/connections/mlmodel/sageMakerConnection.py +1 -1
  397. metadata/generated/schema/entity/services/connections/mlmodel/sklearnConnection.py +1 -1
  398. metadata/generated/schema/entity/services/connections/mlmodel/vertexaiConnection.py +1 -1
  399. metadata/generated/schema/entity/services/connections/pipeline/__init__.py +1 -1
  400. metadata/generated/schema/entity/services/connections/pipeline/airbyteConnection.py +1 -1
  401. metadata/generated/schema/entity/services/connections/pipeline/airflowConnection.py +1 -1
  402. metadata/generated/schema/entity/services/connections/pipeline/backendConnection.py +1 -1
  403. metadata/generated/schema/entity/services/connections/pipeline/customPipelineConnection.py +1 -1
  404. metadata/generated/schema/entity/services/connections/pipeline/dagsterConnection.py +1 -1
  405. metadata/generated/schema/entity/services/connections/pipeline/databricksPipelineConnection.py +1 -1
  406. metadata/generated/schema/entity/services/connections/pipeline/datafactoryConnection.py +1 -1
  407. metadata/generated/schema/entity/services/connections/pipeline/dbtCloudConnection.py +1 -1
  408. metadata/generated/schema/entity/services/connections/pipeline/domoPipelineConnection.py +1 -1
  409. metadata/generated/schema/entity/services/connections/pipeline/fivetranConnection.py +1 -1
  410. metadata/generated/schema/entity/services/connections/pipeline/flinkConnection.py +1 -1
  411. metadata/generated/schema/entity/services/connections/pipeline/gluePipelineConnection.py +1 -1
  412. metadata/generated/schema/entity/services/connections/pipeline/kafkaConnectConnection.py +1 -1
  413. metadata/generated/schema/entity/services/connections/pipeline/matillion/__init__.py +3 -0
  414. metadata/generated/schema/entity/services/connections/pipeline/matillion/matillionETL.py +39 -0
  415. metadata/generated/schema/entity/services/connections/pipeline/matillionConnection.py +4 -25
  416. metadata/generated/schema/entity/services/connections/pipeline/nifi/__init__.py +3 -0
  417. metadata/generated/schema/entity/services/connections/pipeline/nifi/basicAuth.py +40 -0
  418. metadata/generated/schema/entity/services/connections/pipeline/nifi/clientCertificateAuth.py +38 -0
  419. metadata/generated/schema/entity/services/connections/pipeline/nifiConnection.py +3 -2
  420. metadata/generated/schema/entity/services/connections/pipeline/openLineageConnection.py +1 -1
  421. metadata/generated/schema/entity/services/connections/pipeline/sparkConnection.py +1 -1
  422. metadata/generated/schema/entity/services/connections/pipeline/splineConnection.py +1 -1
  423. metadata/generated/schema/entity/services/connections/pipeline/stitchConnection.py +1 -1
  424. metadata/generated/schema/entity/services/connections/search/__init__.py +1 -1
  425. metadata/generated/schema/entity/services/connections/search/customSearchConnection.py +1 -1
  426. metadata/generated/schema/entity/services/connections/search/elasticSearch/__init__.py +1 -1
  427. metadata/generated/schema/entity/services/connections/search/elasticSearch/apiAuth.py +1 -1
  428. metadata/generated/schema/entity/services/connections/search/elasticSearch/basicAuth.py +1 -1
  429. metadata/generated/schema/entity/services/connections/search/elasticSearchConnection.py +1 -1
  430. metadata/generated/schema/entity/services/connections/search/openSearchConnection.py +1 -1
  431. metadata/generated/schema/entity/services/connections/serviceConnection.py +1 -1
  432. metadata/generated/schema/entity/services/connections/storage/__init__.py +1 -1
  433. metadata/generated/schema/entity/services/connections/storage/adlsConnection.py +1 -1
  434. metadata/generated/schema/entity/services/connections/storage/customStorageConnection.py +1 -1
  435. metadata/generated/schema/entity/services/connections/storage/gcsConnection.py +1 -1
  436. metadata/generated/schema/entity/services/connections/storage/s3Connection.py +1 -1
  437. metadata/generated/schema/entity/services/connections/testConnectionDefinition.py +1 -1
  438. metadata/generated/schema/entity/services/connections/testConnectionResult.py +1 -1
  439. metadata/generated/schema/entity/services/dashboardService.py +1 -1
  440. metadata/generated/schema/entity/services/databaseService.py +1 -1
  441. metadata/generated/schema/entity/services/ingestionPipelines/__init__.py +1 -1
  442. metadata/generated/schema/entity/services/ingestionPipelines/ingestionPipeline.py +7 -1
  443. metadata/generated/schema/entity/services/ingestionPipelines/pipelineServiceClientResponse.py +1 -1
  444. metadata/generated/schema/entity/services/ingestionPipelines/status.py +1 -1
  445. metadata/generated/schema/entity/services/messagingService.py +1 -1
  446. metadata/generated/schema/entity/services/metadataService.py +1 -1
  447. metadata/generated/schema/entity/services/mlmodelService.py +1 -1
  448. metadata/generated/schema/entity/services/pipelineService.py +1 -1
  449. metadata/generated/schema/entity/services/searchService.py +1 -1
  450. metadata/generated/schema/entity/services/serviceType.py +1 -1
  451. metadata/generated/schema/entity/services/storageService.py +1 -1
  452. metadata/generated/schema/entity/teams/__init__.py +1 -1
  453. metadata/generated/schema/entity/teams/persona.py +1 -1
  454. metadata/generated/schema/entity/teams/role.py +1 -1
  455. metadata/generated/schema/entity/teams/team.py +1 -1
  456. metadata/generated/schema/entity/teams/teamHierarchy.py +1 -1
  457. metadata/generated/schema/entity/teams/user.py +1 -1
  458. metadata/generated/schema/entity/type.py +1 -1
  459. metadata/generated/schema/entity/utils/__init__.py +1 -1
  460. metadata/generated/schema/entity/utils/entitiesCount.py +1 -1
  461. metadata/generated/schema/entity/utils/servicesCount.py +1 -1
  462. metadata/generated/schema/entity/utils/supersetApiConnection.py +1 -1
  463. metadata/generated/schema/events/__init__.py +1 -1
  464. metadata/generated/schema/events/alertMetrics.py +1 -1
  465. metadata/generated/schema/events/api/__init__.py +1 -1
  466. metadata/generated/schema/events/api/createEventSubscription.py +1 -1
  467. metadata/generated/schema/events/api/eventSubscriptionDiagnosticInfo.py +1 -1
  468. metadata/generated/schema/events/api/eventsRecord.py +1 -1
  469. metadata/generated/schema/events/api/testEventSubscriptionDestination.py +1 -1
  470. metadata/generated/schema/events/api/typedEvent.py +1 -1
  471. metadata/generated/schema/events/emailAlertConfig.py +1 -1
  472. metadata/generated/schema/events/eventFilterRule.py +1 -1
  473. metadata/generated/schema/events/eventSubscription.py +1 -1
  474. metadata/generated/schema/events/eventSubscriptionOffset.py +1 -1
  475. metadata/generated/schema/events/failedEvent.py +1 -1
  476. metadata/generated/schema/events/failedEventResponse.py +1 -1
  477. metadata/generated/schema/events/filterResourceDescriptor.py +1 -1
  478. metadata/generated/schema/events/statusContext.py +1 -1
  479. metadata/generated/schema/events/subscriptionResourceDescriptor.py +1 -1
  480. metadata/generated/schema/events/subscriptionStatus.py +1 -1
  481. metadata/generated/schema/events/testDestinationStatus.py +1 -1
  482. metadata/generated/schema/governance/workflows/__init__.py +1 -1
  483. metadata/generated/schema/governance/workflows/elements/__init__.py +1 -1
  484. metadata/generated/schema/governance/workflows/elements/edge.py +1 -1
  485. metadata/generated/schema/governance/workflows/elements/nodeSubType.py +1 -1
  486. metadata/generated/schema/governance/workflows/elements/nodeType.py +1 -1
  487. metadata/generated/schema/governance/workflows/elements/nodes/__init__.py +1 -1
  488. metadata/generated/schema/governance/workflows/elements/nodes/automatedTask/__init__.py +1 -1
  489. metadata/generated/schema/governance/workflows/elements/nodes/automatedTask/checkEntityAttributesTask.py +1 -1
  490. metadata/generated/schema/governance/workflows/elements/nodes/automatedTask/setEntityCertificationTask.py +1 -1
  491. metadata/generated/schema/governance/workflows/elements/nodes/automatedTask/setGlossaryTermStatusTask.py +1 -1
  492. metadata/generated/schema/governance/workflows/elements/nodes/endEvent/__init__.py +1 -1
  493. metadata/generated/schema/governance/workflows/elements/nodes/endEvent/endEvent.py +1 -1
  494. metadata/generated/schema/governance/workflows/elements/nodes/startEvent/__init__.py +1 -1
  495. metadata/generated/schema/governance/workflows/elements/nodes/startEvent/startEvent.py +1 -1
  496. metadata/generated/schema/governance/workflows/elements/nodes/userTask/__init__.py +1 -1
  497. metadata/generated/schema/governance/workflows/elements/nodes/userTask/userApprovalTask.py +1 -1
  498. metadata/generated/schema/governance/workflows/elements/triggers/__init__.py +1 -1
  499. metadata/generated/schema/governance/workflows/elements/triggers/eventBasedEntityTrigger.py +1 -1
  500. metadata/generated/schema/governance/workflows/elements/triggers/periodicBatchEntityTrigger.py +1 -1
  501. metadata/generated/schema/governance/workflows/workflowDefinition.py +1 -1
  502. metadata/generated/schema/governance/workflows/workflowInstance.py +1 -1
  503. metadata/generated/schema/governance/workflows/workflowInstanceState.py +1 -1
  504. metadata/generated/schema/jobs/__init__.py +1 -1
  505. metadata/generated/schema/jobs/backgroundJob.py +1 -1
  506. metadata/generated/schema/jobs/enumCleanupArgs.py +1 -1
  507. metadata/generated/schema/metadataIngestion/__init__.py +1 -1
  508. metadata/generated/schema/metadataIngestion/apiServiceMetadataPipeline.py +1 -1
  509. metadata/generated/schema/metadataIngestion/application.py +1 -1
  510. metadata/generated/schema/metadataIngestion/applicationPipeline.py +1 -1
  511. metadata/generated/schema/metadataIngestion/dashboardServiceMetadataPipeline.py +1 -1
  512. metadata/generated/schema/metadataIngestion/dataInsightPipeline.py +1 -1
  513. metadata/generated/schema/metadataIngestion/databaseServiceAutoClassificationPipeline.py +1 -1
  514. metadata/generated/schema/metadataIngestion/databaseServiceMetadataPipeline.py +1 -1
  515. metadata/generated/schema/metadataIngestion/databaseServiceProfilerPipeline.py +1 -1
  516. metadata/generated/schema/metadataIngestion/databaseServiceQueryLineagePipeline.py +9 -1
  517. metadata/generated/schema/metadataIngestion/databaseServiceQueryUsagePipeline.py +1 -1
  518. metadata/generated/schema/metadataIngestion/dbtPipeline.py +1 -1
  519. metadata/generated/schema/metadataIngestion/dbtconfig/__init__.py +1 -1
  520. metadata/generated/schema/metadataIngestion/dbtconfig/dbtAzureConfig.py +1 -1
  521. metadata/generated/schema/metadataIngestion/dbtconfig/dbtBucketDetails.py +1 -1
  522. metadata/generated/schema/metadataIngestion/dbtconfig/dbtCloudConfig.py +1 -1
  523. metadata/generated/schema/metadataIngestion/dbtconfig/dbtGCSConfig.py +1 -1
  524. metadata/generated/schema/metadataIngestion/dbtconfig/dbtHttpConfig.py +1 -1
  525. metadata/generated/schema/metadataIngestion/dbtconfig/dbtLocalConfig.py +1 -1
  526. metadata/generated/schema/metadataIngestion/dbtconfig/dbtS3Config.py +1 -1
  527. metadata/generated/schema/metadataIngestion/messagingServiceMetadataPipeline.py +1 -1
  528. metadata/generated/schema/metadataIngestion/metadataToElasticSearchPipeline.py +1 -1
  529. metadata/generated/schema/metadataIngestion/mlmodelServiceMetadataPipeline.py +1 -1
  530. metadata/generated/schema/metadataIngestion/pipelineServiceMetadataPipeline.py +1 -1
  531. metadata/generated/schema/metadataIngestion/searchServiceMetadataPipeline.py +2 -2
  532. metadata/generated/schema/metadataIngestion/storage/__init__.py +1 -1
  533. metadata/generated/schema/metadataIngestion/storage/containerMetadataConfig.py +1 -1
  534. metadata/generated/schema/metadataIngestion/storage/manifestMetadataConfig.py +1 -1
  535. metadata/generated/schema/metadataIngestion/storage/storageBucketDetails.py +1 -1
  536. metadata/generated/schema/metadataIngestion/storage/storageMetadataADLSConfig.py +1 -1
  537. metadata/generated/schema/metadataIngestion/storage/storageMetadataGCSConfig.py +1 -1
  538. metadata/generated/schema/metadataIngestion/storage/storageMetadataHttpConfig.py +1 -1
  539. metadata/generated/schema/metadataIngestion/storage/storageMetadataLocalConfig.py +1 -1
  540. metadata/generated/schema/metadataIngestion/storage/storageMetadataS3Config.py +1 -1
  541. metadata/generated/schema/metadataIngestion/storageServiceMetadataPipeline.py +1 -1
  542. metadata/generated/schema/metadataIngestion/testSuitePipeline.py +1 -1
  543. metadata/generated/schema/metadataIngestion/workflow.py +1 -1
  544. metadata/generated/schema/monitoring/__init__.py +1 -1
  545. metadata/generated/schema/monitoring/eventMonitorProvider.py +1 -1
  546. metadata/generated/schema/security/__init__.py +1 -1
  547. metadata/generated/schema/security/client/__init__.py +1 -1
  548. metadata/generated/schema/security/client/auth0SSOClientConfig.py +1 -1
  549. metadata/generated/schema/security/client/azureSSOClientConfig.py +1 -1
  550. metadata/generated/schema/security/client/customOidcSSOClientConfig.py +1 -1
  551. metadata/generated/schema/security/client/googleSSOClientConfig.py +1 -1
  552. metadata/generated/schema/security/client/oidcClientConfig.py +1 -1
  553. metadata/generated/schema/security/client/oktaSSOClientConfig.py +1 -1
  554. metadata/generated/schema/security/client/openMetadataJWTClientConfig.py +1 -1
  555. metadata/generated/schema/security/client/samlSSOClientConfig.py +1 -1
  556. metadata/generated/schema/security/credentials/__init__.py +1 -1
  557. metadata/generated/schema/security/credentials/accessTokenAuth.py +1 -1
  558. metadata/generated/schema/security/credentials/apiAccessTokenAuth.py +1 -1
  559. metadata/generated/schema/security/credentials/awsCredentials.py +1 -1
  560. metadata/generated/schema/security/credentials/azureCredentials.py +1 -1
  561. metadata/generated/schema/security/credentials/basicAuth.py +1 -1
  562. metadata/generated/schema/security/credentials/bitbucketCredentials.py +1 -1
  563. metadata/generated/schema/security/credentials/gcpCredentials.py +1 -1
  564. metadata/generated/schema/security/credentials/gcpExternalAccount.py +1 -1
  565. metadata/generated/schema/security/credentials/gcpValues.py +1 -1
  566. metadata/generated/schema/security/credentials/gitCredentials.py +1 -1
  567. metadata/generated/schema/security/credentials/githubCredentials.py +1 -1
  568. metadata/generated/schema/security/credentials/gitlabCredentials.py +1 -1
  569. metadata/generated/schema/security/sasl/__init__.py +1 -1
  570. metadata/generated/schema/security/sasl/saslClientConfig.py +1 -1
  571. metadata/generated/schema/security/secrets/__init__.py +1 -1
  572. metadata/generated/schema/security/secrets/secretsManagerClientLoader.py +1 -1
  573. metadata/generated/schema/security/secrets/secretsManagerConfiguration.py +1 -1
  574. metadata/generated/schema/security/secrets/secretsManagerProvider.py +1 -1
  575. metadata/generated/schema/security/securityConfiguration.py +1 -1
  576. metadata/generated/schema/security/ssl/__init__.py +1 -1
  577. metadata/generated/schema/security/ssl/validateSSLClientConfig.py +1 -1
  578. metadata/generated/schema/security/ssl/verifySSLConfig.py +1 -1
  579. metadata/generated/schema/settings/__init__.py +1 -1
  580. metadata/generated/schema/settings/settings.py +1 -1
  581. metadata/generated/schema/system/__init__.py +1 -1
  582. metadata/generated/schema/system/entityError.py +1 -1
  583. metadata/generated/schema/system/eventPublisherJob.py +1 -1
  584. metadata/generated/schema/system/indexingError.py +1 -1
  585. metadata/generated/schema/system/limitsResponse.py +1 -1
  586. metadata/generated/schema/system/ui/__init__.py +1 -1
  587. metadata/generated/schema/system/ui/knowledgePanel.py +1 -1
  588. metadata/generated/schema/system/ui/page.py +1 -1
  589. metadata/generated/schema/system/validationResponse.py +1 -1
  590. metadata/generated/schema/tests/__init__.py +1 -1
  591. metadata/generated/schema/tests/assigned.py +1 -1
  592. metadata/generated/schema/tests/basic.py +20 -20
  593. metadata/generated/schema/tests/customMetric.py +1 -1
  594. metadata/generated/schema/tests/dataQualityReport.py +1 -1
  595. metadata/generated/schema/tests/resolved.py +1 -1
  596. metadata/generated/schema/tests/testCase.py +1 -1
  597. metadata/generated/schema/tests/testCaseResolutionStatus.py +1 -1
  598. metadata/generated/schema/tests/testDefinition.py +1 -1
  599. metadata/generated/schema/tests/testSuite.py +1 -1
  600. metadata/generated/schema/type/__init__.py +1 -1
  601. metadata/generated/schema/type/apiSchema.py +1 -1
  602. metadata/generated/schema/type/assetCertification.py +1 -1
  603. metadata/generated/schema/type/auditLog.py +1 -1
  604. metadata/generated/schema/type/basic.py +8 -1
  605. metadata/generated/schema/type/bulkOperationResult.py +1 -1
  606. metadata/generated/schema/type/changeEvent.py +1 -1
  607. metadata/generated/schema/type/changeEventType.py +1 -1
  608. metadata/generated/schema/type/collectionDescriptor.py +1 -1
  609. metadata/generated/schema/type/csvDocumentation.py +1 -1
  610. metadata/generated/schema/type/csvErrorType.py +1 -1
  611. metadata/generated/schema/type/csvFile.py +1 -1
  612. metadata/generated/schema/type/csvImportResult.py +1 -1
  613. metadata/generated/schema/type/customProperties/__init__.py +1 -1
  614. metadata/generated/schema/type/customProperties/complexTypes.py +1 -1
  615. metadata/generated/schema/type/customProperties/enumConfig.py +1 -1
  616. metadata/generated/schema/type/customProperties/tableConfig.py +1 -1
  617. metadata/generated/schema/type/customProperty.py +1 -1
  618. metadata/generated/schema/type/dailyCount.py +1 -1
  619. metadata/generated/schema/type/databaseConnectionConfig.py +1 -1
  620. metadata/generated/schema/type/entityHierarchy.py +1 -1
  621. metadata/generated/schema/type/entityHistory.py +1 -1
  622. metadata/generated/schema/type/entityLineage.py +1 -1
  623. metadata/generated/schema/type/entityReference.py +1 -1
  624. metadata/generated/schema/type/entityReferenceList.py +1 -1
  625. metadata/generated/schema/type/entityRelationship.py +1 -1
  626. metadata/generated/schema/type/entityUsage.py +1 -1
  627. metadata/generated/schema/type/filterPattern.py +1 -1
  628. metadata/generated/schema/type/function.py +1 -1
  629. metadata/generated/schema/type/include.py +1 -1
  630. metadata/generated/schema/type/jdbcConnection.py +1 -1
  631. metadata/generated/schema/type/lifeCycle.py +1 -1
  632. metadata/generated/schema/type/paging.py +1 -1
  633. metadata/generated/schema/type/profile.py +1 -1
  634. metadata/generated/schema/type/queryParserData.py +1 -1
  635. metadata/generated/schema/type/reaction.py +1 -1
  636. metadata/generated/schema/type/schedule.py +1 -1
  637. metadata/generated/schema/type/schema.py +1 -1
  638. metadata/generated/schema/type/tableQuery.py +1 -1
  639. metadata/generated/schema/type/tableUsageCount.py +1 -1
  640. metadata/generated/schema/type/tagLabel.py +1 -1
  641. metadata/generated/schema/type/usageDetails.py +1 -1
  642. metadata/generated/schema/type/usageRequest.py +1 -1
  643. metadata/generated/schema/type/votes.py +1 -1
  644. metadata/ingestion/lineage/masker.py +1 -1
  645. metadata/ingestion/lineage/models.py +1 -2
  646. metadata/ingestion/lineage/parser.py +2 -2
  647. metadata/ingestion/lineage/sql_lineage.py +111 -5
  648. metadata/ingestion/ometa/mixins/query_mixin.py +2 -0
  649. metadata/ingestion/ometa/routes.py +4 -0
  650. metadata/ingestion/source/api/rest/metadata.py +33 -24
  651. metadata/ingestion/source/dashboard/looker/metadata.py +115 -13
  652. metadata/ingestion/source/dashboard/powerbi/client.py +150 -35
  653. metadata/ingestion/source/database/bigquery/metadata.py +67 -2
  654. metadata/ingestion/source/database/databricks/connection.py +8 -3
  655. metadata/ingestion/source/database/databricks/lineage.py +12 -24
  656. metadata/ingestion/source/database/databricks/queries.py +24 -0
  657. metadata/ingestion/source/database/databricks/query_parser.py +11 -15
  658. metadata/ingestion/source/database/databricks/usage.py +7 -37
  659. metadata/ingestion/source/database/db2/connection.py +1 -1
  660. metadata/ingestion/source/database/db2/service_spec.py +1 -4
  661. metadata/ingestion/source/database/dbt/metadata.py +3 -1
  662. metadata/ingestion/source/database/druid/service_spec.py +1 -5
  663. metadata/ingestion/source/database/greenplum/service_spec.py +1 -5
  664. metadata/ingestion/source/database/hive/service_spec.py +1 -5
  665. metadata/ingestion/source/database/impala/service_spec.py +1 -5
  666. metadata/ingestion/source/database/lineage_source.py +12 -1
  667. metadata/ingestion/source/database/mariadb/service_spec.py +1 -9
  668. metadata/ingestion/source/database/pinotdb/service_spec.py +1 -5
  669. metadata/ingestion/source/database/postgres/usage.py +15 -0
  670. metadata/ingestion/source/database/query_parser_source.py +1 -0
  671. metadata/ingestion/source/database/redshift/metadata.py +31 -11
  672. metadata/ingestion/source/database/redshift/queries.py +5 -0
  673. metadata/ingestion/source/database/singlestore/service_spec.py +1 -6
  674. metadata/ingestion/source/database/snowflake/connection.py +10 -2
  675. metadata/ingestion/source/database/snowflake/lineage.py +3 -0
  676. metadata/ingestion/source/database/snowflake/metadata.py +3 -0
  677. metadata/ingestion/source/database/snowflake/queries.py +8 -8
  678. metadata/ingestion/source/database/snowflake/query_parser.py +1 -0
  679. metadata/ingestion/source/database/sqlite/service_spec.py +1 -5
  680. metadata/ingestion/source/database/teradata/service_spec.py +1 -5
  681. metadata/ingestion/source/database/trino/connection.py +13 -0
  682. metadata/ingestion/source/database/unitycatalog/lineage.py +56 -32
  683. metadata/ingestion/source/database/unitycatalog/query_parser.py +7 -0
  684. metadata/ingestion/source/database/unitycatalog/service_spec.py +4 -0
  685. metadata/ingestion/source/database/unitycatalog/usage.py +41 -2
  686. metadata/ingestion/source/database/usage_source.py +1 -1
  687. metadata/ingestion/source/pipeline/nifi/connection.py +4 -2
  688. metadata/profiler/interface/sqlalchemy/unity_catalog/sampler_interface.py +29 -0
  689. metadata/profiler/source/fetcher/config.py +4 -0
  690. metadata/profiler/source/fetcher/fetcher_strategy.py +19 -2
  691. metadata/sampler/sampler_interface.py +0 -3
  692. metadata/sampler/sqlalchemy/bigquery/sampler.py +1 -2
  693. metadata/sampler/sqlalchemy/sampler.py +22 -9
  694. {openmetadata_ingestion-1.6.3.2.dev0.dist-info → openmetadata_ingestion-1.6.4.0.dist-info}/METADATA +378 -359
  695. {openmetadata_ingestion-1.6.3.2.dev0.dist-info → openmetadata_ingestion-1.6.4.0.dist-info}/RECORD +699 -693
  696. {openmetadata_ingestion-1.6.3.2.dev0.dist-info → openmetadata_ingestion-1.6.4.0.dist-info}/LICENSE +0 -0
  697. {openmetadata_ingestion-1.6.3.2.dev0.dist-info → openmetadata_ingestion-1.6.4.0.dist-info}/WHEEL +0 -0
  698. {openmetadata_ingestion-1.6.3.2.dev0.dist-info → openmetadata_ingestion-1.6.4.0.dist-info}/entry_points.txt +0 -0
  699. {openmetadata_ingestion-1.6.3.2.dev0.dist-info → openmetadata_ingestion-1.6.4.0.dist-info}/top_level.txt +0 -0
@@ -34,9 +34,11 @@ from metadata.generated.schema.entity.data.database import Database
34
34
  from metadata.generated.schema.entity.data.databaseSchema import DatabaseSchema
35
35
  from metadata.generated.schema.entity.data.storedProcedure import StoredProcedureCode
36
36
  from metadata.generated.schema.entity.data.table import (
37
+ ConstraintType,
37
38
  PartitionColumnDetails,
38
39
  PartitionIntervalTypes,
39
40
  Table,
41
+ TableConstraint,
40
42
  TablePartition,
41
43
  TableType,
42
44
  )
@@ -96,6 +98,7 @@ from metadata.ingestion.source.database.life_cycle_query_mixin import (
96
98
  from metadata.ingestion.source.database.multi_db_source import MultiDBSource
97
99
  from metadata.utils import fqn
98
100
  from metadata.utils.credentials import GOOGLE_CREDENTIALS
101
+ from metadata.utils.execution_time_tracker import calculate_execution_time
99
102
  from metadata.utils.filters import filter_by_database, filter_by_schema
100
103
  from metadata.utils.logger import ingestion_logger
101
104
  from metadata.utils.sqlalchemy_utils import (
@@ -657,6 +660,42 @@ class BigquerySource(LifeCycleQueryMixin, CommonDbSourceService, MultiDBSource):
657
660
  )
658
661
  return None
659
662
 
663
+ @calculate_execution_time()
664
+ def update_table_constraints(
665
+ self,
666
+ table_name,
667
+ schema_name,
668
+ db_name,
669
+ table_constraints,
670
+ foreign_columns,
671
+ columns,
672
+ ) -> List[TableConstraint]:
673
+ """
674
+ From topology.
675
+ process the table constraints of all tables
676
+ """
677
+ table_constraints = super().update_table_constraints(
678
+ table_name,
679
+ schema_name,
680
+ db_name,
681
+ table_constraints,
682
+ foreign_columns,
683
+ columns,
684
+ )
685
+ try:
686
+ table = self.client.get_table(fqn._build(db_name, schema_name, table_name))
687
+ if hasattr(table, "clustering_fields") and table.clustering_fields:
688
+ table_constraints.append(
689
+ TableConstraint(
690
+ constraintType=ConstraintType.CLUSTER_KEY,
691
+ columns=table.clustering_fields,
692
+ )
693
+ )
694
+ except Exception as exc:
695
+ logger.warning(f"Error getting clustering fields for {table_name}: {exc}")
696
+ logger.debug(traceback.format_exc())
697
+ return table_constraints
698
+
660
699
  def get_table_partition_details(
661
700
  self, table_name: str, schema_name: str, inspector: Inspector
662
701
  ) -> Tuple[bool, Optional[TablePartition]]:
@@ -667,8 +706,10 @@ class BigquerySource(LifeCycleQueryMixin, CommonDbSourceService, MultiDBSource):
667
706
  database = self.context.get().database
668
707
  table = self.client.get_table(fqn._build(database, schema_name, table_name))
669
708
  columns = inspector.get_columns(table_name, schema_name, db_name=database)
670
- if hasattr(table, "external_data_configuration") and hasattr(
671
- table.external_data_configuration, "hive_partitioning"
709
+ if (
710
+ hasattr(table, "external_data_configuration")
711
+ and hasattr(table.external_data_configuration, "hive_partitioning")
712
+ and table.external_data_configuration.hive_partitioning
672
713
  ):
673
714
  # Ingesting External Hive Partitioned Tables
674
715
  from google.cloud.bigquery.external_config import ( # pylint: disable=import-outside-toplevel
@@ -733,6 +774,30 @@ class BigquerySource(LifeCycleQueryMixin, CommonDbSourceService, MultiDBSource):
733
774
  table_partition.interval = table.range_partitioning.range_.interval
734
775
  table_partition.columnName = table.range_partitioning.field
735
776
  return True, TablePartition(columns=[table_partition])
777
+ if (
778
+ hasattr(table, "_properties")
779
+ and table._properties.get("partitionDefinition")
780
+ and table._properties.get("partitionDefinition").get(
781
+ "partitionedColumn"
782
+ )
783
+ ):
784
+
785
+ return True, TablePartition(
786
+ columns=[
787
+ PartitionColumnDetails(
788
+ columnName=self._get_partition_column_name(
789
+ columns=columns,
790
+ partition_field_name=field.get("field"),
791
+ ),
792
+ intervalType=PartitionIntervalTypes.OTHER,
793
+ )
794
+ for field in table._properties.get("partitionDefinition").get(
795
+ "partitionedColumn"
796
+ )
797
+ if field and field.get("field")
798
+ ]
799
+ )
800
+
736
801
  except Exception as exc:
737
802
  logger.debug(traceback.format_exc())
738
803
  logger.warning(
@@ -38,9 +38,9 @@ from metadata.ingestion.connections.test_connections import (
38
38
  test_connection_steps,
39
39
  )
40
40
  from metadata.ingestion.ometa.ometa_api import OpenMetadata
41
- from metadata.ingestion.source.database.databricks.client import DatabricksClient
42
41
  from metadata.ingestion.source.database.databricks.queries import (
43
42
  DATABRICKS_GET_CATALOGS,
43
+ DATABRICKS_SQL_STATEMENT_TEST,
44
44
  )
45
45
  from metadata.utils.constants import THREE_MIN
46
46
  from metadata.utils.logger import ingestion_logger
@@ -81,7 +81,6 @@ def test_connection(
81
81
  Test connection. This can be executed either as part
82
82
  of a metadata workflow or during an Automation Workflow
83
83
  """
84
- client = DatabricksClient(service_connection)
85
84
 
86
85
  def test_database_query(engine: Engine, statement: str):
87
86
  """
@@ -106,7 +105,13 @@ def test_connection(
106
105
  engine=connection,
107
106
  statement=DATABRICKS_GET_CATALOGS,
108
107
  ),
109
- "GetQueries": client.test_query_api_access,
108
+ "GetQueries": partial(
109
+ test_database_query,
110
+ engine=connection,
111
+ statement=DATABRICKS_SQL_STATEMENT_TEST.format(
112
+ query_history=service_connection.queryHistoryTable
113
+ ),
114
+ ),
110
115
  }
111
116
 
112
117
  return test_connection_steps(
@@ -11,12 +11,10 @@
11
11
  """
12
12
  Databricks lineage module
13
13
  """
14
- import traceback
15
- from datetime import datetime
16
- from typing import Iterator
17
14
 
18
- from metadata.generated.schema.type.basic import DateTime
19
- from metadata.generated.schema.type.tableQuery import TableQuery
15
+ from metadata.ingestion.source.database.databricks.queries import (
16
+ DATABRICKS_SQL_STATEMENT,
17
+ )
20
18
  from metadata.ingestion.source.database.databricks.query_parser import (
21
19
  DatabricksQueryParserSource,
22
20
  )
@@ -31,23 +29,13 @@ class DatabricksLineageSource(DatabricksQueryParserSource, LineageSource):
31
29
  Databricks Lineage Legacy Source
32
30
  """
33
31
 
34
- def yield_table_query(self) -> Iterator[TableQuery]:
35
- data = self.client.list_query_history(
36
- start_date=self.start,
37
- end_date=self.end,
32
+ sql_stmt = DATABRICKS_SQL_STATEMENT
33
+
34
+ filters = """
35
+ AND (
36
+ lower(statement_text) LIKE '%%create%%select%%'
37
+ OR lower(statement_text) LIKE '%%insert%%into%%select%%'
38
+ OR lower(statement_text) LIKE '%%update%%'
39
+ OR lower(statement_text) LIKE '%%merge%%'
38
40
  )
39
- for row in data or []:
40
- try:
41
- if self.client.is_query_valid(row):
42
- yield TableQuery(
43
- dialect=self.dialect.value,
44
- query=row.get("query_text"),
45
- userName=row.get("user_name"),
46
- startTime=str(row.get("query_start_time_ms")),
47
- endTime=str(row.get("execution_end_time_ms")),
48
- analysisDate=DateTime(datetime.now()),
49
- serviceName=self.config.serviceName,
50
- )
51
- except Exception as exc:
52
- logger.debug(traceback.format_exc())
53
- logger.warning(f"Error processing query_dict {row}: {exc}")
41
+ """
@@ -14,6 +14,30 @@ SQL Queries used during ingestion
14
14
 
15
15
  import textwrap
16
16
 
17
+ DATABRICKS_SQL_STATEMENT = textwrap.dedent(
18
+ """
19
+ SELECT
20
+ statement_type AS query_type,
21
+ statement_text AS query_text,
22
+ executed_by AS user_name,
23
+ start_time AS start_time,
24
+ null AS database_name,
25
+ null AS schema_name,
26
+ end_time AS end_time,
27
+ total_duration_ms/1000 AS duration
28
+ from {query_history}
29
+ WHERE statement_text NOT LIKE '/* {{"app": "OpenMetadata", %%}} */%%'
30
+ AND statement_text NOT LIKE '/* {{"app": "dbt", %%}} */%%'
31
+ AND start_time between to_timestamp('{start_time}') and to_timestamp('{end_time}')
32
+ {filters}
33
+ LIMIT {result_limit}
34
+ """
35
+ )
36
+
37
+ DATABRICKS_SQL_STATEMENT_TEST = """
38
+ SELECT statement_text from {query_history} LIMIT 1
39
+ """
40
+
17
41
  DATABRICKS_VIEW_DEFINITIONS = textwrap.dedent(
18
42
  """
19
43
  select
@@ -22,7 +22,6 @@ from metadata.generated.schema.metadataIngestion.workflow import (
22
22
  )
23
23
  from metadata.ingestion.api.steps import InvalidSourceException
24
24
  from metadata.ingestion.ometa.ometa_api import OpenMetadata
25
- from metadata.ingestion.source.database.databricks.client import DatabricksClient
26
25
  from metadata.ingestion.source.database.query_parser_source import QueryParserSource
27
26
  from metadata.utils.logger import ingestion_logger
28
27
 
@@ -36,18 +35,6 @@ class DatabricksQueryParserSource(QueryParserSource, ABC):
36
35
 
37
36
  filters: str
38
37
 
39
- def _init_super(
40
- self,
41
- config: WorkflowSource,
42
- metadata: OpenMetadata,
43
- ):
44
- super().__init__(config, metadata, False)
45
-
46
- # pylint: disable=super-init-not-called
47
- def __init__(self, config: WorkflowSource, metadata: OpenMetadata):
48
- self._init_super(config=config, metadata=metadata)
49
- self.client = DatabricksClient(self.service_connection)
50
-
51
38
  @classmethod
52
39
  def create(
53
40
  cls, config_dict, metadata: OpenMetadata, pipeline_name: Optional[str] = None
@@ -61,7 +48,16 @@ class DatabricksQueryParserSource(QueryParserSource, ABC):
61
48
  )
62
49
  return cls(config, metadata)
63
50
 
64
- def prepare(self):
51
+ def get_sql_statement(self, start_time, end_time):
65
52
  """
66
- By default, there's nothing to prepare
53
+ returns sql statement to fetch query logs.
54
+
55
+ Override if we have specific parameters
67
56
  """
57
+ return self.sql_stmt.format(
58
+ start_time=start_time,
59
+ end_time=end_time,
60
+ filters=self.get_filters(),
61
+ result_limit=self.source_config.resultLimit,
62
+ query_history=self.service_connection.queryHistoryTable,
63
+ )
@@ -11,12 +11,10 @@
11
11
  """
12
12
  Databricks usage module
13
13
  """
14
- import traceback
15
- from datetime import datetime
16
- from typing import Iterable
17
14
 
18
- from metadata.generated.schema.type.basic import DateTime
19
- from metadata.generated.schema.type.tableQuery import TableQueries, TableQuery
15
+ from metadata.ingestion.source.database.databricks.queries import (
16
+ DATABRICKS_SQL_STATEMENT,
17
+ )
20
18
  from metadata.ingestion.source.database.databricks.query_parser import (
21
19
  DatabricksQueryParserSource,
22
20
  )
@@ -31,36 +29,8 @@ class DatabricksUsageSource(DatabricksQueryParserSource, UsageSource):
31
29
  Databricks Usage Source
32
30
  """
33
31
 
34
- def yield_table_queries(self) -> Iterable[TableQuery]:
35
- """
36
- Method to yield TableQueries
37
- """
38
- queries = []
39
- data = self.client.list_query_history(
40
- start_date=self.start,
41
- end_date=self.end,
42
- )
43
- for row in data or []:
44
- try:
45
- if self.client.is_query_valid(row):
46
- queries.append(
47
- TableQuery(
48
- dialect=self.dialect.value,
49
- query=row.get("query_text"),
50
- userName=row.get("user_name"),
51
- startTime=str(row.get("query_start_time_ms")),
52
- endTime=str(row.get("execution_end_time_ms")),
53
- analysisDate=DateTime(datetime.now()),
54
- serviceName=self.config.serviceName,
55
- duration=row.get("duration")
56
- if row.get("duration")
57
- else None,
58
- )
59
- )
60
- except Exception as err:
61
- logger.debug(traceback.format_exc())
62
- logger.warning(
63
- f"Failed to process query {row.get('query_text')} due to: {err}"
64
- )
32
+ sql_stmt = DATABRICKS_SQL_STATEMENT
65
33
 
66
- yield TableQueries(queries=queries)
34
+ filters = """
35
+ AND statement_type NOT IN ('SHOW', 'DESCRIBE', 'USE')
36
+ """
@@ -50,7 +50,7 @@ def get_connection(connection: Db2Connection) -> Engine:
50
50
  "w",
51
51
  encoding=UTF_8,
52
52
  ) as file:
53
- file.write(connection.license)
53
+ file.write(connection.license.encode(UTF_8).decode("unicode-escape"))
54
54
 
55
55
  return create_generic_db_connection(
56
56
  connection=connection,
@@ -1,4 +1,3 @@
1
- from metadata.ingestion.source.database.db2.lineage import Db2LineageSource
2
1
  from metadata.ingestion.source.database.db2.metadata import Db2Source
3
2
  from metadata.profiler.interface.sqlalchemy.db2.profiler_interface import (
4
3
  DB2ProfilerInterface,
@@ -6,7 +5,5 @@ from metadata.profiler.interface.sqlalchemy.db2.profiler_interface import (
6
5
  from metadata.utils.service_spec.default import DefaultDatabaseSpec
7
6
 
8
7
  ServiceSpec = DefaultDatabaseSpec(
9
- metadata_source_class=Db2Source,
10
- profiler_class=DB2ProfilerInterface,
11
- lineage_source_class=Db2LineageSource,
8
+ metadata_source_class=Db2Source, profiler_class=DB2ProfilerInterface
12
9
  )
@@ -1093,7 +1093,9 @@ class DbtSource(DbtServiceSource):
1093
1093
 
1094
1094
  # Create the test case result object
1095
1095
  test_case_result = TestCaseResult(
1096
- timestamp=Timestamp(datetime_to_timestamp(dbt_timestamp)),
1096
+ timestamp=Timestamp(
1097
+ datetime_to_timestamp(dbt_timestamp, milliseconds=True)
1098
+ ),
1097
1099
  testCaseStatus=test_case_status,
1098
1100
  testResultValue=[
1099
1101
  TestResultValue(
@@ -1,8 +1,4 @@
1
- from metadata.ingestion.source.database.druid.lineage import DruidLineageSource
2
1
  from metadata.ingestion.source.database.druid.metadata import DruidSource
3
2
  from metadata.utils.service_spec.default import DefaultDatabaseSpec
4
3
 
5
- ServiceSpec = DefaultDatabaseSpec(
6
- metadata_source_class=DruidSource,
7
- lineage_source_class=DruidLineageSource,
8
- )
4
+ ServiceSpec = DefaultDatabaseSpec(metadata_source_class=DruidSource)
@@ -1,8 +1,4 @@
1
- from metadata.ingestion.source.database.greenplum.lineage import GreenplumLineageSource
2
1
  from metadata.ingestion.source.database.greenplum.metadata import GreenplumSource
3
2
  from metadata.utils.service_spec.default import DefaultDatabaseSpec
4
3
 
5
- ServiceSpec = DefaultDatabaseSpec(
6
- metadata_source_class=GreenplumSource,
7
- lineage_source_class=GreenplumLineageSource,
8
- )
4
+ ServiceSpec = DefaultDatabaseSpec(metadata_source_class=GreenplumSource)
@@ -1,8 +1,4 @@
1
- from metadata.ingestion.source.database.hive.lineage import HiveLineageSource
2
1
  from metadata.ingestion.source.database.hive.metadata import HiveSource
3
2
  from metadata.utils.service_spec.default import DefaultDatabaseSpec
4
3
 
5
- ServiceSpec = DefaultDatabaseSpec(
6
- metadata_source_class=HiveSource,
7
- lineage_source_class=HiveLineageSource,
8
- )
4
+ ServiceSpec = DefaultDatabaseSpec(metadata_source_class=HiveSource)
@@ -1,8 +1,4 @@
1
- from metadata.ingestion.source.database.impala.lineage import ImpalaLineageSource
2
1
  from metadata.ingestion.source.database.impala.metadata import ImpalaSource
3
2
  from metadata.utils.service_spec.default import DefaultDatabaseSpec
4
3
 
5
- ServiceSpec = DefaultDatabaseSpec(
6
- metadata_source_class=ImpalaSource,
7
- lineage_source_class=ImpalaLineageSource,
8
- )
4
+ ServiceSpec = DefaultDatabaseSpec(metadata_source_class=ImpalaSource)
@@ -26,7 +26,10 @@ from metadata.generated.schema.type.basic import FullyQualifiedEntityName, SqlQu
26
26
  from metadata.generated.schema.type.tableQuery import TableQuery
27
27
  from metadata.ingestion.api.models import Either
28
28
  from metadata.ingestion.lineage.models import ConnectionTypeDialectMapper, Dialect
29
- from metadata.ingestion.lineage.sql_lineage import get_lineage_by_query
29
+ from metadata.ingestion.lineage.sql_lineage import (
30
+ get_lineage_by_graph,
31
+ get_lineage_by_query,
32
+ )
30
33
  from metadata.ingestion.models.ometa_lineage import OMetaLineageRequest
31
34
  from metadata.ingestion.models.topology import Queue
32
35
  from metadata.ingestion.source.database.query_parser_source import QueryParserSource
@@ -195,6 +198,12 @@ class LineageSource(QueryParserSource, ABC):
195
198
  def query_lineage_generator(
196
199
  self, table_queries: List[TableQuery], queue: Queue
197
200
  ) -> Iterable[Either[Union[AddLineageRequest, CreateQueryRequest]]]:
201
+ if self.graph is None and self.source_config.enableTempTableLineage:
202
+ import networkx as nx
203
+
204
+ # Create a directed graph
205
+ self.graph = nx.DiGraph()
206
+
198
207
  for table_query in table_queries or []:
199
208
  if not self._query_already_processed(table_query):
200
209
  lineages: Iterable[Either[AddLineageRequest]] = get_lineage_by_query(
@@ -205,6 +214,7 @@ class LineageSource(QueryParserSource, ABC):
205
214
  schema_name=table_query.databaseSchema,
206
215
  dialect=self.dialect,
207
216
  timeout_seconds=self.source_config.parsingTimeoutLimit,
217
+ graph=self.graph,
208
218
  )
209
219
 
210
220
  for lineage_request in lineages or []:
@@ -298,6 +308,7 @@ class LineageSource(QueryParserSource, ABC):
298
308
  if self.source_config.processQueryLineage:
299
309
  if hasattr(self.service_connection, "supportsLineageExtraction"):
300
310
  yield from self.yield_query_lineage() or []
311
+ yield from get_lineage_by_graph(graph=self.graph)
301
312
  else:
302
313
  logger.warning(
303
314
  f"Lineage extraction is not supported for {str(self.service_connection.type.value)} connection"
@@ -1,12 +1,4 @@
1
- from metadata.ingestion.source.database.mariadb.lineage import MariadbLineageSource
2
1
  from metadata.ingestion.source.database.mariadb.metadata import MariadbSource
3
- from metadata.profiler.interface.sqlalchemy.mariadb.profiler_interface import (
4
- MariaDBProfilerInterface,
5
- )
6
2
  from metadata.utils.service_spec.default import DefaultDatabaseSpec
7
3
 
8
- ServiceSpec = DefaultDatabaseSpec(
9
- metadata_source_class=MariadbSource,
10
- lineage_source_class=MariadbLineageSource,
11
- profiler_class=MariaDBProfilerInterface,
12
- )
4
+ ServiceSpec = DefaultDatabaseSpec(metadata_source_class=MariadbSource)
@@ -1,8 +1,4 @@
1
- from metadata.ingestion.source.database.pinotdb.lineage import PinotdbLineageSource
2
1
  from metadata.ingestion.source.database.pinotdb.metadata import PinotdbSource
3
2
  from metadata.utils.service_spec.default import DefaultDatabaseSpec
4
3
 
5
- ServiceSpec = DefaultDatabaseSpec(
6
- metadata_source_class=PinotdbSource,
7
- lineage_source_class=PinotdbLineageSource,
8
- )
4
+ ServiceSpec = DefaultDatabaseSpec(metadata_source_class=PinotdbSource)
@@ -15,6 +15,11 @@ import traceback
15
15
  from datetime import datetime
16
16
  from typing import Iterable
17
17
 
18
+ from sqlalchemy.exc import OperationalError
19
+
20
+ from metadata.generated.schema.entity.services.ingestionPipelines.status import (
21
+ StackTraceError,
22
+ )
18
23
  from metadata.generated.schema.type.basic import DateTime
19
24
  from metadata.generated.schema.type.tableQuery import TableQueries, TableQuery
20
25
  from metadata.ingestion.source.connections import get_connection
@@ -67,6 +72,16 @@ class PostgresUsageSource(PostgresQueryParserSource, UsageSource):
67
72
  logger.error(str(err))
68
73
  if queries:
69
74
  yield TableQueries(queries=queries)
75
+
76
+ except OperationalError as err:
77
+ self.status.failed(
78
+ StackTraceError(
79
+ name="Usage",
80
+ error=f"Source Usage failed due to - {err}",
81
+ stackTrace=traceback.format_exc(),
82
+ )
83
+ )
84
+
70
85
  except Exception as err:
71
86
  if query:
72
87
  logger.debug(
@@ -67,6 +67,7 @@ class QueryParserSource(Source, ABC):
67
67
  self.engine = (
68
68
  get_ssl_connection(self.service_connection) if get_engine else None
69
69
  )
70
+ self.graph = None
70
71
 
71
72
  @property
72
73
  def name(self) -> str:
@@ -11,7 +11,6 @@
11
11
  """
12
12
  Redshift source ingestion
13
13
  """
14
-
15
14
  import re
16
15
  import traceback
17
16
  from typing import Iterable, List, Optional, Tuple
@@ -57,6 +56,9 @@ from metadata.ingestion.source.database.common_db_source import (
57
56
  CommonDbSourceService,
58
57
  TableNameAndType,
59
58
  )
59
+ from metadata.ingestion.source.database.external_table_lineage_mixin import (
60
+ ExternalTableLineageMixin,
61
+ )
60
62
  from metadata.ingestion.source.database.incremental_metadata_extraction import (
61
63
  IncrementalConfig,
62
64
  )
@@ -69,6 +71,7 @@ from metadata.ingestion.source.database.redshift.incremental_table_processor imp
69
71
  )
70
72
  from metadata.ingestion.source.database.redshift.models import RedshiftStoredProcedure
71
73
  from metadata.ingestion.source.database.redshift.queries import (
74
+ REDSHIFT_EXTERNAL_TABLE_LOCATION,
72
75
  REDSHIFT_GET_ALL_RELATION_INFO,
73
76
  REDSHIFT_GET_DATABASE_NAMES,
74
77
  REDSHIFT_GET_STORED_PROCEDURES,
@@ -121,12 +124,13 @@ RedshiftDialect.get_view_definition = get_view_definition
121
124
  RedshiftDialect._get_all_relation_info = ( # pylint: disable=protected-access
122
125
  _get_all_relation_info
123
126
  )
124
-
125
127
  Inspector.get_all_table_ddls = get_all_table_ddls
126
128
  Inspector.get_table_ddl = get_table_ddl
127
129
 
128
130
 
129
- class RedshiftSource(LifeCycleQueryMixin, CommonDbSourceService, MultiDBSource):
131
+ class RedshiftSource(
132
+ ExternalTableLineageMixin, LifeCycleQueryMixin, CommonDbSourceService, MultiDBSource
133
+ ):
130
134
  """
131
135
  Implements the necessary methods to extract
132
136
  Database metadata from Redshift Source
@@ -146,6 +150,7 @@ class RedshiftSource(LifeCycleQueryMixin, CommonDbSourceService, MultiDBSource):
146
150
  self.incremental_table_processor: Optional[
147
151
  RedshiftIncrementalTableProcessor
148
152
  ] = None
153
+ self.external_location_map = {}
149
154
 
150
155
  if self.incremental.enabled:
151
156
  logger.info(
@@ -168,6 +173,14 @@ class RedshiftSource(LifeCycleQueryMixin, CommonDbSourceService, MultiDBSource):
168
173
  )
169
174
  return cls(config, metadata, incremental_config)
170
175
 
176
+ def get_location_path(self, table_name: str, schema_name: str) -> Optional[str]:
177
+ """
178
+ Method to fetch the location path of the table
179
+ """
180
+ return self.external_location_map.get(
181
+ (self.context.get().database, schema_name, table_name)
182
+ )
183
+
171
184
  def get_partition_details(self) -> None:
172
185
  """
173
186
  Populate partition details
@@ -275,15 +288,23 @@ class RedshiftSource(LifeCycleQueryMixin, CommonDbSourceService, MultiDBSource):
275
288
  for schema_name, table_name in self.incremental_table_processor.get_deleted()
276
289
  )
277
290
 
291
+ def set_external_location_map(self, database_name: str) -> None:
292
+ self.external_location_map.clear()
293
+ results = self.engine.execute(
294
+ REDSHIFT_EXTERNAL_TABLE_LOCATION.format(database_name=database_name)
295
+ ).all()
296
+ self.external_location_map = {
297
+ (database_name, row.schemaname, row.tablename): row.location
298
+ for row in results
299
+ }
300
+
278
301
  def get_database_names(self) -> Iterable[str]:
279
302
  if not self.config.serviceConnection.root.config.ingestAllDatabases:
303
+ configured_db = self.config.serviceConnection.root.config.database
280
304
  self.get_partition_details()
281
-
282
- self._set_incremental_table_processor(
283
- self.config.serviceConnection.root.config.database
284
- )
285
-
286
- yield self.config.serviceConnection.root.config.database
305
+ self._set_incremental_table_processor(configured_db)
306
+ self.set_external_location_map(configured_db)
307
+ yield configured_db
287
308
  else:
288
309
  for new_database in self.get_database_names_raw():
289
310
  database_fqn = fqn.build(
@@ -307,9 +328,8 @@ class RedshiftSource(LifeCycleQueryMixin, CommonDbSourceService, MultiDBSource):
307
328
  try:
308
329
  self.set_inspector(database_name=new_database)
309
330
  self.get_partition_details()
310
-
311
331
  self._set_incremental_table_processor(new_database)
312
-
332
+ self.set_external_location_map(new_database)
313
333
  yield new_database
314
334
  except Exception as exc:
315
335
  logger.debug(traceback.format_exc())
@@ -203,6 +203,11 @@ REDSHIFT_GET_SCHEMA_COLUMN_INFO = textwrap.dedent(
203
203
  """
204
204
  )
205
205
 
206
+ REDSHIFT_EXTERNAL_TABLE_LOCATION = """
207
+ SELECT schemaname, tablename, location
208
+ FROM svv_external_tables
209
+ where redshift_database_name='{database_name}'
210
+ """
206
211
 
207
212
  REDSHIFT_PARTITION_DETAILS = """
208
213
  select "schema", "table", diststyle
@@ -1,6 +1,3 @@
1
- from metadata.ingestion.source.database.singlestore.lineage import (
2
- SinglestoreLineageSource,
3
- )
4
1
  from metadata.ingestion.source.database.singlestore.metadata import SinglestoreSource
5
2
  from metadata.profiler.interface.sqlalchemy.single_store.profiler_interface import (
6
3
  SingleStoreProfilerInterface,
@@ -8,7 +5,5 @@ from metadata.profiler.interface.sqlalchemy.single_store.profiler_interface impo
8
5
  from metadata.utils.service_spec.default import DefaultDatabaseSpec
9
6
 
10
7
  ServiceSpec = DefaultDatabaseSpec(
11
- metadata_source_class=SinglestoreSource,
12
- profiler_class=SingleStoreProfilerInterface,
13
- lineage_source_class=SinglestoreLineageSource,
8
+ metadata_source_class=SinglestoreSource, profiler_class=SingleStoreProfilerInterface
14
9
  )
@@ -193,10 +193,18 @@ def test_connection(
193
193
  engine_wrapper=engine_wrapper,
194
194
  ),
195
195
  "GetQueries": partial(
196
- test_query, statement=SNOWFLAKE_TEST_GET_QUERIES, engine=engine
196
+ test_query,
197
+ statement=SNOWFLAKE_TEST_GET_QUERIES.format(
198
+ account_usage=service_connection.accountUsageSchema
199
+ ),
200
+ engine=engine,
197
201
  ),
198
202
  "GetTags": partial(
199
- test_query, statement=SNOWFLAKE_TEST_FETCH_TAG, engine=engine
203
+ test_query,
204
+ statement=SNOWFLAKE_TEST_FETCH_TAG.format(
205
+ account_usage=service_connection.accountUsageSchema
206
+ ),
207
+ engine=engine,
200
208
  ),
201
209
  }
202
210