{"record":{"id":"7e8fc86a0ca35d06","repo":"apache/beam","slug":"invalid-feature-store-yaml-file-provided-make-sure-the-s","errorCode":null,"errorMessage":"Invalid feature store yaml file provided. Make sure the %s contains the valid configuration for Feast feature store.","messagePattern":"Invalid feature store yaml file provided\\. Make sure the (.+?) contains the valid configuration for Feast feature store\\.","errorType":"exception","errorClass":"RuntimeError","httpStatus":null,"severity":"error","filePath":"sdks/python/apache_beam/transforms/enrichment_handlers/feast_feature_store.py","lineNumber":151,"sourceCode":"    \"\"\"\n    self.entity_id = entity_id\n    self.feature_store_yaml_path = feature_store_yaml_path\n    self.feature_names = feature_names\n    self.feature_service_name = feature_service_name\n    self.full_feature_names = full_feature_names\n    self.entity_row_fn = entity_row_fn\n    self._exception_level = exception_level\n    _validate_entity_key_exists(self.entity_id, self.entity_row_fn)\n    _validate_feature_store_yaml_path_exists(self.feature_store_yaml_path)\n    _validate_feature_names(self.feature_names, self.feature_service_name)\n\n  def __enter__(self):\n    \"\"\"Connect with the Feast feature store.\"\"\"\n    local_repo_path = download_fs_yaml_file(self.feature_store_yaml_path)\n    try:\n      self.store = FeatureStore(fs_yaml_file=local_repo_path)\n    except Exception:\n      raise RuntimeError(\n          'Invalid feature store yaml file provided. Make sure '\n          'the %s contains the valid configuration for Feast feature store.' %\n          self.feature_store_yaml_path)\n    if self.feature_service_name:\n      try:\n        self.features = self.store.get_feature_service(\n            self.feature_service_name)\n      except Exception:\n        raise RuntimeError(\n            'Could not find the feature service %s for the feature '\n            'store configured in %s.' %\n            (self.feature_service_name, self.feature_store_yaml_path))\n    else:\n      self.features = self.feature_names\n\n  def __call__(self, request: beam.Row, *args, **kwargs):\n    \"\"\"Fetches feature values for an entity-id from the Feast feature store.\n","sourceCodeStart":133,"sourceCodeEnd":169,"githubUrl":"https://github.com/apache/beam/blob/12126d8942aaf848030c478b4c6a28c6af861c66/sdks/python/apache_beam/transforms/enrichment_handlers/feast_feature_store.py#L133-L169","documentation":"Raised in `__enter__` after `FeatureStore(fs_yaml_file=local_repo_path)` fails, meaning the downloaded yaml is present but its contents are not a valid Feast feature store configuration (bad registry/online store config, Feast version incompatibility, or malformed yaml). The original exception is replaced by this RuntimeError.","triggerScenarios":"`__enter__` is invoked as the pipeline starts running; Feast's FeatureStore constructor raises because the yaml lacks required sections (registry, entity_key_serialization_version), uses an unsupported provider, or the installed feast version cannot parse the config format.","commonSituations":"Hand-edited feature_store.yaml with missing fields; Feast major version upgrade changing config schema; yaml pointing to a repo config not a feature store config.","solutions":["Validate the yaml locally: `FeatureStore(fs_yaml_file='feature_store.yaml')` in the same feast version as the pipeline.","Pin the pipeline container's feast version to match the one used to generate the config.","Check required keys (project, registry, provider, online_store) exist in the yaml.","Catch the original exception during development (temporarily bypass) to see the underlying parse error."],"exampleFix":"# before (incomplete yaml)\nproject: my_project\n# after\nproject: my_project\nregistry: gs://my-bucket/registry.db\nprovider: gcp\nonline_store:\n  type: datastore\nentity_key_serialization_version: 2","handlingStrategy":"try-catch","validationCode":"from feast import FeatureStore\nFeatureStore(fs_yaml_file='feature_store.yaml')  # validate locally with same feast version","typeGuard":null,"tryCatchPattern":"try:\n    store = FeatureStore(fs_yaml_file=local_path)\nexcept Exception as e:\n    raise RuntimeError(f'Invalid feast yaml {yaml_path}: {e!r}') from e","preventionTips":["Pin feast version in the pipeline container to match config generation.","Validate the yaml in CI with the same feast release.","Keep required keys (project, registry, provider, online_store) in a template."],"tags":["python","apache-beam","feast","yaml","configuration"],"backgroundTag":"yaml-parse-error","analyzedSha":"12126d8942aaf848030c478b4c6a28c6af861c66","analyzedAt":"2026-09-13T01:50:10.254Z","contentChangedAt":"2026-09-13T01:50:10.254Z","schemaVersion":2},"datasetVersion":"2026-09-14T21:17:11.552Z"}