diff --git a/sdk/python/feast/infra/aws.py b/sdk/python/feast/infra/aws.py index 104e20388a..b7cc61de0e 100644 --- a/sdk/python/feast/infra/aws.py +++ b/sdk/python/feast/infra/aws.py @@ -119,6 +119,8 @@ def _deploy_feature_server(self, project: str, image_uri: str): lambda_client = boto3.client("lambda") api_gateway_client = boto3.client("apigatewayv2") function = aws_utils.get_lambda_function(lambda_client, resource_name) + _logger.debug("Using function name: %s", resource_name) + _logger.debug("Found function: %s", function) if function is None: # If the Lambda function does not exist, create it. @@ -309,7 +311,7 @@ def _create_or_get_repository_uri(self, ecr_client): def _get_lambda_name(project: str): lambda_prefix = AWS_LAMBDA_FEATURE_SERVER_REPOSITORY - lambda_suffix = f"{project}-{_get_docker_image_version()}" + lambda_suffix = f"{project}-{_get_docker_image_version().replace('.', '_')}" # AWS Lambda name can't have the length greater than 64 bytes. # This usually occurs during integration tests where feast version is long if len(lambda_prefix) + len(lambda_suffix) >= 63: @@ -338,7 +340,7 @@ def _get_docker_image_version() -> str: else: version = get_version() if "dev" in version: - version = version[: version.find("dev") - 1].replace(".", "_") + version = version[: version.find("dev") - 1] _logger.warning( "You are trying to use AWS Lambda feature server while Feast is in a development mode. " f"Feast will use a docker image version {version} derived from Feast SDK " @@ -347,8 +349,6 @@ def _get_docker_image_version() -> str: "> git fetch --all --tags\n" "> pip install -e sdk/python" ) - else: - version = version.replace(".", "_") return version diff --git a/sdk/python/tests/integration/feature_repos/repo_configuration.py b/sdk/python/tests/integration/feature_repos/repo_configuration.py index 89aea727a6..7381c76d0c 100644 --- a/sdk/python/tests/integration/feature_repos/repo_configuration.py +++ b/sdk/python/tests/integration/feature_repos/repo_configuration.py @@ -70,7 +70,6 @@ if os.getenv("FEAST_IS_LOCAL_TEST", "False") != "True": DEFAULT_FULL_REPO_CONFIGS.extend( [ - # Redis configurations IntegrationTestRepoConfig(online_store=REDIS_CONFIG), IntegrationTestRepoConfig(online_store=REDIS_CLUSTER_CONFIG), # GCP configurations @@ -263,7 +262,7 @@ def values(self): def construct_universal_feature_views( - data_sources: UniversalDataSources, + data_sources: UniversalDataSources, with_odfv: bool = True, ) -> UniversalFeatureViews: driver_hourly_stats = create_driver_hourly_stats_feature_view(data_sources.driver) return UniversalFeatureViews( @@ -275,7 +274,9 @@ def construct_universal_feature_views( "driver": driver_hourly_stats, "input_request": create_conv_rate_request_data_source(), } - ), + ) + if with_odfv + else None, driver_age_request_fv=create_driver_age_request_feature_view(), order=create_order_feature_view(data_sources.orders), location=create_location_stats_feature_view(data_sources.location), @@ -358,7 +359,6 @@ def construct_test_environment( registry = RegistryConfig( path=str(Path(repo_dir_name) / "registry.db"), cache_ttl_seconds=1, ) - config = RepoConfig( registry=registry, project=project, diff --git a/sdk/python/tests/integration/online_store/test_universal_online.py b/sdk/python/tests/integration/online_store/test_universal_online.py index bdbdfb3555..c85d320d70 100644 --- a/sdk/python/tests/integration/online_store/test_universal_online.py +++ b/sdk/python/tests/integration/online_store/test_universal_online.py @@ -271,7 +271,7 @@ def _get_online_features_dict_remotely( if response.get("message") != "Internal Server Error": break # Sleep between retries to give the server some time to start - time.sleep(1) + time.sleep(15) else: raise Exception("Failed to get online features from remote feature server") if "metadata" not in response: