diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml index 8e540e2cff..4ecfbd0c50 100644 --- a/.generator/schemas/v2/openapi.yaml +++ b/.generator/schemas/v2/openapi.yaml @@ -21328,13 +21328,6 @@ components: - description: "If this is a string, it must be a valid JavaScript expression that evaluates to a boolean." example: "${true}" type: string - ComponentRecommendation: - description: Resource recommendation for a single Spark component (driver or executor). Contains estimation data used to patch Spark job specs. - properties: - estimation: - $ref: "#/components/schemas/Estimation" - required: [estimation] - type: object ComponentType: description: The UI component type. enum: @@ -24057,23 +24050,6 @@ components: type: string x-enum-varnames: - CI_APP_COVERAGE_SUMMARY - Cpu: - description: CPU usage statistics derived from historical Spark job metrics. Provides multiple estimates so users can choose between conservative and cost-saving risk profiles. - properties: - max: - description: Maximum CPU usage observed for the job, expressed in millicores. This represents the upper bound of usage. - format: int64 - type: integer - p75: - description: 75th percentile of CPU usage (millicores). Represents a cost-saving configuration while covering most workloads. - format: int64 - type: integer - p95: - description: 95th percentile of CPU usage (millicores). Balances performance and cost, providing a safer margin than p75. - format: int64 - type: integer - type: object - x-model-simple-name: SpaCpu CreateActionConnectionRequest: description: Request used to create an action connection. properties: @@ -40501,28 +40477,6 @@ components: type: string x-enum-varnames: - ESCALATION_POLICY_STEPS - Estimation: - description: Recommended resource values for a Spark driver or executor, derived from recent real usage metrics. Used by SPA to propose more efficient pod sizing. - properties: - cpu: - $ref: "#/components/schemas/Cpu" - ephemeral_storage: - description: Recommended ephemeral storage allocation (in MiB). Derived from job temporary storage patterns. - format: int64 - type: integer - heap: - description: Recommended JVM heap size (in MiB). - format: int64 - type: integer - memory: - description: Recommended total memory allocation (in MiB). Includes both heap and overhead. - format: int64 - type: integer - overhead: - description: Recommended JVM overhead (in MiB). Computed as total memory - heap. - format: int64 - type: integer - type: object Event: additionalProperties: {} description: The metadata associated with a request. @@ -101716,96 +101670,6 @@ components: required: - data type: object - RecommendationAttributes: - description: Attributes of the SPA Recommendation resource. Contains recommendations for both driver and executor components. - properties: - confidence_level: - description: The confidence level of the recommendation, expressed as a value between 0.0 (low confidence) and 1.0 (high confidence). - format: double - type: number - driver: - $ref: "#/components/schemas/ComponentRecommendation" - executor: - $ref: "#/components/schemas/ComponentRecommendation" - matched_params: - description: |- - Only returned by the v2 endpoint. The job parameters whose values the recommendation was matched on, as `parameter=value` pairs joined by `|`. - An empty string means the service-wide (coarse) recommendation was used. - example: "detailed_metrics=false|Region=US1" - type: string - required: [driver, executor] - type: object - RecommendationData: - description: JSON:API resource object for SPA Recommendation. Includes type, optional ID, and resource attributes with structured recommendations. - properties: - attributes: - $ref: "#/components/schemas/RecommendationAttributes" - id: - description: Resource identifier for the recommendation. Optional in responses. - type: string - type: - $ref: "#/components/schemas/RecommendationType" - required: [type, attributes] - type: object - RecommendationDocument: - description: JSON:API document containing a single Recommendation resource. Returned by SPA when the Spark Gateway requests recommendations. - properties: - data: - $ref: "#/components/schemas/RecommendationData" - required: [data] - type: object - RecommendationType: - default: recommendation - description: JSON:API resource type for Spark Pod Autosizing recommendations. Identifies the Recommendation resource returned by SPA. - enum: - - recommendation - example: recommendation - type: string - x-enum-varnames: - - RECOMMENDATION - RecommendationV2RequestAttributes: - description: |- - Attributes for requesting SPA recommendations by forwarding a Spark job's raw arguments - instead of a pre-computed shard. - properties: - arguments: - description: |- - Raw, unfiltered Spark job arguments as submitted (for example, `--org_id=2`). - SPA determines which arguments are relevant for the given service. - example: - - "" - items: - type: string - type: array - required: [arguments] - type: object - RecommendationV2RequestBody: - description: |- - Request body for retrieving SPA recommendations by forwarding a Spark job's raw arguments - instead of a pre-computed shard. - properties: - data: - $ref: "#/components/schemas/RecommendationV2RequestData" - required: [data] - type: object - RecommendationV2RequestData: - description: JSON:API resource object for the SPA v2 recommendation request. - properties: - attributes: - $ref: "#/components/schemas/RecommendationV2RequestAttributes" - type: - $ref: "#/components/schemas/RecommendationV2RequestType" - required: [type, attributes] - type: object - RecommendationV2RequestType: - default: recommendation_v2_request - description: JSON:API resource type for the SPA v2 recommendation request. - enum: - - recommendation_v2_request - example: recommendation_v2_request - type: string - x-enum-varnames: - - RECOMMENDATION_V2_REQUEST RecommendationsFilterRequest: description: JSON:API request body for filtering cost recommendations. example: @@ -234730,185 +234594,6 @@ paths: x-unstable: |- **Note**: This endpoint is in preview and is subject to change. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/spa/recommendations-v2/{service}: - post: - description: |- - This endpoint is experimental and restricted to Datadog internal use only. - Retrieve resource recommendations for a Spark job. The caller (Spark Gateway) provides - a service name and the job's raw arguments. SPA determines which arguments are relevant - for the service and returns structured recommendations for driver and executor resources. - operationId: GetSPARecommendationsV2 - parameters: - - description: The service name for a Spark job - in: path - name: service - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/RecommendationV2RequestBody" - required: true - responses: - "200": - content: - application/json: - example: - data: - attributes: - driver: - estimation: - cpu: {max: 1500, p75: 1000, p95: 1200} - ephemeral_storage: 896 - heap: 6144 - memory: 7168 - overhead: 1024 - executor: - estimation: - cpu: {max: 2000, p75: 1200, p95: 1500} - ephemeral_storage: 512 - heap: 3072 - memory: 4096 - overhead: 1024 - matched_params: "detailed_metrics=false" - id: "dedupeactivecontexts:adp_dedupeactivecontexts_org2" - type: recommendation - schema: - $ref: "#/components/schemas/RecommendationDocument" - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "403": - $ref: "#/components/responses/NotAuthorizedResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - AuthZ: [] - summary: Get SPA recommendations v2 - tags: - - Spa - x-unstable: |- - **Note**: This endpoint is in preview and may change in the future. It is not yet recommended for production use. - /api/v2/spa/recommendations/{service}: - get: - description: This endpoint is currently experimental and restricted to Datadog internal use only. Retrieve resource recommendations for a Spark job. The caller (Spark Gateway or DJM UI) provides a service name and SPA returns structured recommendations for driver and executor resources. The version with a shard should be preferred, where possible, as it gives more accurate results. - operationId: GetSPARecommendations - parameters: - - description: The recommendation service should not use its metrics cache. - in: query - name: bypass_cache - schema: - type: string - - description: The service name for a spark job. - in: path - name: service - required: true - schema: - type: string - responses: - "200": - content: - application/json: - example: - data: - attributes: - driver: - estimation: - cpu: {max: 1500, p75: 1000, p95: 1200} - ephemeral_storage: 896 - heap: 6144 - memory: 7168 - overhead: 1024 - executor: - estimation: - cpu: {max: 2000, p75: 1200, p95: 1500} - ephemeral_storage: 512 - heap: 3072 - memory: 4096 - overhead: 1024 - id: "dedupeactivecontexts:adp_dedupeactivecontexts_org2" - type: recommendation - schema: - $ref: "#/components/schemas/RecommendationDocument" - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "403": - $ref: "#/components/responses/NotAuthorizedResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - AuthZ: [] - summary: Get SPA Recommendations - tags: - - Spa - x-unstable: |- - **Note**: This endpoint is in preview and may change in the future. It is not yet recommended for production use. - /api/v2/spa/recommendations/{service}/{shard}: - get: - description: This endpoint is currently experimental and restricted to Datadog internal use only. Retrieve resource recommendations for a Spark job. The caller (Spark Gateway or DJM UI) provides a service name and shard identifier, and SPA returns structured recommendations for driver and executor resources. - operationId: GetSPARecommendationsWithShard - parameters: - - description: The shard tag for a spark job, which differentiates jobs within the same service that have different resource needs - in: path - name: shard - required: true - schema: - type: string - - description: The service name for a spark job - in: path - name: service - required: true - schema: - type: string - - description: The recommendation service should not use its metrics cache. - in: query - name: bypass_cache - schema: - type: string - responses: - "200": - content: - application/json: - example: - data: - attributes: - driver: - estimation: - cpu: {max: 1500, p75: 1000, p95: 1200} - ephemeral_storage: 896 - heap: 6144 - memory: 7168 - overhead: 1024 - executor: - estimation: - cpu: {max: 2000, p75: 1200, p95: 1500} - ephemeral_storage: 512 - heap: 3072 - memory: 4096 - overhead: 1024 - id: "dedupeactivecontexts:adp_dedupeactivecontexts_org2" - type: recommendation - schema: - $ref: "#/components/schemas/RecommendationDocument" - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "403": - $ref: "#/components/responses/NotAuthorizedResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - AuthZ: [] - summary: Get SPA Recommendations with a shard parameter - tags: - - Spa - x-unstable: |- - **Note**: This endpoint is in preview and may change in the future. It is not yet recommended for production use. /api/v2/spans/analytics/aggregate: post: description: |- @@ -249345,8 +249030,6 @@ tags: externalDocs: url: https://docs.datadoghq.com/service_catalog/service_definitions#metadata-schema-v30-beta name: Software Catalog - - description: SPA (Spark Pod Autosizing) API. Provides resource recommendations and cost insights to help optimize Spark job configurations. - name: Spa - description: |- Search and aggregate your spans from your Datadog platform over HTTP. name: Spans diff --git a/examples/v2/spa/GetSPARecommendations.py b/examples/v2/spa/GetSPARecommendations.py deleted file mode 100644 index 7809264d05..0000000000 --- a/examples/v2/spa/GetSPARecommendations.py +++ /dev/null @@ -1,18 +0,0 @@ -""" -Get SPA Recommendations returns "OK" response -""" - -from os import environ -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.spa_api import SpaApi - -configuration = Configuration() -configuration.access_token = environ["DD_BEARER_TOKEN"] -configuration.unstable_operations["get_spa_recommendations"] = True -with ApiClient(configuration) as api_client: - api_instance = SpaApi(api_client) - response = api_instance.get_spa_recommendations( - service="service", - ) - - print(response) diff --git a/examples/v2/spa/GetSPARecommendationsV2.py b/examples/v2/spa/GetSPARecommendationsV2.py deleted file mode 100644 index 27aa6e8891..0000000000 --- a/examples/v2/spa/GetSPARecommendationsV2.py +++ /dev/null @@ -1,31 +0,0 @@ -""" -Get SPA recommendations v2 returns "OK" response -""" - -from os import environ -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.spa_api import SpaApi -from datadog_api_client.v2.model.recommendation_v2_request_attributes import RecommendationV2RequestAttributes -from datadog_api_client.v2.model.recommendation_v2_request_body import RecommendationV2RequestBody -from datadog_api_client.v2.model.recommendation_v2_request_data import RecommendationV2RequestData -from datadog_api_client.v2.model.recommendation_v2_request_type import RecommendationV2RequestType - -body = RecommendationV2RequestBody( - data=RecommendationV2RequestData( - attributes=RecommendationV2RequestAttributes( - arguments=[ - "", - ], - ), - type=RecommendationV2RequestType.RECOMMENDATION_V2_REQUEST, - ), -) - -configuration = Configuration() -configuration.access_token = environ["DD_BEARER_TOKEN"] -configuration.unstable_operations["get_spa_recommendations_v2"] = True -with ApiClient(configuration) as api_client: - api_instance = SpaApi(api_client) - response = api_instance.get_spa_recommendations_v2(service="service", body=body) - - print(response) diff --git a/examples/v2/spa/GetSPARecommendationsWithShard.py b/examples/v2/spa/GetSPARecommendationsWithShard.py deleted file mode 100644 index d5b5bc7f48..0000000000 --- a/examples/v2/spa/GetSPARecommendationsWithShard.py +++ /dev/null @@ -1,19 +0,0 @@ -""" -Get SPA Recommendations with a shard parameter returns "OK" response -""" - -from os import environ -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.spa_api import SpaApi - -configuration = Configuration() -configuration.access_token = environ["DD_BEARER_TOKEN"] -configuration.unstable_operations["get_spa_recommendations_with_shard"] = True -with ApiClient(configuration) as api_client: - api_instance = SpaApi(api_client) - response = api_instance.get_spa_recommendations_with_shard( - shard="shard", - service="service", - ) - - print(response) diff --git a/src/datadog_api_client/configuration.py b/src/datadog_api_client/configuration.py index 821497938d..36cd878e10 100644 --- a/src/datadog_api_client/configuration.py +++ b/src/datadog_api_client/configuration.py @@ -838,9 +838,6 @@ def __init__( "v2.get_slo_report_job_status": False, "v2.get_slo_status": False, "v2.create_snapshot": False, - "v2.get_spa_recommendations": False, - "v2.get_spa_recommendations_v2": False, - "v2.get_spa_recommendations_with_shard": False, "v2.create_ai_custom_rule": False, "v2.create_ai_custom_rule_revision": False, "v2.create_ai_custom_ruleset": False, diff --git a/src/datadog_api_client/v2/api/spa_api.py b/src/datadog_api_client/v2/api/spa_api.py deleted file mode 100644 index f5231ed568..0000000000 --- a/src/datadog_api_client/v2/api/spa_api.py +++ /dev/null @@ -1,191 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Any, Dict, Union - -from datadog_api_client.api_client import ApiClient, Endpoint as _Endpoint -from datadog_api_client.configuration import Configuration -from datadog_api_client.model_utils import ( - UnsetType, - unset, -) -from datadog_api_client.v2.model.recommendation_document import RecommendationDocument -from datadog_api_client.v2.model.recommendation_v2_request_body import RecommendationV2RequestBody - - -class SpaApi: - """ - SPA (Spark Pod Autosizing) API. Provides resource recommendations and cost insights to help optimize Spark job configurations. - """ - - def __init__(self, api_client=None): - if api_client is None: - api_client = ApiClient(Configuration()) - self.api_client = api_client - - self._get_spa_recommendations_endpoint = _Endpoint( - settings={ - "response_type": (RecommendationDocument,), - "auth": ["AuthZ"], - "endpoint_path": "/api/v2/spa/recommendations/{service}", - "operation_id": "get_spa_recommendations", - "http_method": "GET", - "version": "v2", - }, - params_map={ - "bypass_cache": { - "openapi_types": (str,), - "attribute": "bypass_cache", - "location": "query", - }, - "service": { - "required": True, - "openapi_types": (str,), - "attribute": "service", - "location": "path", - }, - }, - headers_map={ - "accept": ["application/json"], - }, - api_client=api_client, - ) - - self._get_spa_recommendations_v2_endpoint = _Endpoint( - settings={ - "response_type": (RecommendationDocument,), - "auth": ["AuthZ"], - "endpoint_path": "/api/v2/spa/recommendations-v2/{service}", - "operation_id": "get_spa_recommendations_v2", - "http_method": "POST", - "version": "v2", - }, - params_map={ - "service": { - "required": True, - "openapi_types": (str,), - "attribute": "service", - "location": "path", - }, - "body": { - "required": True, - "openapi_types": (RecommendationV2RequestBody,), - "location": "body", - }, - }, - headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, - api_client=api_client, - ) - - self._get_spa_recommendations_with_shard_endpoint = _Endpoint( - settings={ - "response_type": (RecommendationDocument,), - "auth": ["AuthZ"], - "endpoint_path": "/api/v2/spa/recommendations/{service}/{shard}", - "operation_id": "get_spa_recommendations_with_shard", - "http_method": "GET", - "version": "v2", - }, - params_map={ - "shard": { - "required": True, - "openapi_types": (str,), - "attribute": "shard", - "location": "path", - }, - "service": { - "required": True, - "openapi_types": (str,), - "attribute": "service", - "location": "path", - }, - "bypass_cache": { - "openapi_types": (str,), - "attribute": "bypass_cache", - "location": "query", - }, - }, - headers_map={ - "accept": ["application/json"], - }, - api_client=api_client, - ) - - def get_spa_recommendations( - self, - service: str, - *, - bypass_cache: Union[str, UnsetType] = unset, - ) -> RecommendationDocument: - """Get SPA Recommendations. - - This endpoint is currently experimental and restricted to Datadog internal use only. Retrieve resource recommendations for a Spark job. The caller (Spark Gateway or DJM UI) provides a service name and SPA returns structured recommendations for driver and executor resources. The version with a shard should be preferred, where possible, as it gives more accurate results. - - :param service: The service name for a spark job. - :type service: str - :param bypass_cache: The recommendation service should not use its metrics cache. - :type bypass_cache: str, optional - :rtype: RecommendationDocument - """ - kwargs: Dict[str, Any] = {} - if bypass_cache is not unset: - kwargs["bypass_cache"] = bypass_cache - - kwargs["service"] = service - - return self._get_spa_recommendations_endpoint.call_with_http_info(**kwargs) - - def get_spa_recommendations_v2( - self, - service: str, - body: RecommendationV2RequestBody, - ) -> RecommendationDocument: - """Get SPA recommendations v2. - - This endpoint is experimental and restricted to Datadog internal use only. - Retrieve resource recommendations for a Spark job. The caller (Spark Gateway) provides - a service name and the job's raw arguments. SPA determines which arguments are relevant - for the service and returns structured recommendations for driver and executor resources. - - :param service: The service name for a Spark job - :type service: str - :type body: RecommendationV2RequestBody - :rtype: RecommendationDocument - """ - kwargs: Dict[str, Any] = {} - kwargs["service"] = service - - kwargs["body"] = body - - return self._get_spa_recommendations_v2_endpoint.call_with_http_info(**kwargs) - - def get_spa_recommendations_with_shard( - self, - shard: str, - service: str, - *, - bypass_cache: Union[str, UnsetType] = unset, - ) -> RecommendationDocument: - """Get SPA Recommendations with a shard parameter. - - This endpoint is currently experimental and restricted to Datadog internal use only. Retrieve resource recommendations for a Spark job. The caller (Spark Gateway or DJM UI) provides a service name and shard identifier, and SPA returns structured recommendations for driver and executor resources. - - :param shard: The shard tag for a spark job, which differentiates jobs within the same service that have different resource needs - :type shard: str - :param service: The service name for a spark job - :type service: str - :param bypass_cache: The recommendation service should not use its metrics cache. - :type bypass_cache: str, optional - :rtype: RecommendationDocument - """ - kwargs: Dict[str, Any] = {} - kwargs["shard"] = shard - - kwargs["service"] = service - - if bypass_cache is not unset: - kwargs["bypass_cache"] = bypass_cache - - return self._get_spa_recommendations_with_shard_endpoint.call_with_http_info(**kwargs) diff --git a/src/datadog_api_client/v2/apis/__init__.py b/src/datadog_api_client/v2/apis/__init__.py index 37fdca46f5..14c0c2b958 100644 --- a/src/datadog_api_client/v2/apis/__init__.py +++ b/src/datadog_api_client/v2/apis/__init__.py @@ -130,7 +130,6 @@ from datadog_api_client.v2.api.slack_integration_api import SlackIntegrationApi from datadog_api_client.v2.api.snowflake_integration_api import SnowflakeIntegrationApi from datadog_api_client.v2.api.software_catalog_api import SoftwareCatalogApi -from datadog_api_client.v2.api.spa_api import SpaApi from datadog_api_client.v2.api.spans_api import SpansApi from datadog_api_client.v2.api.spans_metrics_api import SpansMetricsApi from datadog_api_client.v2.api.static_analysis_api import StaticAnalysisApi @@ -287,7 +286,6 @@ "SlackIntegrationApi", "SnowflakeIntegrationApi", "SoftwareCatalogApi", - "SpaApi", "SpansApi", "SpansMetricsApi", "StaticAnalysisApi", diff --git a/src/datadog_api_client/v2/model/component_recommendation.py b/src/datadog_api_client/v2/model/component_recommendation.py deleted file mode 100644 index 5f5130e497..0000000000 --- a/src/datadog_api_client/v2/model/component_recommendation.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.estimation import Estimation - - -class ComponentRecommendation(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.estimation import Estimation - - return { - "estimation": (Estimation,), - } - - attribute_map = { - "estimation": "estimation", - } - - def __init__(self_, estimation: Estimation, **kwargs): - """ - Resource recommendation for a single Spark component (driver or executor). Contains estimation data used to patch Spark job specs. - - :param estimation: Recommended resource values for a Spark driver or executor, derived from recent real usage metrics. Used by SPA to propose more efficient pod sizing. - :type estimation: Estimation - """ - super().__init__(kwargs) - - self_.estimation = estimation diff --git a/src/datadog_api_client/v2/model/cpu.py b/src/datadog_api_client/v2/model/cpu.py deleted file mode 100644 index 3184d035e1..0000000000 --- a/src/datadog_api_client/v2/model/cpu.py +++ /dev/null @@ -1,56 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Union - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - unset, - UnsetType, -) - - -class Cpu(ModelNormal): - @cached_property - def openapi_types(_): - return { - "max": (int,), - "p75": (int,), - "p95": (int,), - } - - attribute_map = { - "max": "max", - "p75": "p75", - "p95": "p95", - } - - def __init__( - self_, - max: Union[int, UnsetType] = unset, - p75: Union[int, UnsetType] = unset, - p95: Union[int, UnsetType] = unset, - **kwargs, - ): - """ - CPU usage statistics derived from historical Spark job metrics. Provides multiple estimates so users can choose between conservative and cost-saving risk profiles. - - :param max: Maximum CPU usage observed for the job, expressed in millicores. This represents the upper bound of usage. - :type max: int, optional - - :param p75: 75th percentile of CPU usage (millicores). Represents a cost-saving configuration while covering most workloads. - :type p75: int, optional - - :param p95: 95th percentile of CPU usage (millicores). Balances performance and cost, providing a safer margin than p75. - :type p95: int, optional - """ - if max is not unset: - kwargs["max"] = max - if p75 is not unset: - kwargs["p75"] = p75 - if p95 is not unset: - kwargs["p95"] = p95 - super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/estimation.py b/src/datadog_api_client/v2/model/estimation.py deleted file mode 100644 index 919215813d..0000000000 --- a/src/datadog_api_client/v2/model/estimation.py +++ /dev/null @@ -1,78 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Union, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - unset, - UnsetType, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.cpu import Cpu - - -class Estimation(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.cpu import Cpu - - return { - "cpu": (Cpu,), - "ephemeral_storage": (int,), - "heap": (int,), - "memory": (int,), - "overhead": (int,), - } - - attribute_map = { - "cpu": "cpu", - "ephemeral_storage": "ephemeral_storage", - "heap": "heap", - "memory": "memory", - "overhead": "overhead", - } - - def __init__( - self_, - cpu: Union[Cpu, UnsetType] = unset, - ephemeral_storage: Union[int, UnsetType] = unset, - heap: Union[int, UnsetType] = unset, - memory: Union[int, UnsetType] = unset, - overhead: Union[int, UnsetType] = unset, - **kwargs, - ): - """ - Recommended resource values for a Spark driver or executor, derived from recent real usage metrics. Used by SPA to propose more efficient pod sizing. - - :param cpu: CPU usage statistics derived from historical Spark job metrics. Provides multiple estimates so users can choose between conservative and cost-saving risk profiles. - :type cpu: Cpu, optional - - :param ephemeral_storage: Recommended ephemeral storage allocation (in MiB). Derived from job temporary storage patterns. - :type ephemeral_storage: int, optional - - :param heap: Recommended JVM heap size (in MiB). - :type heap: int, optional - - :param memory: Recommended total memory allocation (in MiB). Includes both heap and overhead. - :type memory: int, optional - - :param overhead: Recommended JVM overhead (in MiB). Computed as total memory - heap. - :type overhead: int, optional - """ - if cpu is not unset: - kwargs["cpu"] = cpu - if ephemeral_storage is not unset: - kwargs["ephemeral_storage"] = ephemeral_storage - if heap is not unset: - kwargs["heap"] = heap - if memory is not unset: - kwargs["memory"] = memory - if overhead is not unset: - kwargs["overhead"] = overhead - super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/recommendation_attributes.py b/src/datadog_api_client/v2/model/recommendation_attributes.py deleted file mode 100644 index 6ff6ef55d5..0000000000 --- a/src/datadog_api_client/v2/model/recommendation_attributes.py +++ /dev/null @@ -1,70 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Union, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - unset, - UnsetType, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.component_recommendation import ComponentRecommendation - - -class RecommendationAttributes(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.component_recommendation import ComponentRecommendation - - return { - "confidence_level": (float,), - "driver": (ComponentRecommendation,), - "executor": (ComponentRecommendation,), - "matched_params": (str,), - } - - attribute_map = { - "confidence_level": "confidence_level", - "driver": "driver", - "executor": "executor", - "matched_params": "matched_params", - } - - def __init__( - self_, - driver: ComponentRecommendation, - executor: ComponentRecommendation, - confidence_level: Union[float, UnsetType] = unset, - matched_params: Union[str, UnsetType] = unset, - **kwargs, - ): - """ - Attributes of the SPA Recommendation resource. Contains recommendations for both driver and executor components. - - :param confidence_level: The confidence level of the recommendation, expressed as a value between 0.0 (low confidence) and 1.0 (high confidence). - :type confidence_level: float, optional - - :param driver: Resource recommendation for a single Spark component (driver or executor). Contains estimation data used to patch Spark job specs. - :type driver: ComponentRecommendation - - :param executor: Resource recommendation for a single Spark component (driver or executor). Contains estimation data used to patch Spark job specs. - :type executor: ComponentRecommendation - - :param matched_params: Only returned by the v2 endpoint. The job parameters whose values the recommendation was matched on, as ``parameter=value`` pairs joined by ``|``. - An empty string means the service-wide (coarse) recommendation was used. - :type matched_params: str, optional - """ - if confidence_level is not unset: - kwargs["confidence_level"] = confidence_level - if matched_params is not unset: - kwargs["matched_params"] = matched_params - super().__init__(kwargs) - - self_.driver = driver - self_.executor = executor diff --git a/src/datadog_api_client/v2/model/recommendation_data.py b/src/datadog_api_client/v2/model/recommendation_data.py deleted file mode 100644 index d52f628808..0000000000 --- a/src/datadog_api_client/v2/model/recommendation_data.py +++ /dev/null @@ -1,63 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Union, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - unset, - UnsetType, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.recommendation_attributes import RecommendationAttributes - from datadog_api_client.v2.model.recommendation_type import RecommendationType - - -class RecommendationData(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.recommendation_attributes import RecommendationAttributes - from datadog_api_client.v2.model.recommendation_type import RecommendationType - - return { - "attributes": (RecommendationAttributes,), - "id": (str,), - "type": (RecommendationType,), - } - - attribute_map = { - "attributes": "attributes", - "id": "id", - "type": "type", - } - - def __init__( - self_, - attributes: RecommendationAttributes, - type: RecommendationType, - id: Union[str, UnsetType] = unset, - **kwargs, - ): - """ - JSON:API resource object for SPA Recommendation. Includes type, optional ID, and resource attributes with structured recommendations. - - :param attributes: Attributes of the SPA Recommendation resource. Contains recommendations for both driver and executor components. - :type attributes: RecommendationAttributes - - :param id: Resource identifier for the recommendation. Optional in responses. - :type id: str, optional - - :param type: JSON:API resource type for Spark Pod Autosizing recommendations. Identifies the Recommendation resource returned by SPA. - :type type: RecommendationType - """ - if id is not unset: - kwargs["id"] = id - super().__init__(kwargs) - - self_.attributes = attributes - self_.type = type diff --git a/src/datadog_api_client/v2/model/recommendation_document.py b/src/datadog_api_client/v2/model/recommendation_document.py deleted file mode 100644 index 1799696fef..0000000000 --- a/src/datadog_api_client/v2/model/recommendation_document.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.recommendation_data import RecommendationData - - -class RecommendationDocument(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.recommendation_data import RecommendationData - - return { - "data": (RecommendationData,), - } - - attribute_map = { - "data": "data", - } - - def __init__(self_, data: RecommendationData, **kwargs): - """ - JSON:API document containing a single Recommendation resource. Returned by SPA when the Spark Gateway requests recommendations. - - :param data: JSON:API resource object for SPA Recommendation. Includes type, optional ID, and resource attributes with structured recommendations. - :type data: RecommendationData - """ - super().__init__(kwargs) - - self_.data = data diff --git a/src/datadog_api_client/v2/model/recommendation_type.py b/src/datadog_api_client/v2/model/recommendation_type.py deleted file mode 100644 index 75568c6e9c..0000000000 --- a/src/datadog_api_client/v2/model/recommendation_type.py +++ /dev/null @@ -1,35 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - - -from datadog_api_client.model_utils import ( - ModelSimple, - cached_property, -) - -from typing import ClassVar - - -class RecommendationType(ModelSimple): - """ - JSON:API resource type for Spark Pod Autosizing recommendations. Identifies the Recommendation resource returned by SPA. - - :param value: If omitted defaults to "recommendation". Must be one of ["recommendation"]. - :type value: str - """ - - allowed_values = { - "recommendation", - } - RECOMMENDATION: ClassVar["RecommendationType"] - - @cached_property - def openapi_types(_): - return { - "value": (str,), - } - - -RecommendationType.RECOMMENDATION = RecommendationType("recommendation") diff --git a/src/datadog_api_client/v2/model/recommendation_v2_request_attributes.py b/src/datadog_api_client/v2/model/recommendation_v2_request_attributes.py deleted file mode 100644 index dcd33361e1..0000000000 --- a/src/datadog_api_client/v2/model/recommendation_v2_request_attributes.py +++ /dev/null @@ -1,36 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import List - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -class RecommendationV2RequestAttributes(ModelNormal): - @cached_property - def openapi_types(_): - return { - "arguments": ([str],), - } - - attribute_map = { - "arguments": "arguments", - } - - def __init__(self_, arguments: List[str], **kwargs): - """ - Attributes for requesting SPA recommendations by forwarding a Spark job's raw arguments - instead of a pre-computed shard. - - :param arguments: Raw, unfiltered Spark job arguments as submitted (for example, ``--org_id=2`` ). - SPA determines which arguments are relevant for the given service. - :type arguments: [str] - """ - super().__init__(kwargs) - - self_.arguments = arguments diff --git a/src/datadog_api_client/v2/model/recommendation_v2_request_body.py b/src/datadog_api_client/v2/model/recommendation_v2_request_body.py deleted file mode 100644 index 5104df58fa..0000000000 --- a/src/datadog_api_client/v2/model/recommendation_v2_request_body.py +++ /dev/null @@ -1,41 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.recommendation_v2_request_data import RecommendationV2RequestData - - -class RecommendationV2RequestBody(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.recommendation_v2_request_data import RecommendationV2RequestData - - return { - "data": (RecommendationV2RequestData,), - } - - attribute_map = { - "data": "data", - } - - def __init__(self_, data: RecommendationV2RequestData, **kwargs): - """ - Request body for retrieving SPA recommendations by forwarding a Spark job's raw arguments - instead of a pre-computed shard. - - :param data: JSON:API resource object for the SPA v2 recommendation request. - :type data: RecommendationV2RequestData - """ - super().__init__(kwargs) - - self_.data = data diff --git a/src/datadog_api_client/v2/model/recommendation_v2_request_data.py b/src/datadog_api_client/v2/model/recommendation_v2_request_data.py deleted file mode 100644 index 9514b3061e..0000000000 --- a/src/datadog_api_client/v2/model/recommendation_v2_request_data.py +++ /dev/null @@ -1,49 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.recommendation_v2_request_attributes import RecommendationV2RequestAttributes - from datadog_api_client.v2.model.recommendation_v2_request_type import RecommendationV2RequestType - - -class RecommendationV2RequestData(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.recommendation_v2_request_attributes import RecommendationV2RequestAttributes - from datadog_api_client.v2.model.recommendation_v2_request_type import RecommendationV2RequestType - - return { - "attributes": (RecommendationV2RequestAttributes,), - "type": (RecommendationV2RequestType,), - } - - attribute_map = { - "attributes": "attributes", - "type": "type", - } - - def __init__(self_, attributes: RecommendationV2RequestAttributes, type: RecommendationV2RequestType, **kwargs): - """ - JSON:API resource object for the SPA v2 recommendation request. - - :param attributes: Attributes for requesting SPA recommendations by forwarding a Spark job's raw arguments - instead of a pre-computed shard. - :type attributes: RecommendationV2RequestAttributes - - :param type: JSON:API resource type for the SPA v2 recommendation request. - :type type: RecommendationV2RequestType - """ - super().__init__(kwargs) - - self_.attributes = attributes - self_.type = type diff --git a/src/datadog_api_client/v2/model/recommendation_v2_request_type.py b/src/datadog_api_client/v2/model/recommendation_v2_request_type.py deleted file mode 100644 index bd8a8ba02f..0000000000 --- a/src/datadog_api_client/v2/model/recommendation_v2_request_type.py +++ /dev/null @@ -1,35 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - - -from datadog_api_client.model_utils import ( - ModelSimple, - cached_property, -) - -from typing import ClassVar - - -class RecommendationV2RequestType(ModelSimple): - """ - JSON:API resource type for the SPA v2 recommendation request. - - :param value: If omitted defaults to "recommendation_v2_request". Must be one of ["recommendation_v2_request"]. - :type value: str - """ - - allowed_values = { - "recommendation_v2_request", - } - RECOMMENDATION_V2_REQUEST: ClassVar["RecommendationV2RequestType"] - - @cached_property - def openapi_types(_): - return { - "value": (str,), - } - - -RecommendationV2RequestType.RECOMMENDATION_V2_REQUEST = RecommendationV2RequestType("recommendation_v2_request") diff --git a/src/datadog_api_client/v2/models/__init__.py b/src/datadog_api_client/v2/models/__init__.py index a2e4ddb291..ee8b36a199 100644 --- a/src/datadog_api_client/v2/models/__init__.py +++ b/src/datadog_api_client/v2/models/__init__.py @@ -1464,7 +1464,6 @@ from datadog_api_client.v2.model.component_grid_type import ComponentGridType from datadog_api_client.v2.model.component_properties import ComponentProperties from datadog_api_client.v2.model.component_properties_is_visible import ComponentPropertiesIsVisible -from datadog_api_client.v2.model.component_recommendation import ComponentRecommendation from datadog_api_client.v2.model.component_type import ComponentType from datadog_api_client.v2.model.condition import Condition from datadog_api_client.v2.model.condition_operator import ConditionOperator @@ -1654,7 +1653,6 @@ from datadog_api_client.v2.model.coverage_summary_response import CoverageSummaryResponse from datadog_api_client.v2.model.coverage_summary_service_stats import CoverageSummaryServiceStats from datadog_api_client.v2.model.coverage_summary_type import CoverageSummaryType -from datadog_api_client.v2.model.cpu import Cpu from datadog_api_client.v2.model.create_action_connection_request import CreateActionConnectionRequest from datadog_api_client.v2.model.create_action_connection_response import CreateActionConnectionResponse from datadog_api_client.v2.model.create_allocations_request import CreateAllocationsRequest @@ -3233,7 +3231,6 @@ from datadog_api_client.v2.model.escalation_target import EscalationTarget from datadog_api_client.v2.model.escalation_targets import EscalationTargets from datadog_api_client.v2.model.escalation_type import EscalationType -from datadog_api_client.v2.model.estimation import Estimation from datadog_api_client.v2.model.event import Event from datadog_api_client.v2.model.event_attributes import EventAttributes from datadog_api_client.v2.model.event_category import EventCategory @@ -8941,14 +8938,6 @@ from datadog_api_client.v2.model.readiness_gate import ReadinessGate from datadog_api_client.v2.model.readiness_gate_threshold_type import ReadinessGateThresholdType from datadog_api_client.v2.model.recently_updated_entities_response import RecentlyUpdatedEntitiesResponse -from datadog_api_client.v2.model.recommendation_attributes import RecommendationAttributes -from datadog_api_client.v2.model.recommendation_data import RecommendationData -from datadog_api_client.v2.model.recommendation_document import RecommendationDocument -from datadog_api_client.v2.model.recommendation_type import RecommendationType -from datadog_api_client.v2.model.recommendation_v2_request_attributes import RecommendationV2RequestAttributes -from datadog_api_client.v2.model.recommendation_v2_request_body import RecommendationV2RequestBody -from datadog_api_client.v2.model.recommendation_v2_request_data import RecommendationV2RequestData -from datadog_api_client.v2.model.recommendation_v2_request_type import RecommendationV2RequestType from datadog_api_client.v2.model.recommendations_filter_request import RecommendationsFilterRequest from datadog_api_client.v2.model.recommendations_filter_request_data import RecommendationsFilterRequestData from datadog_api_client.v2.model.recommendations_filter_request_data_attributes import ( @@ -13848,7 +13837,6 @@ "ComponentGridType", "ComponentProperties", "ComponentPropertiesIsVisible", - "ComponentRecommendation", "ComponentType", "Condition", "ConditionOperator", @@ -14018,7 +14006,6 @@ "CoverageSummaryResponse", "CoverageSummaryServiceStats", "CoverageSummaryType", - "Cpu", "CreateActionConnectionRequest", "CreateActionConnectionResponse", "CreateAllocationsRequest", @@ -15031,7 +15018,6 @@ "EscalationTarget", "EscalationTargets", "EscalationType", - "Estimation", "Event", "EventAttributes", "EventCategory", @@ -18677,14 +18663,6 @@ "ReadinessGate", "ReadinessGateThresholdType", "RecentlyUpdatedEntitiesResponse", - "RecommendationAttributes", - "RecommendationData", - "RecommendationDocument", - "RecommendationType", - "RecommendationV2RequestAttributes", - "RecommendationV2RequestBody", - "RecommendationV2RequestData", - "RecommendationV2RequestType", "RecommendationsFilterRequest", "RecommendationsFilterRequestData", "RecommendationsFilterRequestDataAttributes", diff --git a/tests/v2/features/spa.feature b/tests/v2/features/spa.feature deleted file mode 100644 index c175f767e9..0000000000 --- a/tests/v2/features/spa.feature +++ /dev/null @@ -1,101 +0,0 @@ -@endpoint(spa) @endpoint(spa-v2) -Feature: Spa - SPA (Spark Pod Autosizing) API. Provides resource recommendations and cost - insights to help optimize Spark job configurations. - - Background: - Given an instance of "Spa" API - - @generated @skip @team:ddoghq/data-and-analytics-processing - Scenario: Get SPA Recommendations returns "Bad Request" response - Given operation "GetSPARecommendations" enabled - And new "GetSPARecommendations" request - And request contains "service" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:ddoghq/data-and-analytics-processing - Scenario: Get SPA Recommendations returns "OK" response - Given operation "GetSPARecommendations" enabled - And new "GetSPARecommendations" request - And request contains "service" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 200 OK - - @generated @skip @team:ddoghq/data-and-analytics-processing - Scenario: Get SPA Recommendations with a shard parameter returns "Bad Request" response - Given operation "GetSPARecommendationsWithShard" enabled - And new "GetSPARecommendationsWithShard" request - And request contains "shard" parameter from "REPLACE.ME" - And request contains "service" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:ddoghq/data-and-analytics-processing - Scenario: Get SPA Recommendations with a shard parameter returns "OK" response - Given operation "GetSPARecommendationsWithShard" enabled - And new "GetSPARecommendationsWithShard" request - And request contains "shard" parameter from "REPLACE.ME" - And request contains "service" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 200 OK - - @generated @skip @team:ddoghq/data-and-analytics-processing - Scenario: Get SPA recommendations v2 returns "Bad Request" response - Given operation "GetSPARecommendationsV2" enabled - And new "GetSPARecommendationsV2" request - And request contains "service" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"arguments": [""]}, "type": "recommendation_v2_request"}} - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:ddoghq/data-and-analytics-processing - Scenario: Get SPA recommendations v2 returns "Not Found" response - Given operation "GetSPARecommendationsV2" enabled - And new "GetSPARecommendationsV2" request - And request contains "service" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"arguments": [""]}, "type": "recommendation_v2_request"}} - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:ddoghq/data-and-analytics-processing - Scenario: Get SPA recommendations v2 returns "OK" response - Given operation "GetSPARecommendationsV2" enabled - And new "GetSPARecommendationsV2" request - And request contains "service" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"arguments": [""]}, "type": "recommendation_v2_request"}} - When the request is sent - Then the response status is 200 OK - - @skip @team:ddoghq/data-and-analytics-processing - Scenario: GetSPARecommendations returns a JSON:API Recommendation with driver and executor estimations - Given new "GetSPARecommendations" request - And a valid "apiKeyAuth" key in the system - And a valid "appKeyAuth" key in the system - And operation "GetSPARecommendations" enabled - And request contains "service" parameter with value "dedupeactivecontexts" - And request contains "shard" parameter with value "adp_dedupeactivecontexts_org2" - When the request is sent - Then the response status is 404 Not Found - And the response "data.type" is equal to "recommendation" - And the response "data" has field "attributes" - And the response "data.attributes" has field "driver" - And the response "data.attributes" has field "executor" - And the response "data.attributes.driver" has field "estimation" - And the response "data.attributes.driver.estimation" has field "cpu" - And the response "data.attributes.driver.estimation" has field "memory" - And the response "data.attributes.driver.estimation" has field "ephemeral_storage" - And the response "data.attributes.driver.estimation" has field "heap" - And the response "data.attributes.driver.estimation" has field "overhead" - And the response "data.attributes.driver.estimation.cpu" has field "max" - And the response "data.attributes.driver.estimation.cpu" has field "p95" - And the response "data.attributes.driver.estimation.cpu" has field "p75" - And the response "data.attributes.executor" has field "estimation" - And the response "data.attributes.executor.estimation" has field "cpu" - And the response "data.attributes.executor.estimation" has field "memory" - And the response "data.attributes.executor.estimation" has field "ephemeral_storage" - And the response "data.attributes.executor.estimation" has field "heap" - And the response "data.attributes.executor.estimation" has field "overhead" - And the response "data.attributes.executor.estimation.cpu" has field "max" - And the response "data.attributes.executor.estimation.cpu" has field "p95" - And the response "data.attributes.executor.estimation.cpu" has field "p75" diff --git a/tests/v2/features/undo.json b/tests/v2/features/undo.json index 8b44c94157..e121a0e357 100644 --- a/tests/v2/features/undo.json +++ b/tests/v2/features/undo.json @@ -9837,24 +9837,6 @@ "type": "unsafe" } }, - "GetSPARecommendationsV2": { - "tag": "Spa", - "undo": { - "type": "safe" - } - }, - "GetSPARecommendations": { - "tag": "Spa", - "undo": { - "type": "safe" - } - }, - "GetSPARecommendationsWithShard": { - "tag": "Spa", - "undo": { - "type": "safe" - } - }, "AggregateSpans": { "tag": "Spans", "undo": {