kb-cloud-client-typescript 2.3.15 → 2.3.17

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.
Files changed (57) hide show
  1. package/dist/adminapi/apis/diagnostics-api.d.ts +104 -0
  2. package/dist/adminapi/apis/diagnostics-api.d.ts.map +1 -1
  3. package/dist/adminapi/apis/diagnostics-api.js +105 -0
  4. package/dist/adminapi/apis/diagnostics-api.js.map +1 -1
  5. package/dist/adminapi/models/dms-execution-plan-planning-mode.d.ts +22 -0
  6. package/dist/adminapi/models/dms-execution-plan-planning-mode.d.ts.map +1 -0
  7. package/dist/adminapi/models/dms-execution-plan-planning-mode.js +26 -0
  8. package/dist/adminapi/models/dms-execution-plan-planning-mode.js.map +1 -0
  9. package/dist/adminapi/models/dms-execution-plan-result.d.ts +19 -0
  10. package/dist/adminapi/models/dms-execution-plan-result.d.ts.map +1 -1
  11. package/dist/adminapi/models/index.d.ts +2 -0
  12. package/dist/adminapi/models/index.d.ts.map +1 -1
  13. package/dist/adminapi/models/index.js +2 -0
  14. package/dist/adminapi/models/index.js.map +1 -1
  15. package/dist/adminapi/models/postgresql-sqlfingerprint-explain-response.d.ts +87 -0
  16. package/dist/adminapi/models/postgresql-sqlfingerprint-explain-response.d.ts.map +1 -0
  17. package/dist/adminapi/models/postgresql-sqlfingerprint-explain-response.js +16 -0
  18. package/dist/adminapi/models/postgresql-sqlfingerprint-explain-response.js.map +1 -0
  19. package/dist/adminapi/models/postgresql-sqlfingerprint.d.ts +6 -0
  20. package/dist/adminapi/models/postgresql-sqlfingerprint.d.ts.map +1 -1
  21. package/dist/openapi/apis/diagnostics-api.d.ts +104 -0
  22. package/dist/openapi/apis/diagnostics-api.d.ts.map +1 -1
  23. package/dist/openapi/apis/diagnostics-api.js +105 -0
  24. package/dist/openapi/apis/diagnostics-api.js.map +1 -1
  25. package/dist/openapi/models/dms-execution-plan-planning-mode.d.ts +22 -0
  26. package/dist/openapi/models/dms-execution-plan-planning-mode.d.ts.map +1 -0
  27. package/dist/openapi/models/dms-execution-plan-planning-mode.js +26 -0
  28. package/dist/openapi/models/dms-execution-plan-planning-mode.js.map +1 -0
  29. package/dist/openapi/models/dms-execution-plan-result.d.ts +19 -0
  30. package/dist/openapi/models/dms-execution-plan-result.d.ts.map +1 -1
  31. package/dist/openapi/models/index.d.ts +2 -0
  32. package/dist/openapi/models/index.d.ts.map +1 -1
  33. package/dist/openapi/models/index.js +2 -0
  34. package/dist/openapi/models/index.js.map +1 -1
  35. package/dist/openapi/models/postgresql-sqlfingerprint-explain-response.d.ts +87 -0
  36. package/dist/openapi/models/postgresql-sqlfingerprint-explain-response.d.ts.map +1 -0
  37. package/dist/openapi/models/postgresql-sqlfingerprint-explain-response.js +16 -0
  38. package/dist/openapi/models/postgresql-sqlfingerprint-explain-response.js.map +1 -0
  39. package/dist/openapi/models/postgresql-sqlfingerprint.d.ts +6 -0
  40. package/dist/openapi/models/postgresql-sqlfingerprint.d.ts.map +1 -1
  41. package/package.json +1 -1
  42. package/src/adminapi/.openapi-generator/FILES +2 -0
  43. package/src/adminapi/apis/diagnostics-api.ts +184 -0
  44. package/src/adminapi/models/dms-execution-plan-planning-mode.ts +31 -0
  45. package/src/adminapi/models/dms-execution-plan-result.ts +21 -0
  46. package/src/adminapi/models/index.ts +2 -0
  47. package/src/adminapi/models/postgresql-sqlfingerprint-explain-response.ts +98 -0
  48. package/src/adminapi/models/postgresql-sqlfingerprint.ts +6 -0
  49. package/src/adminapi.yaml +145 -0
  50. package/src/openapi/.openapi-generator/FILES +2 -0
  51. package/src/openapi/apis/diagnostics-api.ts +184 -0
  52. package/src/openapi/models/dms-execution-plan-planning-mode.ts +31 -0
  53. package/src/openapi/models/dms-execution-plan-result.ts +21 -0
  54. package/src/openapi/models/index.ts +2 -0
  55. package/src/openapi/models/postgresql-sqlfingerprint-explain-response.ts +98 -0
  56. package/src/openapi/models/postgresql-sqlfingerprint.ts +6 -0
  57. package/src/openapi.yaml +3764 -3619
package/src/adminapi.yaml CHANGED
@@ -22349,6 +22349,83 @@ paths:
22349
22349
  $ref: '#/components/responses/404'
22350
22350
  '500':
22351
22351
  $ref: '#/components/responses/500'
22352
+ /admin/v1/organizations/{orgName}/clusters/{clusterName}/diagnostics/postgresql/sqlAnalysis/queries/{queryID}/explain:
22353
+ post:
22354
+ tags:
22355
+ - diagnostics
22356
+ summary: Explain PostgreSQL SQL fingerprint
22357
+ description: Explicitly trigger a safe PostgreSQL EXPLAIN for one SQL fingerprint. The request does not accept raw SQL. DMS resolves the exact server-side parameterized SELECT statement identity independently of the ranking window, produces an estimated standard or generic plan without parameter sample values, rejects multiple statements, and never runs EXPLAIN ANALYZE or the original SQL. The plan uses current catalog statistics and the DMS connection context; it does not reconstruct the original role, search_path, session settings, parameter values, or historical actual plan.
22358
+ operationId: explainDiagnosticsPostgresqlSQLFingerprint
22359
+ parameters:
22360
+ - name: orgName
22361
+ in: path
22362
+ description: Organization name
22363
+ required: true
22364
+ schema:
22365
+ type: string
22366
+ - name: clusterName
22367
+ in: path
22368
+ description: Cluster name
22369
+ required: true
22370
+ schema:
22371
+ type: string
22372
+ - name: queryID
22373
+ in: path
22374
+ description: PostgreSQL pg_stat_statements queryid represented as a string.
22375
+ required: true
22376
+ schema:
22377
+ type: string
22378
+ - name: database
22379
+ in: query
22380
+ description: Database name from the ranking row. The key is required to disambiguate the queryID. An unresolved empty name returns 422 no_explainable_sql_statement.
22381
+ required: true
22382
+ allowEmptyValue: true
22383
+ schema:
22384
+ type: string
22385
+ - name: user
22386
+ in: query
22387
+ description: Database user from the ranking row. The key is required to disambiguate the queryID. An unresolved empty name returns 422 no_explainable_sql_statement.
22388
+ required: true
22389
+ allowEmptyValue: true
22390
+ schema:
22391
+ type: string
22392
+ - name: topLevel
22393
+ in: query
22394
+ description: Top-level identity from the ranking row. Required to disambiguate the queryID on PostgreSQL versions that expose pg_stat_statements.toplevel.
22395
+ required: true
22396
+ schema:
22397
+ type: boolean
22398
+ - name: fingerprint
22399
+ in: query
22400
+ description: Optional fingerprint consistency guard. Currently aligned with PostgreSQL pg_stat_statements queryid.
22401
+ required: false
22402
+ schema:
22403
+ type: string
22404
+ responses:
22405
+ '200':
22406
+ description: OK
22407
+ content:
22408
+ application/json:
22409
+ schema:
22410
+ $ref: '#/components/schemas/postgresqlSQLFingerprintExplainResponse'
22411
+ '400':
22412
+ $ref: '#/components/responses/400'
22413
+ '401':
22414
+ $ref: '#/components/responses/401'
22415
+ '403':
22416
+ $ref: '#/components/responses/403'
22417
+ '404':
22418
+ $ref: '#/components/responses/404'
22419
+ '422':
22420
+ description: Unprocessable Entity
22421
+ content:
22422
+ application/json:
22423
+ schema:
22424
+ $ref: '#/components/schemas/APIErrorResponse'
22425
+ '500':
22426
+ $ref: '#/components/responses/500'
22427
+ '503':
22428
+ $ref: '#/components/responses/503'
22352
22429
  /admin/v1/organizations/{orgName}/clusters/{clusterName}/diagnostics/mysql/sqlAnalysis:
22353
22430
  get:
22354
22431
  tags:
@@ -29732,6 +29809,11 @@ components:
29732
29809
  - analyze
29733
29810
  - actual
29734
29811
  - autotrace
29812
+ DmsExecutionPlanPlanningMode:
29813
+ type: string
29814
+ enum:
29815
+ - standard
29816
+ - generic
29735
29817
  DmsExecutionPlanRawFormat:
29736
29818
  type: string
29737
29819
  enum:
@@ -30015,6 +30097,16 @@ components:
30015
30097
  type: string
30016
30098
  mode:
30017
30099
  $ref: '#/components/schemas/DmsExecutionPlanMode'
30100
+ planMode:
30101
+ $ref: '#/components/schemas/DmsExecutionPlanPlanningMode'
30102
+ parameterized:
30103
+ type: boolean
30104
+ x-omitempty: false
30105
+ parameterCount:
30106
+ type: integer
30107
+ format: int64
30108
+ nullable: true
30109
+ x-omitempty: true
30018
30110
  hasActualStats:
30019
30111
  type: boolean
30020
30112
  x-omitempty: false
@@ -43088,6 +43180,7 @@ components:
43088
43180
  - rows
43089
43181
  - database
43090
43182
  - user
43183
+ - topLevel
43091
43184
  properties:
43092
43185
  queryID:
43093
43186
  type: string
@@ -43124,6 +43217,9 @@ components:
43124
43217
  user:
43125
43218
  type: string
43126
43219
  description: Database user name resolved from pg_stat_statements.userid when visible.
43220
+ topLevel:
43221
+ type: boolean
43222
+ description: Whether pg_stat_statements recorded the statement as top-level. Legacy PostgreSQL versions without the toplevel column report true.
43127
43223
  postgresqlSQLAnalysis:
43128
43224
  type: object
43129
43225
  required:
@@ -43171,6 +43267,55 @@ components:
43171
43267
  description: SQL fingerprint ranking rows from pg_stat_statements. The list may be empty when no statement statistics exist.
43172
43268
  items:
43173
43269
  $ref: '#/components/schemas/postgresqlSQLFingerprint'
43270
+ postgresqlSQLFingerprintExplainResponse:
43271
+ type: object
43272
+ required:
43273
+ - queryID
43274
+ - fingerprint
43275
+ - database
43276
+ - user
43277
+ - topLevel
43278
+ - planMode
43279
+ - parameterized
43280
+ - explainResult
43281
+ properties:
43282
+ queryID:
43283
+ type: string
43284
+ description: PostgreSQL pg_stat_statements queryid represented as a string.
43285
+ fingerprint:
43286
+ type: string
43287
+ description: Stable SQL fingerprint identifier for UI grouping. Currently aligned with PostgreSQL pg_stat_statements queryid.
43288
+ database:
43289
+ type: string
43290
+ description: Database name from the requested SQL fingerprint identity.
43291
+ user:
43292
+ type: string
43293
+ description: Database user from the requested SQL fingerprint identity.
43294
+ topLevel:
43295
+ type: boolean
43296
+ description: Top-level flag from the requested SQL fingerprint identity.
43297
+ statementSource:
43298
+ type: string
43299
+ description: Server-side source used to resolve the parameterized SQL statement. Raw SQL is not returned.
43300
+ statementResolvedAt:
43301
+ type: string
43302
+ description: Timestamp when the parameterized SQL statement was resolved.
43303
+ planMode:
43304
+ $ref: '#/components/schemas/DmsExecutionPlanPlanningMode'
43305
+ description: Whether DMS produced a standard estimated plan or a generic parameterized estimated plan.
43306
+ parameterized:
43307
+ type: boolean
43308
+ description: Whether generic parameterized planning was used (planMode is generic). False means standard planning, not that historical parameter values were used. This endpoint never retrieves historical parameter values.
43309
+ x-omitempty: false
43310
+ parameterCount:
43311
+ type: integer
43312
+ format: int64
43313
+ nullable: true
43314
+ x-omitempty: true
43315
+ description: Number of parameters when DMS can determine it. It may be omitted for PostgreSQL generic-plan paths that do not expose the count.
43316
+ explainResult:
43317
+ $ref: '#/components/schemas/DmsExecutionPlanResult'
43318
+ description: Normalized DMS estimated visual plan. The resolved statement and generated EXPLAIN SQL are intentionally removed.
43174
43319
  mysqlSQLFingerprint:
43175
43320
  type: object
43176
43321
  required:
@@ -391,6 +391,7 @@ models/dms-execution-plan-node-cost.ts
391
391
  models/dms-execution-plan-node-rows.ts
392
392
  models/dms-execution-plan-node-timing.ts
393
393
  models/dms-execution-plan-node.ts
394
+ models/dms-execution-plan-planning-mode.ts
394
395
  models/dms-execution-plan-raw-format.ts
395
396
  models/dms-execution-plan-result.ts
396
397
  models/dms-execution-plan-summary.ts
@@ -800,6 +801,7 @@ models/postgresql-space-analysis.ts
800
801
  models/postgresql-space-source.ts
801
802
  models/postgresql-space-summary.ts
802
803
  models/postgresql-sqlanalysis.ts
804
+ models/postgresql-sqlfingerprint-explain-response.ts
803
805
  models/postgresql-sqlfingerprint.ts
804
806
  models/postgresql-storage-instance-usage.ts
805
807
  models/postgresql-storage-overview.ts
@@ -68,6 +68,8 @@ import type { PostgresqlLockAnalysis } from '../models';
68
68
  // @ts-ignore
69
69
  import type { PostgresqlSQLAnalysis } from '../models';
70
70
  // @ts-ignore
71
+ import type { PostgresqlSQLFingerprintExplainResponse } from '../models';
72
+ // @ts-ignore
71
73
  import type { PostgresqlSession } from '../models';
72
74
  // @ts-ignore
73
75
  import type { PostgresqlSpaceAnalysis } from '../models';
@@ -139,6 +141,81 @@ export const DiagnosticsApiAxiosParamCreator = function (configuration?: Configu
139
141
 
140
142
 
141
143
 
144
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
145
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
146
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
147
+
148
+ return {
149
+ url: toPathString(localVarUrlObj),
150
+ options: localVarRequestOptions,
151
+ };
152
+ },
153
+ /**
154
+ * Explicitly trigger a safe PostgreSQL EXPLAIN for one SQL fingerprint. The request does not accept raw SQL. DMS resolves the exact server-side parameterized SELECT statement identity independently of the ranking window, produces an estimated standard or generic plan without parameter sample values, rejects multiple statements, and never runs EXPLAIN ANALYZE or the original SQL. The plan uses current catalog statistics and the DMS connection context; it does not reconstruct the original role, search_path, session settings, parameter values, or historical actual plan.
155
+ * @summary Explain PostgreSQL SQL fingerprint
156
+ * @param {string} orgName Organization name
157
+ * @param {string} clusterName Cluster name
158
+ * @param {string} queryID PostgreSQL pg_stat_statements queryid represented as a string.
159
+ * @param {string} database Database name from the ranking row. The key is required to disambiguate the queryID. An unresolved empty name returns 422 no_explainable_sql_statement.
160
+ * @param {string} user Database user from the ranking row. The key is required to disambiguate the queryID. An unresolved empty name returns 422 no_explainable_sql_statement.
161
+ * @param {boolean} topLevel Top-level identity from the ranking row. Required to disambiguate the queryID on PostgreSQL versions that expose pg_stat_statements.toplevel.
162
+ * @param {string} [fingerprint] Optional fingerprint consistency guard. Currently aligned with PostgreSQL pg_stat_statements queryid.
163
+ * @param {*} [options] Override http request option.
164
+ * @throws {RequiredError}
165
+ */
166
+ explainDiagnosticsPostgresqlSQLFingerprint: async (orgName: string, clusterName: string, queryID: string, database: string, user: string, topLevel: boolean, fingerprint?: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
167
+ // verify required parameter 'orgName' is not null or undefined
168
+ assertParamExists('explainDiagnosticsPostgresqlSQLFingerprint', 'orgName', orgName)
169
+ // verify required parameter 'clusterName' is not null or undefined
170
+ assertParamExists('explainDiagnosticsPostgresqlSQLFingerprint', 'clusterName', clusterName)
171
+ // verify required parameter 'queryID' is not null or undefined
172
+ assertParamExists('explainDiagnosticsPostgresqlSQLFingerprint', 'queryID', queryID)
173
+ // verify required parameter 'database' is not null or undefined
174
+ assertParamExists('explainDiagnosticsPostgresqlSQLFingerprint', 'database', database)
175
+ // verify required parameter 'user' is not null or undefined
176
+ assertParamExists('explainDiagnosticsPostgresqlSQLFingerprint', 'user', user)
177
+ // verify required parameter 'topLevel' is not null or undefined
178
+ assertParamExists('explainDiagnosticsPostgresqlSQLFingerprint', 'topLevel', topLevel)
179
+ const localVarPath = `/api/v1/organizations/{orgName}/clusters/{clusterName}/diagnostics/postgresql/sqlAnalysis/queries/{queryID}/explain`
180
+ .replace(`{${"orgName"}}`, encodeURIComponent(String(orgName)))
181
+ .replace(`{${"clusterName"}}`, encodeURIComponent(String(clusterName)))
182
+ .replace(`{${"queryID"}}`, encodeURIComponent(String(queryID)));
183
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
184
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
185
+ let baseOptions;
186
+ if (configuration) {
187
+ baseOptions = configuration.baseOptions;
188
+ }
189
+
190
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
191
+ const localVarHeaderParameter = {} as any;
192
+ const localVarQueryParameter = {} as any;
193
+
194
+ // authentication BearerToken required
195
+ // http bearer authentication required
196
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
197
+
198
+ // authentication DigestAuth required
199
+ await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration)
200
+
201
+ if (database !== undefined) {
202
+ localVarQueryParameter['database'] = database;
203
+ }
204
+
205
+ if (user !== undefined) {
206
+ localVarQueryParameter['user'] = user;
207
+ }
208
+
209
+ if (topLevel !== undefined) {
210
+ localVarQueryParameter['topLevel'] = topLevel;
211
+ }
212
+
213
+ if (fingerprint !== undefined) {
214
+ localVarQueryParameter['fingerprint'] = fingerprint;
215
+ }
216
+
217
+
218
+
142
219
  setSearchParams(localVarUrlObj, localVarQueryParameter);
143
220
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
144
221
  localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
@@ -1305,6 +1382,25 @@ export const DiagnosticsApiFp = function(configuration?: Configuration) {
1305
1382
  const localVarOperationServerBasePath = operationServerMap['DiagnosticsApi.explainDiagnosticsElasticsearchAllocation']?.[localVarOperationServerIndex]?.url;
1306
1383
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
1307
1384
  },
1385
+ /**
1386
+ * Explicitly trigger a safe PostgreSQL EXPLAIN for one SQL fingerprint. The request does not accept raw SQL. DMS resolves the exact server-side parameterized SELECT statement identity independently of the ranking window, produces an estimated standard or generic plan without parameter sample values, rejects multiple statements, and never runs EXPLAIN ANALYZE or the original SQL. The plan uses current catalog statistics and the DMS connection context; it does not reconstruct the original role, search_path, session settings, parameter values, or historical actual plan.
1387
+ * @summary Explain PostgreSQL SQL fingerprint
1388
+ * @param {string} orgName Organization name
1389
+ * @param {string} clusterName Cluster name
1390
+ * @param {string} queryID PostgreSQL pg_stat_statements queryid represented as a string.
1391
+ * @param {string} database Database name from the ranking row. The key is required to disambiguate the queryID. An unresolved empty name returns 422 no_explainable_sql_statement.
1392
+ * @param {string} user Database user from the ranking row. The key is required to disambiguate the queryID. An unresolved empty name returns 422 no_explainable_sql_statement.
1393
+ * @param {boolean} topLevel Top-level identity from the ranking row. Required to disambiguate the queryID on PostgreSQL versions that expose pg_stat_statements.toplevel.
1394
+ * @param {string} [fingerprint] Optional fingerprint consistency guard. Currently aligned with PostgreSQL pg_stat_statements queryid.
1395
+ * @param {*} [options] Override http request option.
1396
+ * @throws {RequiredError}
1397
+ */
1398
+ async explainDiagnosticsPostgresqlSQLFingerprint(orgName: string, clusterName: string, queryID: string, database: string, user: string, topLevel: boolean, fingerprint?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PostgresqlSQLFingerprintExplainResponse>> {
1399
+ const localVarAxiosArgs = await localVarAxiosParamCreator.explainDiagnosticsPostgresqlSQLFingerprint(orgName, clusterName, queryID, database, user, topLevel, fingerprint, options);
1400
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
1401
+ const localVarOperationServerBasePath = operationServerMap['DiagnosticsApi.explainDiagnosticsPostgresqlSQLFingerprint']?.[localVarOperationServerIndex]?.url;
1402
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
1403
+ },
1308
1404
  /**
1309
1405
  * Get a read-only Dameng SQL analysis snapshot from V$SYSTEM_LONG_EXEC_SQLS (long-running SQL) and V$SYSTEM_LARGE_MEM_SQLS (high-memory SQL). The response does not expose execution plans or remediation actions.
1310
1406
  * @summary Get Dameng SQL analysis
@@ -1657,6 +1753,16 @@ export const DiagnosticsApiFactory = function (configuration?: Configuration, ba
1657
1753
  explainDiagnosticsElasticsearchAllocation(requestParameters: DiagnosticsApiExplainDiagnosticsElasticsearchAllocationRequest, options?: RawAxiosRequestConfig): AxiosPromise<ElasticsearchAllocationExplanation> {
1658
1754
  return localVarFp.explainDiagnosticsElasticsearchAllocation(requestParameters.orgName, requestParameters.clusterName, requestParameters.index, requestParameters.shard, requestParameters.primary, requestParameters.currentNode, options).then((request) => request(axios, basePath));
1659
1755
  },
1756
+ /**
1757
+ * Explicitly trigger a safe PostgreSQL EXPLAIN for one SQL fingerprint. The request does not accept raw SQL. DMS resolves the exact server-side parameterized SELECT statement identity independently of the ranking window, produces an estimated standard or generic plan without parameter sample values, rejects multiple statements, and never runs EXPLAIN ANALYZE or the original SQL. The plan uses current catalog statistics and the DMS connection context; it does not reconstruct the original role, search_path, session settings, parameter values, or historical actual plan.
1758
+ * @summary Explain PostgreSQL SQL fingerprint
1759
+ * @param {DiagnosticsApiExplainDiagnosticsPostgresqlSQLFingerprintRequest} requestParameters Request parameters.
1760
+ * @param {*} [options] Override http request option.
1761
+ * @throws {RequiredError}
1762
+ */
1763
+ explainDiagnosticsPostgresqlSQLFingerprint(requestParameters: DiagnosticsApiExplainDiagnosticsPostgresqlSQLFingerprintRequest, options?: RawAxiosRequestConfig): AxiosPromise<PostgresqlSQLFingerprintExplainResponse> {
1764
+ return localVarFp.explainDiagnosticsPostgresqlSQLFingerprint(requestParameters.orgName, requestParameters.clusterName, requestParameters.queryID, requestParameters.database, requestParameters.user, requestParameters.topLevel, requestParameters.fingerprint, options).then((request) => request(axios, basePath));
1765
+ },
1660
1766
  /**
1661
1767
  * Get a read-only Dameng SQL analysis snapshot from V$SYSTEM_LONG_EXEC_SQLS (long-running SQL) and V$SYSTEM_LARGE_MEM_SQLS (high-memory SQL). The response does not expose execution plans or remediation actions.
1662
1768
  * @summary Get Dameng SQL analysis
@@ -1886,6 +1992,16 @@ export interface DiagnosticsApiInterface {
1886
1992
  */
1887
1993
  explainDiagnosticsElasticsearchAllocation(requestParameters: DiagnosticsApiExplainDiagnosticsElasticsearchAllocationRequest, options?: RawAxiosRequestConfig): AxiosPromise<ElasticsearchAllocationExplanation>;
1888
1994
 
1995
+ /**
1996
+ * Explicitly trigger a safe PostgreSQL EXPLAIN for one SQL fingerprint. The request does not accept raw SQL. DMS resolves the exact server-side parameterized SELECT statement identity independently of the ranking window, produces an estimated standard or generic plan without parameter sample values, rejects multiple statements, and never runs EXPLAIN ANALYZE or the original SQL. The plan uses current catalog statistics and the DMS connection context; it does not reconstruct the original role, search_path, session settings, parameter values, or historical actual plan.
1997
+ * @summary Explain PostgreSQL SQL fingerprint
1998
+ * @param {DiagnosticsApiExplainDiagnosticsPostgresqlSQLFingerprintRequest} requestParameters Request parameters.
1999
+ * @param {*} [options] Override http request option.
2000
+ * @throws {RequiredError}
2001
+ * @memberof DiagnosticsApiInterface
2002
+ */
2003
+ explainDiagnosticsPostgresqlSQLFingerprint(requestParameters: DiagnosticsApiExplainDiagnosticsPostgresqlSQLFingerprintRequest, options?: RawAxiosRequestConfig): AxiosPromise<PostgresqlSQLFingerprintExplainResponse>;
2004
+
1889
2005
  /**
1890
2006
  * Get a read-only Dameng SQL analysis snapshot from V$SYSTEM_LONG_EXEC_SQLS (long-running SQL) and V$SYSTEM_LARGE_MEM_SQLS (high-memory SQL). The response does not expose execution plans or remediation actions.
1891
2007
  * @summary Get Dameng SQL analysis
@@ -2147,6 +2263,62 @@ export interface DiagnosticsApiExplainDiagnosticsElasticsearchAllocationRequest
2147
2263
  readonly currentNode?: string
2148
2264
  }
2149
2265
 
2266
+ /**
2267
+ * Request parameters for explainDiagnosticsPostgresqlSQLFingerprint operation in DiagnosticsApi.
2268
+ * @export
2269
+ * @interface DiagnosticsApiExplainDiagnosticsPostgresqlSQLFingerprintRequest
2270
+ */
2271
+ export interface DiagnosticsApiExplainDiagnosticsPostgresqlSQLFingerprintRequest {
2272
+ /**
2273
+ * Organization name
2274
+ * @type {string}
2275
+ * @memberof DiagnosticsApiExplainDiagnosticsPostgresqlSQLFingerprint
2276
+ */
2277
+ readonly orgName: string
2278
+
2279
+ /**
2280
+ * Cluster name
2281
+ * @type {string}
2282
+ * @memberof DiagnosticsApiExplainDiagnosticsPostgresqlSQLFingerprint
2283
+ */
2284
+ readonly clusterName: string
2285
+
2286
+ /**
2287
+ * PostgreSQL pg_stat_statements queryid represented as a string.
2288
+ * @type {string}
2289
+ * @memberof DiagnosticsApiExplainDiagnosticsPostgresqlSQLFingerprint
2290
+ */
2291
+ readonly queryID: string
2292
+
2293
+ /**
2294
+ * Database name from the ranking row. The key is required to disambiguate the queryID. An unresolved empty name returns 422 no_explainable_sql_statement.
2295
+ * @type {string}
2296
+ * @memberof DiagnosticsApiExplainDiagnosticsPostgresqlSQLFingerprint
2297
+ */
2298
+ readonly database: string
2299
+
2300
+ /**
2301
+ * Database user from the ranking row. The key is required to disambiguate the queryID. An unresolved empty name returns 422 no_explainable_sql_statement.
2302
+ * @type {string}
2303
+ * @memberof DiagnosticsApiExplainDiagnosticsPostgresqlSQLFingerprint
2304
+ */
2305
+ readonly user: string
2306
+
2307
+ /**
2308
+ * Top-level identity from the ranking row. Required to disambiguate the queryID on PostgreSQL versions that expose pg_stat_statements.toplevel.
2309
+ * @type {boolean}
2310
+ * @memberof DiagnosticsApiExplainDiagnosticsPostgresqlSQLFingerprint
2311
+ */
2312
+ readonly topLevel: boolean
2313
+
2314
+ /**
2315
+ * Optional fingerprint consistency guard. Currently aligned with PostgreSQL pg_stat_statements queryid.
2316
+ * @type {string}
2317
+ * @memberof DiagnosticsApiExplainDiagnosticsPostgresqlSQLFingerprint
2318
+ */
2319
+ readonly fingerprint?: string
2320
+ }
2321
+
2150
2322
  /**
2151
2323
  * Request parameters for getDiagnosticsDamengSQLAnalysis operation in DiagnosticsApi.
2152
2324
  * @export
@@ -2873,6 +3045,18 @@ export class DiagnosticsApi extends BaseAPI implements DiagnosticsApiInterface {
2873
3045
  return DiagnosticsApiFp(this.configuration).explainDiagnosticsElasticsearchAllocation(requestParameters.orgName, requestParameters.clusterName, requestParameters.index, requestParameters.shard, requestParameters.primary, requestParameters.currentNode, options).then((request) => request(this.axios, this.basePath));
2874
3046
  }
2875
3047
 
3048
+ /**
3049
+ * Explicitly trigger a safe PostgreSQL EXPLAIN for one SQL fingerprint. The request does not accept raw SQL. DMS resolves the exact server-side parameterized SELECT statement identity independently of the ranking window, produces an estimated standard or generic plan without parameter sample values, rejects multiple statements, and never runs EXPLAIN ANALYZE or the original SQL. The plan uses current catalog statistics and the DMS connection context; it does not reconstruct the original role, search_path, session settings, parameter values, or historical actual plan.
3050
+ * @summary Explain PostgreSQL SQL fingerprint
3051
+ * @param {DiagnosticsApiExplainDiagnosticsPostgresqlSQLFingerprintRequest} requestParameters Request parameters.
3052
+ * @param {*} [options] Override http request option.
3053
+ * @throws {RequiredError}
3054
+ * @memberof DiagnosticsApi
3055
+ */
3056
+ public explainDiagnosticsPostgresqlSQLFingerprint(requestParameters: DiagnosticsApiExplainDiagnosticsPostgresqlSQLFingerprintRequest, options?: RawAxiosRequestConfig) {
3057
+ return DiagnosticsApiFp(this.configuration).explainDiagnosticsPostgresqlSQLFingerprint(requestParameters.orgName, requestParameters.clusterName, requestParameters.queryID, requestParameters.database, requestParameters.user, requestParameters.topLevel, requestParameters.fingerprint, options).then((request) => request(this.axios, this.basePath));
3058
+ }
3059
+
2876
3060
  /**
2877
3061
  * Get a read-only Dameng SQL analysis snapshot from V$SYSTEM_LONG_EXEC_SQLS (long-running SQL) and V$SYSTEM_LARGE_MEM_SQLS (high-memory SQL). The response does not expose execution plans or remediation actions.
2878
3062
  * @summary Get Dameng SQL analysis
@@ -0,0 +1,31 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * KubeBlocks Cloud API
5
+ * KubeBlocks Cloud API is a RESTful API for managing KubeBlocks Cloud resources. The API is organized around REST. Our API has predictable resource-oriented URLs, accepts `JSON-encoded` request bodies, returns `JSON-encoded` responses, and uses standard HTTP response codes, authentication, and verbs. We use standard HTTP authentication and provide API keys to identify who you are. Your API keys carry many privileges, so be sure to keep them secret! Do not share your secret API keys in publicly accessible areas such as GitHub, client-side code, and so forth.
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ * Contact: support@apecloud.com
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+
16
+
17
+ /**
18
+ *
19
+ * @export
20
+ * @enum {string}
21
+ */
22
+
23
+ export const DmsExecutionPlanPlanningMode = {
24
+ standard: 'standard',
25
+ generic: 'generic'
26
+ } as const;
27
+
28
+ export type DmsExecutionPlanPlanningMode = typeof DmsExecutionPlanPlanningMode[keyof typeof DmsExecutionPlanPlanningMode];
29
+
30
+
31
+
@@ -24,6 +24,9 @@ import type { DmsExecutionPlanMode } from './dms-execution-plan-mode';
24
24
  import type { DmsExecutionPlanNode } from './dms-execution-plan-node';
25
25
  // May contain unused imports in some cases
26
26
  // @ts-ignore
27
+ import type { DmsExecutionPlanPlanningMode } from './dms-execution-plan-planning-mode';
28
+ // May contain unused imports in some cases
29
+ // @ts-ignore
27
30
  import type { DmsExecutionPlanRawFormat } from './dms-execution-plan-raw-format';
28
31
  // May contain unused imports in some cases
29
32
  // @ts-ignore
@@ -65,6 +68,24 @@ export interface DmsExecutionPlanResult {
65
68
  * @memberof DmsExecutionPlanResult
66
69
  */
67
70
  'mode'?: DmsExecutionPlanMode;
71
+ /**
72
+ *
73
+ * @type {DmsExecutionPlanPlanningMode}
74
+ * @memberof DmsExecutionPlanResult
75
+ */
76
+ 'planMode'?: DmsExecutionPlanPlanningMode;
77
+ /**
78
+ *
79
+ * @type {boolean}
80
+ * @memberof DmsExecutionPlanResult
81
+ */
82
+ 'parameterized'?: boolean;
83
+ /**
84
+ *
85
+ * @type {number}
86
+ * @memberof DmsExecutionPlanResult
87
+ */
88
+ 'parameterCount'?: number | null;
68
89
  /**
69
90
  *
70
91
  * @type {boolean}
@@ -304,6 +304,7 @@ export * from './dms-execution-plan-node-conditions';
304
304
  export * from './dms-execution-plan-node-cost';
305
305
  export * from './dms-execution-plan-node-rows';
306
306
  export * from './dms-execution-plan-node-timing';
307
+ export * from './dms-execution-plan-planning-mode';
307
308
  export * from './dms-execution-plan-raw-format';
308
309
  export * from './dms-execution-plan-result';
309
310
  export * from './dms-execution-plan-summary';
@@ -706,6 +707,7 @@ export * from './postgresql-lock-analysis';
706
707
  export * from './postgresql-lock-row';
707
708
  export * from './postgresql-sqlanalysis';
708
709
  export * from './postgresql-sqlfingerprint';
710
+ export * from './postgresql-sqlfingerprint-explain-response';
709
711
  export * from './postgresql-session';
710
712
  export * from './postgresql-space-analysis';
711
713
  export * from './postgresql-space-source';
@@ -0,0 +1,98 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * KubeBlocks Cloud API
5
+ * KubeBlocks Cloud API is a RESTful API for managing KubeBlocks Cloud resources. The API is organized around REST. Our API has predictable resource-oriented URLs, accepts `JSON-encoded` request bodies, returns `JSON-encoded` responses, and uses standard HTTP response codes, authentication, and verbs. We use standard HTTP authentication and provide API keys to identify who you are. Your API keys carry many privileges, so be sure to keep them secret! Do not share your secret API keys in publicly accessible areas such as GitHub, client-side code, and so forth.
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ * Contact: support@apecloud.com
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+
16
+ // May contain unused imports in some cases
17
+ // @ts-ignore
18
+ import type { DmsExecutionPlanPlanningMode } from './dms-execution-plan-planning-mode';
19
+ // May contain unused imports in some cases
20
+ // @ts-ignore
21
+ import type { DmsExecutionPlanResult } from './dms-execution-plan-result';
22
+
23
+ /**
24
+ *
25
+ * @export
26
+ * @interface PostgresqlSQLFingerprintExplainResponse
27
+ */
28
+ export interface PostgresqlSQLFingerprintExplainResponse {
29
+ /**
30
+ * PostgreSQL pg_stat_statements queryid represented as a string.
31
+ * @type {string}
32
+ * @memberof PostgresqlSQLFingerprintExplainResponse
33
+ */
34
+ 'queryID': string;
35
+ /**
36
+ * Stable SQL fingerprint identifier for UI grouping. Currently aligned with PostgreSQL pg_stat_statements queryid.
37
+ * @type {string}
38
+ * @memberof PostgresqlSQLFingerprintExplainResponse
39
+ */
40
+ 'fingerprint': string;
41
+ /**
42
+ * Database name from the requested SQL fingerprint identity.
43
+ * @type {string}
44
+ * @memberof PostgresqlSQLFingerprintExplainResponse
45
+ */
46
+ 'database': string;
47
+ /**
48
+ * Database user from the requested SQL fingerprint identity.
49
+ * @type {string}
50
+ * @memberof PostgresqlSQLFingerprintExplainResponse
51
+ */
52
+ 'user': string;
53
+ /**
54
+ * Top-level flag from the requested SQL fingerprint identity.
55
+ * @type {boolean}
56
+ * @memberof PostgresqlSQLFingerprintExplainResponse
57
+ */
58
+ 'topLevel': boolean;
59
+ /**
60
+ * Server-side source used to resolve the parameterized SQL statement. Raw SQL is not returned.
61
+ * @type {string}
62
+ * @memberof PostgresqlSQLFingerprintExplainResponse
63
+ */
64
+ 'statementSource'?: string;
65
+ /**
66
+ * Timestamp when the parameterized SQL statement was resolved.
67
+ * @type {string}
68
+ * @memberof PostgresqlSQLFingerprintExplainResponse
69
+ */
70
+ 'statementResolvedAt'?: string;
71
+ /**
72
+ *
73
+ * @type {DmsExecutionPlanPlanningMode}
74
+ * @memberof PostgresqlSQLFingerprintExplainResponse
75
+ */
76
+ 'planMode': DmsExecutionPlanPlanningMode;
77
+ /**
78
+ * Whether generic parameterized planning was used (planMode is generic). False means standard planning, not that historical parameter values were used. This endpoint never retrieves historical parameter values.
79
+ * @type {boolean}
80
+ * @memberof PostgresqlSQLFingerprintExplainResponse
81
+ */
82
+ 'parameterized': boolean;
83
+ /**
84
+ * Number of parameters when DMS can determine it. It may be omitted for PostgreSQL generic-plan paths that do not expose the count.
85
+ * @type {number}
86
+ * @memberof PostgresqlSQLFingerprintExplainResponse
87
+ */
88
+ 'parameterCount'?: number | null;
89
+ /**
90
+ *
91
+ * @type {DmsExecutionPlanResult}
92
+ * @memberof PostgresqlSQLFingerprintExplainResponse
93
+ */
94
+ 'explainResult': DmsExecutionPlanResult;
95
+ }
96
+
97
+
98
+
@@ -80,5 +80,11 @@ export interface PostgresqlSQLFingerprint {
80
80
  * @memberof PostgresqlSQLFingerprint
81
81
  */
82
82
  'user': string;
83
+ /**
84
+ * Whether pg_stat_statements recorded the statement as top-level. Legacy PostgreSQL versions without the toplevel column report true.
85
+ * @type {boolean}
86
+ * @memberof PostgresqlSQLFingerprint
87
+ */
88
+ 'topLevel': boolean;
83
89
  }
84
90