acryl-datahub 1.0.0rc1__py3-none-any.whl → 1.0.0rc3__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 acryl-datahub might be problematic. Click here for more details.
- {acryl_datahub-1.0.0rc1.dist-info → acryl_datahub-1.0.0rc3.dist-info}/METADATA +2469 -2469
- {acryl_datahub-1.0.0rc1.dist-info → acryl_datahub-1.0.0rc3.dist-info}/RECORD +49 -48
- datahub/_version.py +1 -1
- datahub/cli/docker_cli.py +2 -2
- datahub/configuration/common.py +1 -1
- datahub/ingestion/api/decorators.py +1 -1
- datahub/ingestion/graph/client.py +1 -1
- datahub/ingestion/run/pipeline.py +1 -1
- datahub/ingestion/source/identity/okta.py +13 -2
- datahub/ingestion/source/kafka_connect/common.py +1 -1
- datahub/ingestion/source/kafka_connect/kafka_connect.py +97 -4
- datahub/ingestion/source/kafka_connect/sink_connectors.py +2 -2
- datahub/ingestion/source/kafka_connect/source_connectors.py +2 -2
- datahub/ingestion/source/looker/looker_common.py +3 -3
- datahub/ingestion/source/looker/looker_source.py +1 -1
- datahub/ingestion/source/mode.py +3 -3
- datahub/ingestion/source/nifi.py +2 -2
- datahub/ingestion/source/openapi.py +1 -1
- datahub/ingestion/source/openapi_parser.py +1 -1
- datahub/ingestion/source/powerbi_report_server/report_server_domain.py +1 -1
- datahub/ingestion/source/snowflake/snowflake_queries.py +3 -0
- datahub/ingestion/source/sql/athena.py +2 -2
- datahub/ingestion/source/sql/hive_metastore.py +1 -1
- datahub/ingestion/source/sql/mssql/source.py +1 -1
- datahub/ingestion/source/sql/sql_common.py +1 -1
- datahub/ingestion/source/sql/teradata.py +3 -3
- datahub/ingestion/source/tableau/tableau.py +19 -0
- datahub/metadata/schema.avsc +30 -3
- datahub/metadata/schemas/AssertionInfo.avsc +3 -1
- datahub/metadata/schemas/BusinessAttributeInfo.avsc +6 -2
- datahub/metadata/schemas/BusinessAttributes.avsc +6 -0
- datahub/metadata/schemas/ChartInfo.avsc +1 -0
- datahub/metadata/schemas/EditableSchemaMetadata.avsc +6 -2
- datahub/metadata/schemas/GlossaryTerms.avsc +3 -1
- datahub/metadata/schemas/InputFields.avsc +3 -1
- datahub/metadata/schemas/MetadataChangeEvent.avsc +7 -2
- datahub/metadata/schemas/SchemaMetadata.avsc +3 -1
- datahub/metadata/schemas/StructuredPropertyDefinition.avsc +14 -0
- datahub/sql_parsing/schema_resolver.py +1 -1
- datahub/sql_parsing/sqlglot_lineage.py +1 -1
- datahub/testing/check_sql_parser_result.py +5 -6
- datahub/testing/compare_metadata_json.py +7 -6
- datahub/testing/pytest_hooks.py +56 -0
- datahub/upgrade/upgrade.py +2 -2
- datahub/utilities/mapping.py +1 -1
- {acryl_datahub-1.0.0rc1.dist-info → acryl_datahub-1.0.0rc3.dist-info}/LICENSE +0 -0
- {acryl_datahub-1.0.0rc1.dist-info → acryl_datahub-1.0.0rc3.dist-info}/WHEEL +0 -0
- {acryl_datahub-1.0.0rc1.dist-info → acryl_datahub-1.0.0rc3.dist-info}/entry_points.txt +0 -0
- {acryl_datahub-1.0.0rc1.dist-info → acryl_datahub-1.0.0rc3.dist-info}/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
datahub/__init__.py,sha256=aq_i5lVREmoLfYIqcx_pEQicO855YlhD19tWc1eZZNI,59
|
|
2
2
|
datahub/__main__.py,sha256=pegIvQ9hzK7IhqVeUi1MeADSZ2QlP-D3K0OQdEg55RU,106
|
|
3
|
-
datahub/_version.py,sha256=
|
|
3
|
+
datahub/_version.py,sha256=ekJghJG0MWYsjIE7Q8oYJZcO06c5OXzZCJv84ngAWko,321
|
|
4
4
|
datahub/entrypoints.py,sha256=2TYgHhs3sCxJlojIHjqfxzt3_ImPwPzq4vBtsUuMqu4,8885
|
|
5
5
|
datahub/errors.py,sha256=w6h8b27j9XlmPbTwqpu7-wgiTrXlHzcnUOnJ_iOrwzo,520
|
|
6
6
|
datahub/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -66,7 +66,7 @@ datahub/cli/config_utils.py,sha256=yuXw7RzpRY5x_-MAoqWbv46qUkIeRNAJL4_OeJpYdBE,4
|
|
|
66
66
|
datahub/cli/container_cli.py,sha256=uDOwewGEPYHQt-ppYEb8ESXhZjPNIZG0Rt3cm2FzPqc,1569
|
|
67
67
|
datahub/cli/delete_cli.py,sha256=oQ4Yy6hxZHcl67MYJiQumLs_8QmFEj7SPZFzxFXvDk8,23481
|
|
68
68
|
datahub/cli/docker_check.py,sha256=rED4wHXqxcQ_qNFyIgFEZ85BHT9ZTE5YC-oUKqbRqi0,9432
|
|
69
|
-
datahub/cli/docker_cli.py,sha256=
|
|
69
|
+
datahub/cli/docker_cli.py,sha256=yxExfrlps9JnJDK-MQVwVCcsDz_rq5Q4jAcj4w_4kmU,36465
|
|
70
70
|
datahub/cli/env_utils.py,sha256=RQzjg4JE29hjPt4v7p-RuqoOr99w8E3DBHWiN2Sm7T4,252
|
|
71
71
|
datahub/cli/exists_cli.py,sha256=IsuU86R-g7BJjAl1vULH6d-BWJHAKa4XHLZl5WxGUEM,1233
|
|
72
72
|
datahub/cli/get_cli.py,sha256=VV80BCXfZ0-C8fr2k43SIuN9DB-fOYP9StWsTHnXwFw,2327
|
|
@@ -93,7 +93,7 @@ datahub/cli/specific/structuredproperties_cli.py,sha256=Rb06XJKxqda5RSUo188B90Wn
|
|
|
93
93
|
datahub/cli/specific/user_cli.py,sha256=jGAokb1NRu8obs6P2g4OL2NQdFgpUBa9De55TBBtun0,1897
|
|
94
94
|
datahub/configuration/__init__.py,sha256=5TN3a7CWNsLRHpdj-sv2bxKWF2IslvJwE6EpNMFrIS4,123
|
|
95
95
|
datahub/configuration/_config_enum.py,sha256=ul2hr5gMmdLvBINicFkMNMi1ApmnmZSwNdUYYted5nk,1447
|
|
96
|
-
datahub/configuration/common.py,sha256=
|
|
96
|
+
datahub/configuration/common.py,sha256=PAcEm2aBZ-GS7SAmPR_o8XGtTGnKZk-d-tb4_Y9A4hE,10394
|
|
97
97
|
datahub/configuration/config_loader.py,sha256=hRzPFxkz-w9IqkpSa5vwCzSra1p49DyfeJNeyqGa8-4,6827
|
|
98
98
|
datahub/configuration/connection_resolver.py,sha256=n4-6MwMiOEDgTouxO0SMjTILKVhJPo6-naE6FuR5qMs,1516
|
|
99
99
|
datahub/configuration/datetimes.py,sha256=nayNc0mmlVKH6oVv9ud6C1dDUiZPGabW-YZxvrkosPg,2870
|
|
@@ -133,7 +133,7 @@ datahub/ingestion/api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3h
|
|
|
133
133
|
datahub/ingestion/api/closeable.py,sha256=k12AT--s4GDtZ-po_rVm5QKgvGIDteeRPByZPIOfecA,599
|
|
134
134
|
datahub/ingestion/api/committable.py,sha256=4S6GuBzvX2vb1A8P506NbspOKfZ1621sBG8t0lvRb8o,886
|
|
135
135
|
datahub/ingestion/api/common.py,sha256=nJVL8YdvokYFajOjmVpSNlLbZJ5iVOFS4KJDlGtJ_jc,2735
|
|
136
|
-
datahub/ingestion/api/decorators.py,sha256
|
|
136
|
+
datahub/ingestion/api/decorators.py,sha256=-0Kl9G_8DhmSP9Q0ryrWB3a-Odce8WTpvGETJOqRdgw,4015
|
|
137
137
|
datahub/ingestion/api/global_context.py,sha256=OdSJg4a_RKE52nu8MSiEkK2UqRRDhDTyOleHEAzPKho,575
|
|
138
138
|
datahub/ingestion/api/incremental_lineage_helper.py,sha256=7a6FTJ_uz4EEJS1vPtbYB2KvNlcZB3py28_FKxmRiSk,5993
|
|
139
139
|
datahub/ingestion/api/incremental_properties_helper.py,sha256=KzdxdrQtaMV2XMHfPsCtRa7ffDGPA1w1hgPUjeenZBU,2514
|
|
@@ -169,7 +169,7 @@ datahub/ingestion/glossary/classifier.py,sha256=daLxnVv_JlfB_jBOxH5LrU_xQRndrsGo
|
|
|
169
169
|
datahub/ingestion/glossary/classifier_registry.py,sha256=yFOYLQhDgCLqXYMG3L1BquXafeLcZDcmp8meyw6k9ts,307
|
|
170
170
|
datahub/ingestion/glossary/datahub_classifier.py,sha256=O7wm6gQT1Jf2QSKdWjJQbS5oSzJwplXzfza26Gdq5Mg,7555
|
|
171
171
|
datahub/ingestion/graph/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
172
|
-
datahub/ingestion/graph/client.py,sha256=
|
|
172
|
+
datahub/ingestion/graph/client.py,sha256=2hGCVRHWjDHepPcybk73zUChbWJmd9RfLiTtqDxuM9Q,65092
|
|
173
173
|
datahub/ingestion/graph/config.py,sha256=_oha8Je7P80ZmrkZUAaRHyYbdMmTkMI5JkYjEP2Ri1Q,751
|
|
174
174
|
datahub/ingestion/graph/connections.py,sha256=9462L0ZWGKURyypAln25eMPhK3pcufBar9tNDoqspXs,741
|
|
175
175
|
datahub/ingestion/graph/entity_versioning.py,sha256=PG_GKJrtSu9n1oewDJfgYDVhqVMll8NXE_i0slmcTm0,6871
|
|
@@ -180,7 +180,7 @@ datahub/ingestion/reporting/file_reporter.py,sha256=tiWukmMxHrTQI3rOAumsq6lRlw8T
|
|
|
180
180
|
datahub/ingestion/reporting/reporting_provider_registry.py,sha256=jTYSh3T4sensjnHQfPLiIcbA2dG8w0px9ghChAJjGdU,310
|
|
181
181
|
datahub/ingestion/run/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
182
182
|
datahub/ingestion/run/connection.py,sha256=mngNzr5aRLUDa5Izqxa0xkdDEqEqcDuacWSKIlkdvPc,1483
|
|
183
|
-
datahub/ingestion/run/pipeline.py,sha256
|
|
183
|
+
datahub/ingestion/run/pipeline.py,sha256=-lfVxJ8-ZPZFDxHYR6eiDAVb01yJTDmllBAOWjrvfPI,30617
|
|
184
184
|
datahub/ingestion/run/pipeline_config.py,sha256=EDwqlid4h_qyqyeTRCEqb1RiFA4py_T-Poz1eIKmzT4,4101
|
|
185
185
|
datahub/ingestion/sink/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
186
186
|
datahub/ingestion/sink/blackhole.py,sha256=-jYcWo4i8q7312bCIoHrGr7nT9JdPvA7c4jvSc7YOgY,557
|
|
@@ -203,11 +203,11 @@ datahub/ingestion/source/glue_profiling_config.py,sha256=vpMJH4Lf_qgR32BZy58suab
|
|
|
203
203
|
datahub/ingestion/source/ldap.py,sha256=CNr3foofIpoCXu_GGqfcajlQE2qkHr5isYwVcDutdkk,18695
|
|
204
204
|
datahub/ingestion/source/metabase.py,sha256=m9Gfhrs8F1z23ci8CIxdE5cW--25stgxg_IQTKwkFrk,31532
|
|
205
205
|
datahub/ingestion/source/mlflow.py,sha256=pmIkmsfidi7dOGdQ61rab7m8AnKZhIRE2IA9in9HGFU,12144
|
|
206
|
-
datahub/ingestion/source/mode.py,sha256=
|
|
206
|
+
datahub/ingestion/source/mode.py,sha256=IBWpG0w47y1ivyo5oID0lmvwvLQvbNYL73x5EYHbAlk,63597
|
|
207
207
|
datahub/ingestion/source/mongodb.py,sha256=2C2Cxn8DXL53IbNiywIuKt8UT_EMcPg9f8su-OPSNGU,21237
|
|
208
|
-
datahub/ingestion/source/nifi.py,sha256=
|
|
209
|
-
datahub/ingestion/source/openapi.py,sha256=
|
|
210
|
-
datahub/ingestion/source/openapi_parser.py,sha256=
|
|
208
|
+
datahub/ingestion/source/nifi.py,sha256=dK__nKtxt7dx9JlrL3abJr_D7oZY4LbCXdMCCdYcCKg,56061
|
|
209
|
+
datahub/ingestion/source/openapi.py,sha256=39ep3etbWh8NBPjTXXwH3mieC5P6bMVAjhvK7UvcTis,17372
|
|
210
|
+
datahub/ingestion/source/openapi_parser.py,sha256=8aksjKh7cc7EMnIi-oM5hJpJHLSucmZvRGS1T3GLO5o,13592
|
|
211
211
|
datahub/ingestion/source/preset.py,sha256=fByqamRLnXxsfCGdLPzWN_5LJR_s2_G2f_zwSKUc8EA,3981
|
|
212
212
|
datahub/ingestion/source/pulsar.py,sha256=7rTOEqYmeOuRZl5DG8d5OFkb4l9H6-1bETZfa-4DfmI,20163
|
|
213
213
|
datahub/ingestion/source/redash.py,sha256=U0AfnYpZlAPN0peiu7pOpB8MQZ4JOO0yKEYChucMrlY,29915
|
|
@@ -327,18 +327,18 @@ datahub/ingestion/source/iceberg/iceberg_common.py,sha256=2zBuhUKyZ9jNHcPI4KsupH
|
|
|
327
327
|
datahub/ingestion/source/iceberg/iceberg_profiler.py,sha256=CkBB5fryMVoqqCM6eLSIeb4yP85ABHONNRm0QqZKrnw,9977
|
|
328
328
|
datahub/ingestion/source/identity/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
329
329
|
datahub/ingestion/source/identity/azure_ad.py,sha256=9Hrvm4CSfc02yjnPUsCYSY4Qw9fXPnDFWLexab0mcpc,28559
|
|
330
|
-
datahub/ingestion/source/identity/okta.py,sha256=
|
|
330
|
+
datahub/ingestion/source/identity/okta.py,sha256=72-zCn3u7nxhE64B-gOFrox9FjcYCtzvaDqlq1WLExI,31333
|
|
331
331
|
datahub/ingestion/source/kafka/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
332
332
|
datahub/ingestion/source/kafka/kafka.py,sha256=TX_9MFaecM1ZmwhX3krKsItEmNZX9c2i9024SmVo0io,26572
|
|
333
333
|
datahub/ingestion/source/kafka/kafka_schema_registry_base.py,sha256=13XjSwqyVhH1CJUFHAbWdmmv_Rw0Ju_9HQdBmIzPNNA,566
|
|
334
334
|
datahub/ingestion/source/kafka_connect/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
335
|
-
datahub/ingestion/source/kafka_connect/common.py,sha256=
|
|
336
|
-
datahub/ingestion/source/kafka_connect/kafka_connect.py,sha256
|
|
337
|
-
datahub/ingestion/source/kafka_connect/sink_connectors.py,sha256=
|
|
338
|
-
datahub/ingestion/source/kafka_connect/source_connectors.py,sha256
|
|
335
|
+
datahub/ingestion/source/kafka_connect/common.py,sha256=6F9pPD_9uX6RcVLNy2Xpv_ipiqIZaLvsgdrj5o22pfA,7127
|
|
336
|
+
datahub/ingestion/source/kafka_connect/kafka_connect.py,sha256=AVAgBvgH7kM9I2ke3mwr8CfIL1J2SdVHH_86rnCFwrM,17727
|
|
337
|
+
datahub/ingestion/source/kafka_connect/sink_connectors.py,sha256=rNxolagqwQWQmVp4mDr1C-1TB6Drxc2b1dM9JSjNnuA,12905
|
|
338
|
+
datahub/ingestion/source/kafka_connect/source_connectors.py,sha256=viCqy7fmQl_qyrIkEamRVuUb8_EtfvQjE00CHPi-980,21265
|
|
339
339
|
datahub/ingestion/source/looker/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
340
340
|
datahub/ingestion/source/looker/lkml_patched.py,sha256=XShEU7Wbz0DubDhYMjKf9wjKZrBJa2XPg9MIjp8rPhk,733
|
|
341
|
-
datahub/ingestion/source/looker/looker_common.py,sha256=
|
|
341
|
+
datahub/ingestion/source/looker/looker_common.py,sha256=hR4iufcjwh_iBzIJs9tYR4lwSn6vXk2WF5VFAYepKGM,62094
|
|
342
342
|
datahub/ingestion/source/looker/looker_config.py,sha256=eVKw1nn9D8hUFdRfNyT3MtzL8w-zWhFeokiwSnNKQuc,13607
|
|
343
343
|
datahub/ingestion/source/looker/looker_connection.py,sha256=yDmC6lDsHmL2e_Pw8ULylwOIHPWPp_6gT1iyLvD0fTw,2075
|
|
344
344
|
datahub/ingestion/source/looker/looker_constant.py,sha256=GMKYtNXlpojPxa9azridKfcGLSJwKdUCTesp7U8dIrQ,402
|
|
@@ -347,7 +347,7 @@ datahub/ingestion/source/looker/looker_file_loader.py,sha256=PEyL9KWRaFcrvOkapU8
|
|
|
347
347
|
datahub/ingestion/source/looker/looker_lib_wrapper.py,sha256=0gaYjBv4wkbbLWVgvaAV6JyWAFb0utTG6TCve2d9xss,11511
|
|
348
348
|
datahub/ingestion/source/looker/looker_liquid_tag.py,sha256=mO4G4MNA4YZFvZaDBpdiJ2vP3irC82kY34RdaK4Pbfs,3100
|
|
349
349
|
datahub/ingestion/source/looker/looker_query_model.py,sha256=N0jBbFruiCIIGT6sJn6tNeppeQ78KGTkOwTLirhxFNc,2144
|
|
350
|
-
datahub/ingestion/source/looker/looker_source.py,sha256=
|
|
350
|
+
datahub/ingestion/source/looker/looker_source.py,sha256=25Ha1lUdmGbLZl4vuARyEi5i7MedHaKu4HEwBQgbvAU,66413
|
|
351
351
|
datahub/ingestion/source/looker/looker_template_language.py,sha256=W-SMICKBfIuivrHywHRYchz9SJiXhoU8VOEKGQW_1v8,17825
|
|
352
352
|
datahub/ingestion/source/looker/looker_usage.py,sha256=qFBX7OHtIcarYIqFe0jQMrDV8MMPV_nN4PZrZRUznTw,23029
|
|
353
353
|
datahub/ingestion/source/looker/looker_view_id_cache.py,sha256=92gDy6NONhJYBp92z_IBzDVZvezmUIkaBCZY1bdk6mE,4392
|
|
@@ -385,7 +385,7 @@ datahub/ingestion/source/powerbi/rest_api_wrapper/query.py,sha256=VNw1Uvli6g0pnu
|
|
|
385
385
|
datahub/ingestion/source/powerbi_report_server/__init__.py,sha256=N9fGcrHXBbuPmx9rpGjd_jkMC3smXmfiwISDP1QZapk,324
|
|
386
386
|
datahub/ingestion/source/powerbi_report_server/constants.py,sha256=i_hXcvPHjwk3VpTT5ef7s8dN9F6pJzPyRUiG5UzCCYI,3544
|
|
387
387
|
datahub/ingestion/source/powerbi_report_server/report_server.py,sha256=MVtCTNcrRwvcvr3J5eg3ZDUI__qD-kSU2hBYbX125d8,20244
|
|
388
|
-
datahub/ingestion/source/powerbi_report_server/report_server_domain.py,sha256=
|
|
388
|
+
datahub/ingestion/source/powerbi_report_server/report_server_domain.py,sha256=J43_u4O_HjomB_cKvqOpR1gNPeRYp-WkWBRuOf9sTxI,11769
|
|
389
389
|
datahub/ingestion/source/profiling/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
390
390
|
datahub/ingestion/source/profiling/common.py,sha256=4sZ58AeBV64KRfKAgjkg-UyNjAc3YERahQMmW4algAw,1426
|
|
391
391
|
datahub/ingestion/source/qlik_sense/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -442,7 +442,7 @@ datahub/ingestion/source/snowflake/snowflake_connection.py,sha256=e9dCARIQtGB8G1
|
|
|
442
442
|
datahub/ingestion/source/snowflake/snowflake_data_reader.py,sha256=ffR5E2uhD71FUMXd3XOg2rHwrp1rbbGEFTAbqKcmI2s,2195
|
|
443
443
|
datahub/ingestion/source/snowflake/snowflake_lineage_v2.py,sha256=FBmiONx4EGHWV8RNJT6zHZyntKinPFFyd2oKbTUIbhE,21319
|
|
444
444
|
datahub/ingestion/source/snowflake/snowflake_profiler.py,sha256=0DJiSwII6FY34urlBja2FW66NaVvhbBWmG0p7u8Xyrc,7548
|
|
445
|
-
datahub/ingestion/source/snowflake/snowflake_queries.py,sha256=
|
|
445
|
+
datahub/ingestion/source/snowflake/snowflake_queries.py,sha256=R3QxWtdR8T_8YV_3aqt3rJdto1gAij_mEHlSYKqdCfA,28326
|
|
446
446
|
datahub/ingestion/source/snowflake/snowflake_query.py,sha256=Ex9FZZzz02cQis4bV3tzd53Pmf8p3AreuWnv9w95pJ0,39642
|
|
447
447
|
datahub/ingestion/source/snowflake/snowflake_report.py,sha256=ahea-bwpW6T0iDehGo0Qq_J7wKxPkV61aYHm8bGwDqo,6651
|
|
448
448
|
datahub/ingestion/source/snowflake/snowflake_schema.py,sha256=GFgcKV5T6VHyNwPBzzw_f8cWA9YFlWug0m6nkLoGXus,25979
|
|
@@ -454,19 +454,19 @@ datahub/ingestion/source/snowflake/snowflake_usage_v2.py,sha256=ySFm7WDk8FW9KjCn
|
|
|
454
454
|
datahub/ingestion/source/snowflake/snowflake_utils.py,sha256=EmYb2FEcdLwei92atRBQ3iKH7av4YBZCIFTgPmLo0Ng,13092
|
|
455
455
|
datahub/ingestion/source/snowflake/snowflake_v2.py,sha256=kx8aFalByIAfrp0a_kq5iyojzh9vI4od5eVGthAR5RY,33912
|
|
456
456
|
datahub/ingestion/source/sql/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
457
|
-
datahub/ingestion/source/sql/athena.py,sha256=
|
|
457
|
+
datahub/ingestion/source/sql/athena.py,sha256=H-i13vF3QdkuiXtR5WIo4eQh9qcxGtdgQQEpM09uTzg,24017
|
|
458
458
|
datahub/ingestion/source/sql/clickhouse.py,sha256=uSRy-HKAiGFTHVLoVtGoh23X0O1lwyYUaK8BaWkYhps,25555
|
|
459
459
|
datahub/ingestion/source/sql/cockroachdb.py,sha256=XaD7eae34plU9ISRC6PzYX9q6RdT2qkzjH6CpTOgkx4,1443
|
|
460
460
|
datahub/ingestion/source/sql/druid.py,sha256=lhO9CCOlHV-6LjBuAxAxtB9I1pvPtsGSdr63bz6_ilA,2837
|
|
461
461
|
datahub/ingestion/source/sql/hana.py,sha256=0PIvcX0Rz59NyR7Ag5Bv1MBV_UbJwxl9UAopo_xe_CA,1342
|
|
462
462
|
datahub/ingestion/source/sql/hive.py,sha256=NRUrEWnR1JN5U0q4CHlRacdKzxJhS4unFXnXYZT7vZE,30306
|
|
463
|
-
datahub/ingestion/source/sql/hive_metastore.py,sha256=
|
|
463
|
+
datahub/ingestion/source/sql/hive_metastore.py,sha256=fH7bAcljapYqmF8cQE7humoufFe2RVFRYOcyavMg9yo,36103
|
|
464
464
|
datahub/ingestion/source/sql/mariadb.py,sha256=Hm102kmfs_1rd4lsTYhzVMZq5S3B6cyfvpHSzJjqvMw,737
|
|
465
465
|
datahub/ingestion/source/sql/mysql.py,sha256=nDWK4YbqomcJgnit9b8geUGrp_3eix4bt0_k94o7g-0,3350
|
|
466
466
|
datahub/ingestion/source/sql/oracle.py,sha256=tVP3AiZO97psM8O8UzBb9C7__s8y4fkyQbXBv3m1LU4,24503
|
|
467
467
|
datahub/ingestion/source/sql/postgres.py,sha256=uC1kYEI8VdxiZ1Y9IxMWzwmg11wtMqYN0e2fkok1rxo,11972
|
|
468
468
|
datahub/ingestion/source/sql/presto.py,sha256=PB-CS5MX2dSRFRHjlxfkLHGXLZXFNCsVAAyRBtY6HMg,3611
|
|
469
|
-
datahub/ingestion/source/sql/sql_common.py,sha256=
|
|
469
|
+
datahub/ingestion/source/sql/sql_common.py,sha256=RuujiKCvNsAnakRGzdo80wTRdZRwXpmUDxdWu3LFYeg,48798
|
|
470
470
|
datahub/ingestion/source/sql/sql_config.py,sha256=CBXkCpzBAGrWAXJFte_i5TmpzcsMJwEjGHpfzd6vAow,8964
|
|
471
471
|
datahub/ingestion/source/sql/sql_generic.py,sha256=9AERvkK8kdJUeDOzCYJDb93xdv6Z4DGho0NfeHj5Uyg,2740
|
|
472
472
|
datahub/ingestion/source/sql/sql_generic_profiler.py,sha256=8cDmNpT_UXzYmP8-RWoDCnewmVGCj2cYCzH9_gSsF3o,11590
|
|
@@ -475,13 +475,13 @@ datahub/ingestion/source/sql/sql_types.py,sha256=uuU3taVe4oCTXkqg1wSMGzTwVleRyUR
|
|
|
475
475
|
datahub/ingestion/source/sql/sql_utils.py,sha256=q-Bsk6WxlsRtrw9RXBxvqI3zuaMTC_F25T2VrCziR9I,8418
|
|
476
476
|
datahub/ingestion/source/sql/sqlalchemy_data_reader.py,sha256=FvHZ4JEK3aR2DYOBZiT_ZsAy12RjTu4t_KIR_92B11k,2644
|
|
477
477
|
datahub/ingestion/source/sql/sqlalchemy_uri_mapper.py,sha256=KOpbmDIE2h1hyYEsbVHJi2B7FlsyUMTXZx4diyzltQg,1826
|
|
478
|
-
datahub/ingestion/source/sql/teradata.py,sha256=
|
|
478
|
+
datahub/ingestion/source/sql/teradata.py,sha256=TLmlwDc4rESrylEHaj2S98e0cPs3xjptTl8vNPG5Sl8,33407
|
|
479
479
|
datahub/ingestion/source/sql/trino.py,sha256=FEn_BQ3pm23hKx94ek5kk5IXGNYcBqZEhllRJFUzfU8,17895
|
|
480
480
|
datahub/ingestion/source/sql/two_tier_sql_source.py,sha256=YDrGBb5WKVls6qv17QU5foKrf71SydzEltc3WsVAhQc,5732
|
|
481
481
|
datahub/ingestion/source/sql/vertica.py,sha256=_9OgSgIgqBml0av063rb8nACiT3SAmzpw0ouyF91wv8,33382
|
|
482
482
|
datahub/ingestion/source/sql/mssql/__init__.py,sha256=1agpl8S_uDW40olkhCX_W19dbr5GO9qgjS3R7pLRZSk,87
|
|
483
483
|
datahub/ingestion/source/sql/mssql/job_models.py,sha256=nrRDYVKah5ep7J8-ddNX2PVPY0MIPQqkvEgO33s5L3k,7988
|
|
484
|
-
datahub/ingestion/source/sql/mssql/source.py,sha256=
|
|
484
|
+
datahub/ingestion/source/sql/mssql/source.py,sha256=sHckKQ7qMJKnH6r8rj8B-9NiIGXFLiyKTLBJh1SJxmQ,32371
|
|
485
485
|
datahub/ingestion/source/sql/mssql/stored_procedure_lineage.py,sha256=RpnvKPalAAaOD_eUg8bZ4VkGTSeLFWuy0mefwc4s3x8,2837
|
|
486
486
|
datahub/ingestion/source/state/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
487
487
|
datahub/ingestion/source/state/checkpoint.py,sha256=-fTUZKkY4nHTFqSWZ0jJkkdIu_tWlOjRNhm4FTr4ul4,8860
|
|
@@ -499,7 +499,7 @@ datahub/ingestion/source/state_provider/datahub_ingestion_checkpointing_provider
|
|
|
499
499
|
datahub/ingestion/source/state_provider/file_ingestion_checkpointing_provider.py,sha256=DziD57PbHn2Tcy51tYXCG-GQgyTGMUxnkuzVS_xihFY,4079
|
|
500
500
|
datahub/ingestion/source/state_provider/state_provider_registry.py,sha256=SVq4mIyGNmLXE9OZx1taOiNPqDoQp03-Ot9rYnB5F3k,401
|
|
501
501
|
datahub/ingestion/source/tableau/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
502
|
-
datahub/ingestion/source/tableau/tableau.py,sha256=
|
|
502
|
+
datahub/ingestion/source/tableau/tableau.py,sha256=qeght8iggvzlpFf8uHRjuflW5v26iqMRMrI73RVDgQE,154170
|
|
503
503
|
datahub/ingestion/source/tableau/tableau_common.py,sha256=iVyRI1cZcOEU_VPnR9CWVzv-OnbhDPJZApbggDUBaXk,26926
|
|
504
504
|
datahub/ingestion/source/tableau/tableau_constant.py,sha256=ZcAeHsQUXVVL26ORly0ByZk_GJAFbxaKuJAlX_sYMac,2686
|
|
505
505
|
datahub/ingestion/source/tableau/tableau_server_wrapper.py,sha256=nSyx9RzC6TCQDm-cTVJ657qT8iDwzk_8JMKpohhmOc4,1046
|
|
@@ -575,7 +575,7 @@ datahub/lite/lite_server.py,sha256=p9Oa2nNs65mqcssSIVOr7VOzWqfVstz6ZQEdT4f82S0,1
|
|
|
575
575
|
datahub/lite/lite_util.py,sha256=pgBpT3vTO1YCQ2njZRNyicSkHYeEmQCt41BaXU8WvMo,4503
|
|
576
576
|
datahub/metadata/__init__.py,sha256=AjhXPjI6cnpdcrBRrE5gOWo15vv2TTl2ctU4UAnUN7A,238
|
|
577
577
|
datahub/metadata/_schema_classes.py,sha256=n4PvKZyycu8LcAf22nUPz-s3KWlMtmcq5CJcX7R-8xM,985155
|
|
578
|
-
datahub/metadata/schema.avsc,sha256=
|
|
578
|
+
datahub/metadata/schema.avsc,sha256=TUfFwgRO345ERHijIqe5QY5elpf7T8SfB4k_YjaOlZ8,664316
|
|
579
579
|
datahub/metadata/schema_classes.py,sha256=X5Jl5EaSxyHdXOQv14pJ5WkQALun4MRpJ4q12wVFE18,1299
|
|
580
580
|
datahub/metadata/urns.py,sha256=nfrCTExR-k2P9w272WVtWSN3xW1VUJngPwP3xnvULjU,1217
|
|
581
581
|
datahub/metadata/_urns/__init__.py,sha256=cOF3GHMDgPhmbLKbN02NPpuLGHSu0qNgQyBRv08eqF0,243
|
|
@@ -654,16 +654,16 @@ datahub/metadata/com/linkedin/pegasus2avro/view/__init__.py,sha256=-Le-jOqUJKv3p
|
|
|
654
654
|
datahub/metadata/schemas/Access.avsc,sha256=gdEfWJLkvjIz-jzlceK4Dl5pBDdCHG423Ba_EYGQgUk,1562
|
|
655
655
|
datahub/metadata/schemas/Actors.avsc,sha256=M76L2_Dlp7VyhVtu9__jhnh8rBNvNobtNJUfvl7bcPE,1188
|
|
656
656
|
datahub/metadata/schemas/AssertionActions.avsc,sha256=zrvXzX2Nv_dmK6I3ZXCVWQ1bVs1q01Gl9sDRJA8oSDU,1618
|
|
657
|
-
datahub/metadata/schemas/AssertionInfo.avsc,sha256=
|
|
657
|
+
datahub/metadata/schemas/AssertionInfo.avsc,sha256=djiUVdw0pGd_Ex7uJspasTx2xwwCnd9cpItd76VJqYw,125296
|
|
658
658
|
datahub/metadata/schemas/AssertionKey.avsc,sha256=EjNaTyzGxtWzTsZd87P2ZSaGX5dn8Y7HGBdqvlQVrFI,638
|
|
659
659
|
datahub/metadata/schemas/AssertionRunEvent.avsc,sha256=FUyV73bUliBC-a_XFUlfgh75o99-lu1fl36b2q8Pqx4,12886
|
|
660
660
|
datahub/metadata/schemas/BrowsePaths.avsc,sha256=NR_4dKuJMk1X2RB4DLkHVSqyMQc4PvT7eR0n6lM5aOM,654
|
|
661
661
|
datahub/metadata/schemas/BrowsePathsV2.avsc,sha256=rpcXUONOmxCzTzUJZ4UxR5rk3AotiaHkCfqM5uJELjY,1876
|
|
662
|
-
datahub/metadata/schemas/BusinessAttributeInfo.avsc,sha256=
|
|
662
|
+
datahub/metadata/schemas/BusinessAttributeInfo.avsc,sha256=5HpEN9ZP6qdkcIib01F9n54dHoNDrGrml_9o_ZO5JTc,22062
|
|
663
663
|
datahub/metadata/schemas/BusinessAttributeKey.avsc,sha256=TlQpWyALuTh-LbA784D0t4nnsOJbnaJEE9JFgnBd0hs,525
|
|
664
|
-
datahub/metadata/schemas/BusinessAttributes.avsc,sha256=
|
|
664
|
+
datahub/metadata/schemas/BusinessAttributes.avsc,sha256=UnBdJWrdl4S147IE1zDQh5oCL_R9gB6yomuEurPbS2w,1658
|
|
665
665
|
datahub/metadata/schemas/CaveatsAndRecommendations.avsc,sha256=8AYeLClkdogSvUo_3aoY3b47ZPhpFw2KlaFt7KAfuQc,2833
|
|
666
|
-
datahub/metadata/schemas/ChartInfo.avsc,sha256=
|
|
666
|
+
datahub/metadata/schemas/ChartInfo.avsc,sha256=q2djVFyUvWZ1xn3yIZB1aMck65W2nnshcPysHhVs2lw,11481
|
|
667
667
|
datahub/metadata/schemas/ChartKey.avsc,sha256=DvNHmP9vn2LNSymEK9TSsqYGvhbnVDhHG4056Af6Az0,1332
|
|
668
668
|
datahub/metadata/schemas/ChartQuery.avsc,sha256=6qz8Q5wa5h0GS6QcwfzVZrRi26PoEwXyjIwSqL8nyhk,919
|
|
669
669
|
datahub/metadata/schemas/ChartUsageStatistics.avsc,sha256=FjEEPj_19jUvJcS9cyZtHqByQyPdt2xhmxfFdw9mSM4,5881
|
|
@@ -763,7 +763,7 @@ datahub/metadata/schemas/EditableMLModelGroupProperties.avsc,sha256=Ei1s7js-UPdg
|
|
|
763
763
|
datahub/metadata/schemas/EditableMLModelProperties.avsc,sha256=AkkIWlTDJUEMtEsujpoy9s8XMxRMN1FjqPi9XoZvBmQ,534
|
|
764
764
|
datahub/metadata/schemas/EditableMLPrimaryKeyProperties.avsc,sha256=DZjI7cyBjCVcvkoleU-YK8uoZ6de7mZ5ohw1P-dafXM,451
|
|
765
765
|
datahub/metadata/schemas/EditableNotebookProperties.avsc,sha256=Mi5kplj5VNbv1z25N-PZ2ZfNW9cZUkwJHN8_37TY0bs,3809
|
|
766
|
-
datahub/metadata/schemas/EditableSchemaMetadata.avsc,sha256=
|
|
766
|
+
datahub/metadata/schemas/EditableSchemaMetadata.avsc,sha256=s135EIj1sXDoQkCpExRIJWyi7dt2aZ1tV_84A83TJxc,19032
|
|
767
767
|
datahub/metadata/schemas/Embed.avsc,sha256=NjRynC2b3rqXV4MF39xxlYFFCgFjVabrR9NRTKhYT-w,401
|
|
768
768
|
datahub/metadata/schemas/EntityChangeEvent.avsc,sha256=NMEcBvcUEC_lYoOug60AKzOqWfuxRvelXFwyfbZlp0Y,3722
|
|
769
769
|
datahub/metadata/schemas/EntityTypeInfo.avsc,sha256=QVZqy_y1tbxLhvh4k2Mb11otbSC-Xmtv6d30TH-LN3w,753
|
|
@@ -786,7 +786,7 @@ datahub/metadata/schemas/GlossaryNodeKey.avsc,sha256=rcOPY6fi_CX8xLQjHC6ndQyk90b
|
|
|
786
786
|
datahub/metadata/schemas/GlossaryRelatedTerms.avsc,sha256=ZTP0mrFD4y-C6JekRy8IVuHvICUkJib-ZAYD93Gv1tA,2763
|
|
787
787
|
datahub/metadata/schemas/GlossaryTermInfo.avsc,sha256=j4s9NCyMOIF03HfaXoQEIkiMTRaCy_-euhenptfu7IA,2935
|
|
788
788
|
datahub/metadata/schemas/GlossaryTermKey.avsc,sha256=mxrtJZ06DPEFiB-uuGe_omriUH7RuibIqFyAqpjuwzw,818
|
|
789
|
-
datahub/metadata/schemas/GlossaryTerms.avsc,sha256=
|
|
789
|
+
datahub/metadata/schemas/GlossaryTerms.avsc,sha256=ogOFO6Hr2Xb7s1JHqxsCPY8r_qY_9kwu69k5-E3j2BM,7123
|
|
790
790
|
datahub/metadata/schemas/GroupMembership.avsc,sha256=wT3Hbpv2Z7V4X_-rIoed0cukAOMyYEL93udK8mMCjn0,557
|
|
791
791
|
datahub/metadata/schemas/IcebergCatalogInfo.avsc,sha256=X9Ejqzn1DyxNIth7vDhtPjGG4xMPQMhl7f-S7fBFxek,691
|
|
792
792
|
datahub/metadata/schemas/IcebergWarehouseInfo.avsc,sha256=cl_3cWPyVdTWUuV0OAODrRVAa3fzrxmGE72fJ-xLcjo,2445
|
|
@@ -794,7 +794,7 @@ datahub/metadata/schemas/IncidentInfo.avsc,sha256=JCKSXCjTwwONte-GA4QhstlBn5Ditu
|
|
|
794
794
|
datahub/metadata/schemas/IncidentKey.avsc,sha256=Pip__DyNNTal7NxryM3kFi9qHlwntp1rIA8Al8Zz264,542
|
|
795
795
|
datahub/metadata/schemas/IncidentSource.avsc,sha256=lY_SarA3cM55KNENcB5z1Gu2MygxEl9l7R8LdMak9AQ,1199
|
|
796
796
|
datahub/metadata/schemas/IncidentsSummary.avsc,sha256=NTYp-6Oe92ALApbM3759TJ5pLXRArsSriIPq-f7w9vI,4514
|
|
797
|
-
datahub/metadata/schemas/InputFields.avsc,sha256=
|
|
797
|
+
datahub/metadata/schemas/InputFields.avsc,sha256=f3SFxnV3-K2D59ctC5H2xCRx8uwqZTRI95KgSotQT-k,33832
|
|
798
798
|
datahub/metadata/schemas/InstitutionalMemory.avsc,sha256=vNeAoFSIH1jEDa2rEyTStUjWDvf53W9AvL7F8oh7isY,3785
|
|
799
799
|
datahub/metadata/schemas/IntendedUse.avsc,sha256=IKZSWdvc0uAyyT-FtdQOGbMC-P7RS9cO0vOVKWT6fbw,1361
|
|
800
800
|
datahub/metadata/schemas/InviteToken.avsc,sha256=8k_9MxHu9GVf7gvS0SlnQu7tJfpbXsRFdz6lQrFKPNc,737
|
|
@@ -815,7 +815,7 @@ datahub/metadata/schemas/MLModelProperties.avsc,sha256=hDCBHxGe-cmCBeU1k0ANuQlKj
|
|
|
815
815
|
datahub/metadata/schemas/MLPrimaryKeyKey.avsc,sha256=mX4CQcoN3FC_VQDBCkhlmJk4pfQKDrSeuqqCTTXTmq8,1092
|
|
816
816
|
datahub/metadata/schemas/MLPrimaryKeyProperties.avsc,sha256=URIuOpS93RVk8MZVcbZ-dmTwu_cN3KSOKxSR8fm-eTo,6744
|
|
817
817
|
datahub/metadata/schemas/MLTrainingRunProperties.avsc,sha256=WGgj0MuQrGD4UgvyHCJHzTnHja2LlJTOr1gLu8SySj0,4269
|
|
818
|
-
datahub/metadata/schemas/MetadataChangeEvent.avsc,sha256=
|
|
818
|
+
datahub/metadata/schemas/MetadataChangeEvent.avsc,sha256=QYen3-heNEk_r4FoP72yWiJOZ4dnS6nJASdkdnG7-QQ,373573
|
|
819
819
|
datahub/metadata/schemas/MetadataChangeLog.avsc,sha256=mpdodpx25E6M1Gq_7slEcPAm-1Es5xPsoqV60HgO7zg,12167
|
|
820
820
|
datahub/metadata/schemas/MetadataChangeProposal.avsc,sha256=EMfQrYsuHf1p6UvBjoLtfdTHGe-vGNJaCFEHz8hdKU0,9698
|
|
821
821
|
datahub/metadata/schemas/Metrics.avsc,sha256=O7DJGjOwmHbb1x_Zj7AuM_HaHKjBvkfJKfUsX8icXD4,690
|
|
@@ -845,12 +845,12 @@ datahub/metadata/schemas/RoleProperties.avsc,sha256=tDw-WF1uBGIcrk38nOnXs3FCF_Yj
|
|
|
845
845
|
datahub/metadata/schemas/SchemaFieldAliases.avsc,sha256=El_cxn0KUhMf2LGfMPzcZ6Xtths2wQOaF9fnM1KQmxQ,560
|
|
846
846
|
datahub/metadata/schemas/SchemaFieldInfo.avsc,sha256=Gf9EGqrEf10554hd4Eut7T8ZdOR-9OHgDXVRhFo311o,800
|
|
847
847
|
datahub/metadata/schemas/SchemaFieldKey.avsc,sha256=TK_RiRbTm9965OxlQH28-x-KH0lpavW3zMlXx5ChnJ0,967
|
|
848
|
-
datahub/metadata/schemas/SchemaMetadata.avsc,sha256=
|
|
848
|
+
datahub/metadata/schemas/SchemaMetadata.avsc,sha256=aOuIAYN_ISWQRhRSBNvM6wb3oQz6o_V-DnUMn4oOUPU,40994
|
|
849
849
|
datahub/metadata/schemas/Siblings.avsc,sha256=NTktntlHuA1InH3TgrspWlFBntYlqmp3erUd-JFMsps,842
|
|
850
850
|
datahub/metadata/schemas/SourceCode.avsc,sha256=tUgo2rczO5x1fxw3fYNWQj-51vRNmNIj38b1wayA0aQ,1370
|
|
851
851
|
datahub/metadata/schemas/Status.avsc,sha256=rPZSXSJdwnNywqNx2qll8cdt54aYgI-YUbRr3GK7h78,522
|
|
852
852
|
datahub/metadata/schemas/StructuredProperties.avsc,sha256=N0NNDrkqbIgEHrb5uz1ynwZh3mb_ICVK7tDcnBLMfjI,4032
|
|
853
|
-
datahub/metadata/schemas/StructuredPropertyDefinition.avsc,sha256=
|
|
853
|
+
datahub/metadata/schemas/StructuredPropertyDefinition.avsc,sha256=a-6TaOQ4A7LDFLshmaFRBcXjz11p4vM0Q3X35GN4Zo0,11737
|
|
854
854
|
datahub/metadata/schemas/StructuredPropertyKey.avsc,sha256=lp7tQBgeriEU1YMQ6a4-6aUGSWDqNl00lLDym97j1yI,618
|
|
855
855
|
datahub/metadata/schemas/StructuredPropertySettings.avsc,sha256=EDNlXfT1TqogfulCanIc-nuYO9ZxRFOGzD9tl3ZJdB8,3732
|
|
856
856
|
datahub/metadata/schemas/SubTypes.avsc,sha256=bhXbzK020zDyQno97Xp05vmoMeZ82IGu2jz7pWDo3RQ,655
|
|
@@ -904,12 +904,12 @@ datahub/sql_parsing/_models.py,sha256=il-xm1RcLdi1phJUV3xrTecdOGH31akqheuSC2N4Yh
|
|
|
904
904
|
datahub/sql_parsing/_sqlglot_patch.py,sha256=iYJ8zOThHqqbamD5jdNr9iHTWD7ewNeHzPiTb6-rO3Y,7043
|
|
905
905
|
datahub/sql_parsing/datajob.py,sha256=1X8KpEk-y3_8xJuA_Po27EHZgOcxK9QADI6Om9gSGn0,1751
|
|
906
906
|
datahub/sql_parsing/query_types.py,sha256=FKjDzszZzsrCfYfm7dgD6T_8865qxWl767fdGyHWBh4,2720
|
|
907
|
-
datahub/sql_parsing/schema_resolver.py,sha256=
|
|
907
|
+
datahub/sql_parsing/schema_resolver.py,sha256=ISuingLcQnOJZkNXBkc73uPwYUbbOtERAjgGhJajDiQ,10782
|
|
908
908
|
datahub/sql_parsing/split_statements.py,sha256=Vi8VAgaEkGcK5bs48L-Krig3qhjxcvqvotCpL0ux-EY,8674
|
|
909
909
|
datahub/sql_parsing/sql_parsing_aggregator.py,sha256=XNZWjeaRhzaT92mzsJZGJfYaxJENsyp5dSHTmL81RIc,70130
|
|
910
910
|
datahub/sql_parsing/sql_parsing_common.py,sha256=h_V_m54hJ9EUh5kczq7cYOIeNeo4bgf0Px0H-Nq-UIg,2602
|
|
911
911
|
datahub/sql_parsing/sql_parsing_result_utils.py,sha256=prwWTj1EB2fRPv1eMB4EkpFNafIYAt-X8TIK0NWqank,796
|
|
912
|
-
datahub/sql_parsing/sqlglot_lineage.py,sha256=
|
|
912
|
+
datahub/sql_parsing/sqlglot_lineage.py,sha256=l0kT8MuRIg96X7BNJaboMznF54b-yvM2nMTLyF2d0Nw,47446
|
|
913
913
|
datahub/sql_parsing/sqlglot_utils.py,sha256=6W6MQ5Yh0xXT9_h0jd19yoGWMdXicyRBDD_FwV7nj04,14701
|
|
914
914
|
datahub/sql_parsing/tool_meta_extractor.py,sha256=qEPq8RFWyK0tmSPNlluvd5cxgwbd2v6m9ViSY4hm2QM,6822
|
|
915
915
|
datahub/telemetry/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -917,14 +917,15 @@ datahub/telemetry/stats.py,sha256=TwaQisQlD2Bk0uw__pP6u3Ovz9r-Ip4pCwpnto4r5e0,95
|
|
|
917
917
|
datahub/telemetry/telemetry.py,sha256=sGe3RsrkX1L_jrsRuz5Fd7_9vEY6mHMtkMqR_9_axbo,15025
|
|
918
918
|
datahub/testing/__init__.py,sha256=TywIuzGQvzJsNhI_PGD1RFk11M3RtGl9jIMtAVVHIkg,272
|
|
919
919
|
datahub/testing/check_imports.py,sha256=qs2bk__DeAlsvh-Y9ln9FQfG9DsdIVuSoxkoh4pMmms,2316
|
|
920
|
-
datahub/testing/check_sql_parser_result.py,sha256=
|
|
920
|
+
datahub/testing/check_sql_parser_result.py,sha256=1RV73w0Q7Jv7XoIz870oaooJFut21hXg72TIBunvdm8,2661
|
|
921
921
|
datahub/testing/check_str_enum.py,sha256=yqk0XXHOGteN-IGqCp5JHy0Kca13BnI09ZqKc4Nwl3E,1187
|
|
922
|
-
datahub/testing/compare_metadata_json.py,sha256=
|
|
922
|
+
datahub/testing/compare_metadata_json.py,sha256=mTU5evu7KLS3cx8OLOC1fFxj0eY1J1CGV2PEQZmapos,5361
|
|
923
923
|
datahub/testing/docker_utils.py,sha256=g169iy_jNR_mg0p8X31cChZqjOryutAIHUYLq3xqueY,2415
|
|
924
924
|
datahub/testing/doctest.py,sha256=1_8WEhHZ2eRQtw8vsXKzr9L5zzvs0Tcr6q4mnkyyvtw,295
|
|
925
925
|
datahub/testing/mcp_diff.py,sha256=Dxde5uZHqZf1EjOkHm405OHY5PPJp03agZJM9SyR4yE,10717
|
|
926
|
+
datahub/testing/pytest_hooks.py,sha256=eifmj0M68AIfjTn_-0vtaBkKl75vNKMjsbYX-pJqmGY,1417
|
|
926
927
|
datahub/upgrade/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
927
|
-
datahub/upgrade/upgrade.py,sha256=
|
|
928
|
+
datahub/upgrade/upgrade.py,sha256=lf60_dCu51twObAL5E8NqdrW3_2lsnUJUaB9MSEVXwI,16638
|
|
928
929
|
datahub/utilities/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
929
930
|
datahub/utilities/_custom_package_loader.py,sha256=9kgPE7Y77E-hNee8l4sKtVby-btUNum3dBfDixMzcVA,2059
|
|
930
931
|
datahub/utilities/_markupsafe_compat.py,sha256=QX7c9KiHs56ASl7bJlgR4FAf3CGiY94zIr0h6Ak15To,444
|
|
@@ -944,7 +945,7 @@ datahub/utilities/hive_schema_to_avro.py,sha256=1MP0a6FFVEYxLg_4lKF7hPxbHJJy0uRQ
|
|
|
944
945
|
datahub/utilities/is_pytest.py,sha256=2m9T4S9IIKhI5RfTqrB2ZmumzHocdxBHpM1HroWj2XQ,138
|
|
945
946
|
datahub/utilities/logging_manager.py,sha256=bc-x5VZGvFUHT0HD-TF3Uz_nzw3dpKdJSbz6kjpAqAQ,10073
|
|
946
947
|
datahub/utilities/lossy_collections.py,sha256=5rdtfK2pjwvOrrzLf_KGFOMiVvLLmoXj5EVQXTFSR3E,5704
|
|
947
|
-
datahub/utilities/mapping.py,sha256=
|
|
948
|
+
datahub/utilities/mapping.py,sha256=ig7A8CRJPZc2RSEFQb5ByQkPOoE-ImEG8P3de9qg4Yo,17964
|
|
948
949
|
datahub/utilities/memory_footprint.py,sha256=mJj2lN3egTvOQPXfz8e3nsYmssaUREINCtxMsgg9e0s,1569
|
|
949
950
|
datahub/utilities/openapi_utils.py,sha256=VNiNo1Pjvtn2MLShQ1vCjc27id7LmI-pnLdjlUatNk4,2233
|
|
950
951
|
datahub/utilities/ordered_set.py,sha256=p2DdvbD98ELTLCxgdZdOKQ50VnnMDKr3l9fmqCzu5g4,1135
|
|
@@ -1012,9 +1013,9 @@ datahub_provider/operators/datahub_assertion_operator.py,sha256=uvTQ-jk2F0sbqqxp
|
|
|
1012
1013
|
datahub_provider/operators/datahub_assertion_sensor.py,sha256=lCBj_3x1cf5GMNpHdfkpHuyHfVxsm6ff5x2Z5iizcAo,140
|
|
1013
1014
|
datahub_provider/operators/datahub_operation_operator.py,sha256=aevDp2FzX7FxGlXrR0khoHNbxbhKR2qPEX5e8O2Jyzw,174
|
|
1014
1015
|
datahub_provider/operators/datahub_operation_sensor.py,sha256=8fcdVBCEPgqy1etTXgLoiHoJrRt_nzFZQMdSzHqSG7M,168
|
|
1015
|
-
acryl_datahub-1.0.
|
|
1016
|
-
acryl_datahub-1.0.
|
|
1017
|
-
acryl_datahub-1.0.
|
|
1018
|
-
acryl_datahub-1.0.
|
|
1019
|
-
acryl_datahub-1.0.
|
|
1020
|
-
acryl_datahub-1.0.
|
|
1016
|
+
acryl_datahub-1.0.0rc3.dist-info/LICENSE,sha256=9xNHpsD0uYF5ONzXsKDCuHHB-xbiCrSbueWXqrTNsxk,11365
|
|
1017
|
+
acryl_datahub-1.0.0rc3.dist-info/METADATA,sha256=OkC6rVw9ET8QynFmJiMs32eyG947NHAhIMkzoTbpv8U,175366
|
|
1018
|
+
acryl_datahub-1.0.0rc3.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
|
1019
|
+
acryl_datahub-1.0.0rc3.dist-info/entry_points.txt,sha256=U1e5ZwqPX1OaIbvGrwvozcdB8SbzFYXQM7plpdLKKeo,9592
|
|
1020
|
+
acryl_datahub-1.0.0rc3.dist-info/top_level.txt,sha256=iLjSrLK5ox1YVYcglRUkcvfZPvKlobBWx7CTUXx8_GI,25
|
|
1021
|
+
acryl_datahub-1.0.0rc3.dist-info/RECORD,,
|
datahub/_version.py
CHANGED
datahub/cli/docker_cli.py
CHANGED
|
@@ -430,7 +430,7 @@ def detect_quickstart_arch(arch: Optional[str]) -> Architectures:
|
|
|
430
430
|
return quickstart_arch
|
|
431
431
|
|
|
432
432
|
|
|
433
|
-
@docker.command()
|
|
433
|
+
@docker.command()
|
|
434
434
|
@click.option(
|
|
435
435
|
"--version",
|
|
436
436
|
type=str,
|
|
@@ -592,7 +592,7 @@ def detect_quickstart_arch(arch: Optional[str]) -> Architectures:
|
|
|
592
592
|
"arch",
|
|
593
593
|
]
|
|
594
594
|
)
|
|
595
|
-
def quickstart(
|
|
595
|
+
def quickstart(
|
|
596
596
|
version: Optional[str],
|
|
597
597
|
build_locally: bool,
|
|
598
598
|
pull_images: bool,
|
datahub/configuration/common.py
CHANGED
|
@@ -20,7 +20,7 @@ from pydantic import BaseModel, Extra, ValidationError
|
|
|
20
20
|
from pydantic.fields import Field
|
|
21
21
|
from typing_extensions import Protocol, Self
|
|
22
22
|
|
|
23
|
-
from datahub.configuration._config_enum import ConfigEnum as ConfigEnum
|
|
23
|
+
from datahub.configuration._config_enum import ConfigEnum as ConfigEnum
|
|
24
24
|
from datahub.configuration.pydantic_migration_helpers import PYDANTIC_VERSION_2
|
|
25
25
|
from datahub.utilities.dedup_list import deduplicate_list
|
|
26
26
|
|
|
@@ -3,7 +3,7 @@ from enum import Enum, auto
|
|
|
3
3
|
from typing import Callable, Dict, Optional, Type
|
|
4
4
|
|
|
5
5
|
from datahub.ingestion.api.common import PipelineContext
|
|
6
|
-
from datahub.ingestion.api.source import (
|
|
6
|
+
from datahub.ingestion.api.source import (
|
|
7
7
|
Source,
|
|
8
8
|
SourceCapability as SourceCapability,
|
|
9
9
|
)
|
|
@@ -33,7 +33,7 @@ from datahub.emitter.mce_builder import DEFAULT_ENV, Aspect
|
|
|
33
33
|
from datahub.emitter.mcp import MetadataChangeProposalWrapper
|
|
34
34
|
from datahub.emitter.rest_emitter import DatahubRestEmitter
|
|
35
35
|
from datahub.emitter.serialization_helper import post_json_transform
|
|
36
|
-
from datahub.ingestion.graph.config import (
|
|
36
|
+
from datahub.ingestion.graph.config import (
|
|
37
37
|
DatahubClientConfig as DatahubClientConfig,
|
|
38
38
|
)
|
|
39
39
|
from datahub.ingestion.graph.connections import (
|
|
@@ -5,7 +5,7 @@ import urllib
|
|
|
5
5
|
from collections import defaultdict
|
|
6
6
|
from dataclasses import dataclass, field
|
|
7
7
|
from time import sleep
|
|
8
|
-
from typing import Dict, Iterable, List, Optional, Union
|
|
8
|
+
from typing import Dict, Iterable, List, Optional, Set, Union
|
|
9
9
|
|
|
10
10
|
import nest_asyncio
|
|
11
11
|
from okta.client import Client as OktaClient
|
|
@@ -77,6 +77,10 @@ class OktaConfig(StatefulIngestionConfigBase, ConfigModel):
|
|
|
77
77
|
default=True,
|
|
78
78
|
description="Whether group membership should be ingested into DataHub. ingest_groups must be True if this is True.",
|
|
79
79
|
)
|
|
80
|
+
ingest_groups_users: bool = Field(
|
|
81
|
+
default=True,
|
|
82
|
+
description="Only ingest users belonging to the selected groups. This option is only useful when `ingest_users` is set to False and `ingest_group_membership` to True.",
|
|
83
|
+
)
|
|
80
84
|
|
|
81
85
|
# Optional: Customize the mapping to DataHub Username from an attribute appearing in the Okta User
|
|
82
86
|
# profile. Reference: https://developer.okta.com/docs/reference/api/users/
|
|
@@ -344,6 +348,7 @@ class OktaSource(StatefulIngestionSourceBase):
|
|
|
344
348
|
aspect=StatusClass(removed=False),
|
|
345
349
|
).as_workunit()
|
|
346
350
|
|
|
351
|
+
okta_users: Set[User] = set()
|
|
347
352
|
# Step 2: Populate GroupMembership Aspects for CorpUsers
|
|
348
353
|
datahub_corp_user_urn_to_group_membership: Dict[str, GroupMembershipClass] = (
|
|
349
354
|
defaultdict(lambda: GroupMembershipClass(groups=[]))
|
|
@@ -372,6 +377,9 @@ class OktaSource(StatefulIngestionSourceBase):
|
|
|
372
377
|
self.report.report_failure("okta_user_mapping", error_str)
|
|
373
378
|
continue
|
|
374
379
|
|
|
380
|
+
if self.config.ingest_groups_users:
|
|
381
|
+
okta_users.add(okta_user)
|
|
382
|
+
|
|
375
383
|
# Update the GroupMembership aspect for this group member.
|
|
376
384
|
datahub_corp_user_urn_to_group_membership[
|
|
377
385
|
datahub_corp_user_urn
|
|
@@ -379,7 +387,10 @@ class OktaSource(StatefulIngestionSourceBase):
|
|
|
379
387
|
|
|
380
388
|
# Step 3: Produce MetadataWorkUnits for CorpUsers.
|
|
381
389
|
if self.config.ingest_users:
|
|
382
|
-
|
|
390
|
+
# we can just throw away collected okta users so far and fetch them all
|
|
391
|
+
okta_users = set(self._get_okta_users(event_loop))
|
|
392
|
+
|
|
393
|
+
if okta_users:
|
|
383
394
|
filtered_okta_users = filter(self._filter_okta_user, okta_users)
|
|
384
395
|
datahub_corp_user_snapshots = self._map_okta_users(filtered_okta_users)
|
|
385
396
|
for user_count, datahub_corp_user_snapshot in enumerate(
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import logging
|
|
2
|
-
from typing import Iterable, List, Optional, Type
|
|
2
|
+
from typing import Dict, Iterable, List, Optional, Type
|
|
3
3
|
|
|
4
4
|
import jpype
|
|
5
5
|
import jpype.imports
|
|
@@ -121,7 +121,11 @@ class KafkaConnectSource(StatefulIngestionSourceBase):
|
|
|
121
121
|
connector_manifest.config, self.config.provided_configs
|
|
122
122
|
)
|
|
123
123
|
connector_manifest.url = connector_url
|
|
124
|
-
connector_manifest.topic_names = self._get_connector_topics(
|
|
124
|
+
connector_manifest.topic_names = self._get_connector_topics(
|
|
125
|
+
connector_name=connector_name,
|
|
126
|
+
config=connector_manifest.config,
|
|
127
|
+
connector_type=connector_manifest.type,
|
|
128
|
+
)
|
|
125
129
|
connector_class_value = connector_manifest.config.get(CONNECTOR_CLASS) or ""
|
|
126
130
|
|
|
127
131
|
class_type: Type[BaseConnector] = BaseConnector
|
|
@@ -203,7 +207,9 @@ class KafkaConnectSource(StatefulIngestionSourceBase):
|
|
|
203
207
|
|
|
204
208
|
return response.json()
|
|
205
209
|
|
|
206
|
-
def _get_connector_topics(
|
|
210
|
+
def _get_connector_topics(
|
|
211
|
+
self, connector_name: str, config: Dict[str, str], connector_type: str
|
|
212
|
+
) -> List[str]:
|
|
207
213
|
try:
|
|
208
214
|
response = self.session.get(
|
|
209
215
|
f"{self.config.connect_uri}/connectors/{connector_name}/topics",
|
|
@@ -215,7 +221,21 @@ class KafkaConnectSource(StatefulIngestionSourceBase):
|
|
|
215
221
|
)
|
|
216
222
|
return []
|
|
217
223
|
|
|
218
|
-
|
|
224
|
+
processed_topics = response.json()[connector_name]["topics"]
|
|
225
|
+
|
|
226
|
+
if connector_type == SINK:
|
|
227
|
+
try:
|
|
228
|
+
return SinkTopicFilter().filter_stale_topics(processed_topics, config)
|
|
229
|
+
except Exception as e:
|
|
230
|
+
self.report.warning(
|
|
231
|
+
title="Error parsing sink conector topics configuration",
|
|
232
|
+
message="Some stale lineage tasks might show up for connector",
|
|
233
|
+
context=connector_name,
|
|
234
|
+
exc=e,
|
|
235
|
+
)
|
|
236
|
+
return processed_topics
|
|
237
|
+
else:
|
|
238
|
+
return processed_topics
|
|
219
239
|
|
|
220
240
|
def construct_flow_workunit(self, connector: ConnectorManifest) -> MetadataWorkUnit:
|
|
221
241
|
connector_name = connector.name
|
|
@@ -359,3 +379,76 @@ class KafkaConnectSource(StatefulIngestionSourceBase):
|
|
|
359
379
|
return builder.make_dataset_urn_with_platform_instance(
|
|
360
380
|
platform, name, platform_instance, self.config.env
|
|
361
381
|
)
|
|
382
|
+
|
|
383
|
+
|
|
384
|
+
class SinkTopicFilter:
|
|
385
|
+
"""Helper class to filter Kafka Connect topics based on configuration."""
|
|
386
|
+
|
|
387
|
+
def filter_stale_topics(
|
|
388
|
+
self,
|
|
389
|
+
processed_topics: List[str],
|
|
390
|
+
sink_config: Dict[str, str],
|
|
391
|
+
) -> List[str]:
|
|
392
|
+
"""
|
|
393
|
+
Kafka-connect's /topics API returns the set of topic names the connector has been using
|
|
394
|
+
since its creation or since the last time its set of active topics was reset. This means-
|
|
395
|
+
if a topic was ever used by a connector, it will be returned, even if it is no longer used.
|
|
396
|
+
To remove these stale topics from the list, we double-check the list returned by the API
|
|
397
|
+
against the sink connector's config.
|
|
398
|
+
Sink connectors configure exactly one of `topics` or `topics.regex`
|
|
399
|
+
https://kafka.apache.org/documentation/#sinkconnectorconfigs_topics
|
|
400
|
+
|
|
401
|
+
Args:
|
|
402
|
+
processed_topics: List of topics currently being processed
|
|
403
|
+
sink_config: Configuration dictionary for the sink connector
|
|
404
|
+
|
|
405
|
+
Returns:
|
|
406
|
+
List of filtered topics that match the configuration
|
|
407
|
+
|
|
408
|
+
Raises:
|
|
409
|
+
ValueError: If sink connector configuration is missing both 'topics' and 'topics.regex' fields
|
|
410
|
+
|
|
411
|
+
"""
|
|
412
|
+
# Absence of topics config is a defensive NOOP,
|
|
413
|
+
# although this should never happen in real world
|
|
414
|
+
if not self.has_topic_config(sink_config):
|
|
415
|
+
logger.warning(
|
|
416
|
+
f"Found sink without topics config {sink_config.get(CONNECTOR_CLASS)}"
|
|
417
|
+
)
|
|
418
|
+
return processed_topics
|
|
419
|
+
|
|
420
|
+
# Handle explicit topic list
|
|
421
|
+
if sink_config.get("topics"):
|
|
422
|
+
return self._filter_by_topic_list(processed_topics, sink_config["topics"])
|
|
423
|
+
else:
|
|
424
|
+
# Handle regex pattern
|
|
425
|
+
return self._filter_by_topic_regex(
|
|
426
|
+
processed_topics, sink_config["topics.regex"]
|
|
427
|
+
)
|
|
428
|
+
|
|
429
|
+
def has_topic_config(self, sink_config: Dict[str, str]) -> bool:
|
|
430
|
+
"""Check if sink config has either topics or topics.regex."""
|
|
431
|
+
return bool(sink_config.get("topics") or sink_config.get("topics.regex"))
|
|
432
|
+
|
|
433
|
+
def _filter_by_topic_list(
|
|
434
|
+
self, processed_topics: List[str], topics_config: str
|
|
435
|
+
) -> List[str]:
|
|
436
|
+
"""Filter topics based on explicit topic list from config."""
|
|
437
|
+
config_topics = [
|
|
438
|
+
topic.strip() for topic in topics_config.split(",") if topic.strip()
|
|
439
|
+
]
|
|
440
|
+
return [topic for topic in processed_topics if topic in config_topics]
|
|
441
|
+
|
|
442
|
+
def _filter_by_topic_regex(
|
|
443
|
+
self, processed_topics: List[str], regex_pattern: str
|
|
444
|
+
) -> List[str]:
|
|
445
|
+
"""Filter topics based on regex pattern from config."""
|
|
446
|
+
from java.util.regex import Pattern
|
|
447
|
+
|
|
448
|
+
regex_matcher = Pattern.compile(regex_pattern)
|
|
449
|
+
|
|
450
|
+
return [
|
|
451
|
+
topic
|
|
452
|
+
for topic in processed_topics
|
|
453
|
+
if regex_matcher.matcher(topic).matches()
|
|
454
|
+
]
|
|
@@ -175,7 +175,7 @@ class BigQuerySinkConnector(BaseConnector):
|
|
|
175
175
|
class BQParser:
|
|
176
176
|
project: str
|
|
177
177
|
target_platform: str
|
|
178
|
-
sanitizeTopics:
|
|
178
|
+
sanitizeTopics: bool
|
|
179
179
|
transforms: list
|
|
180
180
|
topicsToTables: Optional[str] = None
|
|
181
181
|
datasets: Optional[str] = None
|
|
@@ -187,7 +187,7 @@ class BigQuerySinkConnector(BaseConnector):
|
|
|
187
187
|
connector_manifest: ConnectorManifest,
|
|
188
188
|
) -> BQParser:
|
|
189
189
|
project = connector_manifest.config["project"]
|
|
190
|
-
sanitizeTopics = connector_manifest.config.get("sanitizeTopics"
|
|
190
|
+
sanitizeTopics = connector_manifest.config.get("sanitizeTopics") or "false"
|
|
191
191
|
transform_names = (
|
|
192
192
|
self.connector_manifest.config.get("transforms", "").split(",")
|
|
193
193
|
if self.connector_manifest.config.get("transforms")
|
|
@@ -107,9 +107,9 @@ class ConfluentJDBCSourceConnector(BaseConnector):
|
|
|
107
107
|
assert database_name
|
|
108
108
|
db_connection_url = f"{url_instance.drivername}://{url_instance.host}:{url_instance.port}/{database_name}"
|
|
109
109
|
|
|
110
|
-
topic_prefix = self.connector_manifest.config.get("topic.prefix"
|
|
110
|
+
topic_prefix = self.connector_manifest.config.get("topic.prefix") or ""
|
|
111
111
|
|
|
112
|
-
query = self.connector_manifest.config.get("query"
|
|
112
|
+
query = self.connector_manifest.config.get("query") or ""
|
|
113
113
|
|
|
114
114
|
transform_names = (
|
|
115
115
|
self.connector_manifest.config.get("transforms", "").split(",")
|