acryl-datahub 1.0.0.2rc4__py3-none-any.whl → 1.0.0.3rc1__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.0.2rc4.dist-info → acryl_datahub-1.0.0.3rc1.dist-info}/METADATA +2433 -2433
- {acryl_datahub-1.0.0.2rc4.dist-info → acryl_datahub-1.0.0.3rc1.dist-info}/RECORD +30 -28
- datahub/_version.py +1 -1
- datahub/ingestion/api/auto_work_units/auto_ensure_aspect_size.py +2 -1
- datahub/ingestion/source/hex/api.py +1 -20
- datahub/ingestion/source/hex/query_fetcher.py +4 -1
- datahub/ingestion/source/sigma/config.py +75 -6
- datahub/ingestion/source/sigma/sigma.py +16 -1
- datahub/ingestion/source/sigma/sigma_api.py +99 -58
- datahub/ingestion/source/snowflake/snowflake_queries.py +18 -4
- datahub/ingestion/source/snowflake/snowflake_query.py +1 -1
- datahub/ingestion/source/sql/stored_procedures/base.py +12 -1
- datahub/metadata/_schema_classes.py +47 -2
- datahub/metadata/_urns/urn_defs.py +56 -0
- datahub/metadata/com/linkedin/pegasus2avro/metadata/key/__init__.py +2 -0
- datahub/metadata/schema.avsc +121 -85
- datahub/metadata/schemas/DataHubOpenAPISchemaKey.avsc +22 -0
- datahub/metadata/schemas/DataTransformLogic.avsc +4 -2
- datahub/metadata/schemas/FormInfo.avsc +5 -0
- datahub/metadata/schemas/MLModelDeploymentProperties.avsc +3 -0
- datahub/metadata/schemas/MetadataChangeEvent.avsc +6 -0
- datahub/metadata/schemas/MetadataChangeLog.avsc +3 -0
- datahub/metadata/schemas/MetadataChangeProposal.avsc +3 -0
- datahub/metadata/schemas/QueryProperties.avsc +4 -2
- datahub/metadata/schemas/SystemMetadata.avsc +86 -0
- datahub/sql_parsing/sqlglot_utils.py +16 -8
- {acryl_datahub-1.0.0.2rc4.dist-info → acryl_datahub-1.0.0.3rc1.dist-info}/WHEEL +0 -0
- {acryl_datahub-1.0.0.2rc4.dist-info → acryl_datahub-1.0.0.3rc1.dist-info}/entry_points.txt +0 -0
- {acryl_datahub-1.0.0.2rc4.dist-info → acryl_datahub-1.0.0.3rc1.dist-info}/licenses/LICENSE +0 -0
- {acryl_datahub-1.0.0.2rc4.dist-info → acryl_datahub-1.0.0.3rc1.dist-info}/top_level.txt +0 -0
datahub/metadata/schema.avsc
CHANGED
|
@@ -2343,12 +2343,14 @@
|
|
|
2343
2343
|
"type": {
|
|
2344
2344
|
"type": "enum",
|
|
2345
2345
|
"symbolDocs": {
|
|
2346
|
-
"SQL": "A SQL Query"
|
|
2346
|
+
"SQL": "A SQL Query",
|
|
2347
|
+
"UNKNOWN": "Unknown query language"
|
|
2347
2348
|
},
|
|
2348
2349
|
"name": "QueryLanguage",
|
|
2349
2350
|
"namespace": "com.linkedin.pegasus2avro.query",
|
|
2350
2351
|
"symbols": [
|
|
2351
|
-
"SQL"
|
|
2352
|
+
"SQL",
|
|
2353
|
+
"UNKNOWN"
|
|
2352
2354
|
]
|
|
2353
2355
|
},
|
|
2354
2356
|
"name": "language",
|
|
@@ -2887,6 +2889,11 @@
|
|
|
2887
2889
|
"namespace": "com.linkedin.pegasus2avro.form",
|
|
2888
2890
|
"fields": [
|
|
2889
2891
|
{
|
|
2892
|
+
"Searchable": {
|
|
2893
|
+
"fieldName": "promptId",
|
|
2894
|
+
"fieldType": "KEYWORD",
|
|
2895
|
+
"queryByDefault": false
|
|
2896
|
+
},
|
|
2890
2897
|
"type": "string",
|
|
2891
2898
|
"name": "id",
|
|
2892
2899
|
"doc": "The unique id for this prompt. This must be GLOBALLY unique."
|
|
@@ -4130,6 +4137,92 @@
|
|
|
4130
4137
|
],
|
|
4131
4138
|
"doc": "Editable information about an Asset Container as defined on the DataHub Platform"
|
|
4132
4139
|
},
|
|
4140
|
+
{
|
|
4141
|
+
"type": "record",
|
|
4142
|
+
"Aspect": {
|
|
4143
|
+
"name": "systemMetadata"
|
|
4144
|
+
},
|
|
4145
|
+
"name": "SystemMetadata",
|
|
4146
|
+
"namespace": "com.linkedin.pegasus2avro.mxe",
|
|
4147
|
+
"fields": [
|
|
4148
|
+
{
|
|
4149
|
+
"type": [
|
|
4150
|
+
"long",
|
|
4151
|
+
"null"
|
|
4152
|
+
],
|
|
4153
|
+
"name": "lastObserved",
|
|
4154
|
+
"default": 0,
|
|
4155
|
+
"doc": "The timestamp the metadata was observed at"
|
|
4156
|
+
},
|
|
4157
|
+
{
|
|
4158
|
+
"type": [
|
|
4159
|
+
"string",
|
|
4160
|
+
"null"
|
|
4161
|
+
],
|
|
4162
|
+
"name": "runId",
|
|
4163
|
+
"default": "no-run-id-provided",
|
|
4164
|
+
"doc": "The original run id that produced the metadata. Populated in case of batch-ingestion."
|
|
4165
|
+
},
|
|
4166
|
+
{
|
|
4167
|
+
"type": [
|
|
4168
|
+
"string",
|
|
4169
|
+
"null"
|
|
4170
|
+
],
|
|
4171
|
+
"name": "lastRunId",
|
|
4172
|
+
"default": "no-run-id-provided",
|
|
4173
|
+
"doc": "The last run id that produced the metadata. Populated in case of batch-ingestion."
|
|
4174
|
+
},
|
|
4175
|
+
{
|
|
4176
|
+
"type": [
|
|
4177
|
+
"null",
|
|
4178
|
+
"string"
|
|
4179
|
+
],
|
|
4180
|
+
"name": "pipelineName",
|
|
4181
|
+
"default": null,
|
|
4182
|
+
"doc": "The ingestion pipeline id that produced the metadata. Populated in case of batch ingestion."
|
|
4183
|
+
},
|
|
4184
|
+
{
|
|
4185
|
+
"type": [
|
|
4186
|
+
"null",
|
|
4187
|
+
"string"
|
|
4188
|
+
],
|
|
4189
|
+
"name": "registryName",
|
|
4190
|
+
"default": null,
|
|
4191
|
+
"doc": "The model registry name that was used to process this event"
|
|
4192
|
+
},
|
|
4193
|
+
{
|
|
4194
|
+
"type": [
|
|
4195
|
+
"null",
|
|
4196
|
+
"string"
|
|
4197
|
+
],
|
|
4198
|
+
"name": "registryVersion",
|
|
4199
|
+
"default": null,
|
|
4200
|
+
"doc": "The model registry version that was used to process this event"
|
|
4201
|
+
},
|
|
4202
|
+
{
|
|
4203
|
+
"type": [
|
|
4204
|
+
"null",
|
|
4205
|
+
{
|
|
4206
|
+
"type": "map",
|
|
4207
|
+
"values": "string"
|
|
4208
|
+
}
|
|
4209
|
+
],
|
|
4210
|
+
"name": "properties",
|
|
4211
|
+
"default": null,
|
|
4212
|
+
"doc": "Additional properties"
|
|
4213
|
+
},
|
|
4214
|
+
{
|
|
4215
|
+
"type": [
|
|
4216
|
+
"null",
|
|
4217
|
+
"string"
|
|
4218
|
+
],
|
|
4219
|
+
"name": "version",
|
|
4220
|
+
"default": null,
|
|
4221
|
+
"doc": "Aspect version\n Initial implementation will use the aspect version's number, however stored as\n a string in the case where a different aspect versioning scheme is later adopted."
|
|
4222
|
+
}
|
|
4223
|
+
],
|
|
4224
|
+
"doc": "Metadata associated with each metadata change that is processed by the system"
|
|
4225
|
+
},
|
|
4133
4226
|
{
|
|
4134
4227
|
"type": "record",
|
|
4135
4228
|
"name": "PlatformEvent",
|
|
@@ -4369,89 +4462,7 @@
|
|
|
4369
4462
|
{
|
|
4370
4463
|
"type": [
|
|
4371
4464
|
"null",
|
|
4372
|
-
|
|
4373
|
-
"type": "record",
|
|
4374
|
-
"name": "SystemMetadata",
|
|
4375
|
-
"namespace": "com.linkedin.pegasus2avro.mxe",
|
|
4376
|
-
"fields": [
|
|
4377
|
-
{
|
|
4378
|
-
"type": [
|
|
4379
|
-
"long",
|
|
4380
|
-
"null"
|
|
4381
|
-
],
|
|
4382
|
-
"name": "lastObserved",
|
|
4383
|
-
"default": 0,
|
|
4384
|
-
"doc": "The timestamp the metadata was observed at"
|
|
4385
|
-
},
|
|
4386
|
-
{
|
|
4387
|
-
"type": [
|
|
4388
|
-
"string",
|
|
4389
|
-
"null"
|
|
4390
|
-
],
|
|
4391
|
-
"name": "runId",
|
|
4392
|
-
"default": "no-run-id-provided",
|
|
4393
|
-
"doc": "The original run id that produced the metadata. Populated in case of batch-ingestion."
|
|
4394
|
-
},
|
|
4395
|
-
{
|
|
4396
|
-
"type": [
|
|
4397
|
-
"string",
|
|
4398
|
-
"null"
|
|
4399
|
-
],
|
|
4400
|
-
"name": "lastRunId",
|
|
4401
|
-
"default": "no-run-id-provided",
|
|
4402
|
-
"doc": "The last run id that produced the metadata. Populated in case of batch-ingestion."
|
|
4403
|
-
},
|
|
4404
|
-
{
|
|
4405
|
-
"type": [
|
|
4406
|
-
"null",
|
|
4407
|
-
"string"
|
|
4408
|
-
],
|
|
4409
|
-
"name": "pipelineName",
|
|
4410
|
-
"default": null,
|
|
4411
|
-
"doc": "The ingestion pipeline id that produced the metadata. Populated in case of batch ingestion."
|
|
4412
|
-
},
|
|
4413
|
-
{
|
|
4414
|
-
"type": [
|
|
4415
|
-
"null",
|
|
4416
|
-
"string"
|
|
4417
|
-
],
|
|
4418
|
-
"name": "registryName",
|
|
4419
|
-
"default": null,
|
|
4420
|
-
"doc": "The model registry name that was used to process this event"
|
|
4421
|
-
},
|
|
4422
|
-
{
|
|
4423
|
-
"type": [
|
|
4424
|
-
"null",
|
|
4425
|
-
"string"
|
|
4426
|
-
],
|
|
4427
|
-
"name": "registryVersion",
|
|
4428
|
-
"default": null,
|
|
4429
|
-
"doc": "The model registry version that was used to process this event"
|
|
4430
|
-
},
|
|
4431
|
-
{
|
|
4432
|
-
"type": [
|
|
4433
|
-
"null",
|
|
4434
|
-
{
|
|
4435
|
-
"type": "map",
|
|
4436
|
-
"values": "string"
|
|
4437
|
-
}
|
|
4438
|
-
],
|
|
4439
|
-
"name": "properties",
|
|
4440
|
-
"default": null,
|
|
4441
|
-
"doc": "Additional properties"
|
|
4442
|
-
},
|
|
4443
|
-
{
|
|
4444
|
-
"type": [
|
|
4445
|
-
"null",
|
|
4446
|
-
"string"
|
|
4447
|
-
],
|
|
4448
|
-
"name": "version",
|
|
4449
|
-
"default": null,
|
|
4450
|
-
"doc": "Aspect version\n Initial implementation will use the aspect version's number, however stored as\n a string in the case where a different aspect versioning scheme is later adopted."
|
|
4451
|
-
}
|
|
4452
|
-
],
|
|
4453
|
-
"doc": "Metadata associated with each metadata change that is processed by the system"
|
|
4454
|
-
}
|
|
4465
|
+
"com.linkedin.pegasus2avro.mxe.SystemMetadata"
|
|
4455
4466
|
],
|
|
4456
4467
|
"name": "systemMetadata",
|
|
4457
4468
|
"default": null,
|
|
@@ -10156,6 +10167,9 @@
|
|
|
10156
10167
|
"doc": "Version of the MLModelDeployment"
|
|
10157
10168
|
},
|
|
10158
10169
|
{
|
|
10170
|
+
"Searchable": {
|
|
10171
|
+
"fieldName": "deploymentStatus"
|
|
10172
|
+
},
|
|
10159
10173
|
"type": [
|
|
10160
10174
|
"null",
|
|
10161
10175
|
{
|
|
@@ -15705,6 +15719,28 @@
|
|
|
15705
15719
|
],
|
|
15706
15720
|
"doc": "Key for a External AccessManagement"
|
|
15707
15721
|
},
|
|
15722
|
+
{
|
|
15723
|
+
"type": "record",
|
|
15724
|
+
"Aspect": {
|
|
15725
|
+
"name": "dataHubOpenAPISchemaKey",
|
|
15726
|
+
"keyForEntity": "dataHubOpenAPISchema",
|
|
15727
|
+
"entityCategory": "internal",
|
|
15728
|
+
"entityAspects": [
|
|
15729
|
+
"systemMetadata"
|
|
15730
|
+
],
|
|
15731
|
+
"entityDoc": "Contains aspects which are used in OpenAPI requests/responses which are not otherwise present in the data model."
|
|
15732
|
+
},
|
|
15733
|
+
"name": "DataHubOpenAPISchemaKey",
|
|
15734
|
+
"namespace": "com.linkedin.pegasus2avro.metadata.key",
|
|
15735
|
+
"fields": [
|
|
15736
|
+
{
|
|
15737
|
+
"type": "string",
|
|
15738
|
+
"name": "id",
|
|
15739
|
+
"doc": "A unique id for the DataHub OpenAPI schema."
|
|
15740
|
+
}
|
|
15741
|
+
],
|
|
15742
|
+
"doc": "Key for a Query"
|
|
15743
|
+
},
|
|
15708
15744
|
{
|
|
15709
15745
|
"type": "record",
|
|
15710
15746
|
"Aspect": {
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
{
|
|
2
|
+
"type": "record",
|
|
3
|
+
"Aspect": {
|
|
4
|
+
"name": "dataHubOpenAPISchemaKey",
|
|
5
|
+
"keyForEntity": "dataHubOpenAPISchema",
|
|
6
|
+
"entityCategory": "internal",
|
|
7
|
+
"entityAspects": [
|
|
8
|
+
"systemMetadata"
|
|
9
|
+
],
|
|
10
|
+
"entityDoc": "Contains aspects which are used in OpenAPI requests/responses which are not otherwise present in the data model."
|
|
11
|
+
},
|
|
12
|
+
"name": "DataHubOpenAPISchemaKey",
|
|
13
|
+
"namespace": "com.linkedin.pegasus2avro.metadata.key",
|
|
14
|
+
"fields": [
|
|
15
|
+
{
|
|
16
|
+
"type": "string",
|
|
17
|
+
"name": "id",
|
|
18
|
+
"doc": "A unique id for the DataHub OpenAPI schema."
|
|
19
|
+
}
|
|
20
|
+
],
|
|
21
|
+
"doc": "Key for a Query"
|
|
22
|
+
}
|
|
@@ -31,12 +31,14 @@
|
|
|
31
31
|
"type": {
|
|
32
32
|
"type": "enum",
|
|
33
33
|
"symbolDocs": {
|
|
34
|
-
"SQL": "A SQL Query"
|
|
34
|
+
"SQL": "A SQL Query",
|
|
35
|
+
"UNKNOWN": "Unknown query language"
|
|
35
36
|
},
|
|
36
37
|
"name": "QueryLanguage",
|
|
37
38
|
"namespace": "com.linkedin.pegasus2avro.query",
|
|
38
39
|
"symbols": [
|
|
39
|
-
"SQL"
|
|
40
|
+
"SQL",
|
|
41
|
+
"UNKNOWN"
|
|
40
42
|
]
|
|
41
43
|
},
|
|
42
44
|
"name": "language",
|
|
@@ -53,6 +53,11 @@
|
|
|
53
53
|
"namespace": "com.linkedin.pegasus2avro.form",
|
|
54
54
|
"fields": [
|
|
55
55
|
{
|
|
56
|
+
"Searchable": {
|
|
57
|
+
"fieldName": "promptId",
|
|
58
|
+
"fieldType": "KEYWORD",
|
|
59
|
+
"queryByDefault": false
|
|
60
|
+
},
|
|
56
61
|
"type": "string",
|
|
57
62
|
"name": "id",
|
|
58
63
|
"doc": "The unique id for this prompt. This must be GLOBALLY unique."
|
|
@@ -6755,6 +6755,9 @@
|
|
|
6755
6755
|
"doc": "Version of the MLModelDeployment"
|
|
6756
6756
|
},
|
|
6757
6757
|
{
|
|
6758
|
+
"Searchable": {
|
|
6759
|
+
"fieldName": "deploymentStatus"
|
|
6760
|
+
},
|
|
6758
6761
|
"type": [
|
|
6759
6762
|
"null",
|
|
6760
6763
|
{
|
|
@@ -8116,6 +8119,9 @@
|
|
|
8116
8119
|
"null",
|
|
8117
8120
|
{
|
|
8118
8121
|
"type": "record",
|
|
8122
|
+
"Aspect": {
|
|
8123
|
+
"name": "systemMetadata"
|
|
8124
|
+
},
|
|
8119
8125
|
"name": "SystemMetadata",
|
|
8120
8126
|
"namespace": "com.linkedin.pegasus2avro.mxe",
|
|
8121
8127
|
"fields": [
|
|
@@ -36,12 +36,14 @@
|
|
|
36
36
|
"type": {
|
|
37
37
|
"type": "enum",
|
|
38
38
|
"symbolDocs": {
|
|
39
|
-
"SQL": "A SQL Query"
|
|
39
|
+
"SQL": "A SQL Query",
|
|
40
|
+
"UNKNOWN": "Unknown query language"
|
|
40
41
|
},
|
|
41
42
|
"name": "QueryLanguage",
|
|
42
43
|
"namespace": "com.linkedin.pegasus2avro.query",
|
|
43
44
|
"symbols": [
|
|
44
|
-
"SQL"
|
|
45
|
+
"SQL",
|
|
46
|
+
"UNKNOWN"
|
|
45
47
|
]
|
|
46
48
|
},
|
|
47
49
|
"name": "language",
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
{
|
|
2
|
+
"type": "record",
|
|
3
|
+
"Aspect": {
|
|
4
|
+
"name": "systemMetadata"
|
|
5
|
+
},
|
|
6
|
+
"name": "SystemMetadata",
|
|
7
|
+
"namespace": "com.linkedin.pegasus2avro.mxe",
|
|
8
|
+
"fields": [
|
|
9
|
+
{
|
|
10
|
+
"type": [
|
|
11
|
+
"long",
|
|
12
|
+
"null"
|
|
13
|
+
],
|
|
14
|
+
"name": "lastObserved",
|
|
15
|
+
"default": 0,
|
|
16
|
+
"doc": "The timestamp the metadata was observed at"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"type": [
|
|
20
|
+
"string",
|
|
21
|
+
"null"
|
|
22
|
+
],
|
|
23
|
+
"name": "runId",
|
|
24
|
+
"default": "no-run-id-provided",
|
|
25
|
+
"doc": "The original run id that produced the metadata. Populated in case of batch-ingestion."
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"type": [
|
|
29
|
+
"string",
|
|
30
|
+
"null"
|
|
31
|
+
],
|
|
32
|
+
"name": "lastRunId",
|
|
33
|
+
"default": "no-run-id-provided",
|
|
34
|
+
"doc": "The last run id that produced the metadata. Populated in case of batch-ingestion."
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"type": [
|
|
38
|
+
"null",
|
|
39
|
+
"string"
|
|
40
|
+
],
|
|
41
|
+
"name": "pipelineName",
|
|
42
|
+
"default": null,
|
|
43
|
+
"doc": "The ingestion pipeline id that produced the metadata. Populated in case of batch ingestion."
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"type": [
|
|
47
|
+
"null",
|
|
48
|
+
"string"
|
|
49
|
+
],
|
|
50
|
+
"name": "registryName",
|
|
51
|
+
"default": null,
|
|
52
|
+
"doc": "The model registry name that was used to process this event"
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"type": [
|
|
56
|
+
"null",
|
|
57
|
+
"string"
|
|
58
|
+
],
|
|
59
|
+
"name": "registryVersion",
|
|
60
|
+
"default": null,
|
|
61
|
+
"doc": "The model registry version that was used to process this event"
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
"type": [
|
|
65
|
+
"null",
|
|
66
|
+
{
|
|
67
|
+
"type": "map",
|
|
68
|
+
"values": "string"
|
|
69
|
+
}
|
|
70
|
+
],
|
|
71
|
+
"name": "properties",
|
|
72
|
+
"default": null,
|
|
73
|
+
"doc": "Additional properties"
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
"type": [
|
|
77
|
+
"null",
|
|
78
|
+
"string"
|
|
79
|
+
],
|
|
80
|
+
"name": "version",
|
|
81
|
+
"default": null,
|
|
82
|
+
"doc": "Aspect version\n Initial implementation will use the aspect version's number, however stored as\n a string in the case where a different aspect versioning scheme is later adopted."
|
|
83
|
+
}
|
|
84
|
+
],
|
|
85
|
+
"doc": "Metadata associated with each metadata change that is processed by the system"
|
|
86
|
+
}
|
|
@@ -257,7 +257,10 @@ def generate_hash(text: str) -> str:
|
|
|
257
257
|
|
|
258
258
|
|
|
259
259
|
def get_query_fingerprint_debug(
|
|
260
|
-
expression: sqlglot.exp.ExpOrStr,
|
|
260
|
+
expression: sqlglot.exp.ExpOrStr,
|
|
261
|
+
platform: DialectOrStr,
|
|
262
|
+
fast: bool = False,
|
|
263
|
+
secondary_id: Optional[str] = None,
|
|
261
264
|
) -> Tuple[str, Optional[str]]:
|
|
262
265
|
try:
|
|
263
266
|
if not fast:
|
|
@@ -272,16 +275,18 @@ def get_query_fingerprint_debug(
|
|
|
272
275
|
logger.debug("Failed to generalize query for fingerprinting: %s", e)
|
|
273
276
|
expression_sql = None
|
|
274
277
|
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
)
|
|
278
|
+
text = expression_sql or _expression_to_string(expression, platform=platform)
|
|
279
|
+
if secondary_id:
|
|
280
|
+
text = text + " -- " + secondary_id
|
|
281
|
+
fingerprint = generate_hash(text=text)
|
|
280
282
|
return fingerprint, expression_sql
|
|
281
283
|
|
|
282
284
|
|
|
283
285
|
def get_query_fingerprint(
|
|
284
|
-
expression: sqlglot.exp.ExpOrStr,
|
|
286
|
+
expression: sqlglot.exp.ExpOrStr,
|
|
287
|
+
platform: DialectOrStr,
|
|
288
|
+
fast: bool = False,
|
|
289
|
+
secondary_id: Optional[str] = None,
|
|
285
290
|
) -> str:
|
|
286
291
|
"""Get a fingerprint for a SQL query.
|
|
287
292
|
|
|
@@ -298,12 +303,15 @@ def get_query_fingerprint(
|
|
|
298
303
|
Args:
|
|
299
304
|
expression: The SQL query to fingerprint.
|
|
300
305
|
platform: The SQL dialect to use.
|
|
306
|
+
secondary_id: An optional additional id string to included in the final fingerprint.
|
|
301
307
|
|
|
302
308
|
Returns:
|
|
303
309
|
The fingerprint for the SQL query.
|
|
304
310
|
"""
|
|
305
311
|
|
|
306
|
-
return get_query_fingerprint_debug(
|
|
312
|
+
return get_query_fingerprint_debug(
|
|
313
|
+
expression=expression, platform=platform, fast=fast, secondary_id=secondary_id
|
|
314
|
+
)[0]
|
|
307
315
|
|
|
308
316
|
|
|
309
317
|
@functools.lru_cache(maxsize=FORMAT_QUERY_CACHE_SIZE)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|