Visitar URL original
feat: Add skip_feature_view_validation parameter to FeatureStore.apply() and plan() by Copilot 路 Pull Request #5859 路 feast-dev/feast 路 GitHub
Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Add documentation for skip_feature_view_validation parameter
Co-authored-by: franciscojavierarceo <4163062+franciscojavierarceo@users.noreply.github.com>
  • Loading branch information
Copilot and franciscojavierarceo committed Jan 15, 2026
commit 8e8dfb1692c2eb1ea1f37fbadea2239ad37036f2
40 changes: 40 additions & 0 deletions docs/reference/beta-on-demand-feature-view.md
Original file line number Diff line number Diff line change
Expand Up @@ -309,4 +309,44 @@ There are new CLI commands to manage on demand feature views:
feast on-demand-feature-views list: Lists all registered on demand feature views after feast apply is run.
feast on-demand-feature-views describe [NAME]: Describes the definition of an on demand feature view.

## Troubleshooting

### Validation Issues with Complex Transformations

When defining On Demand Feature Views with complex transformations, you may encounter validation errors during `feast apply`. Feast validates ODFVs by constructing random inputs and running the transformation function to infer the output schema. This validation can sometimes be overly strict or fail for complex transformation logic.

If you encounter validation errors that you believe are incorrect, you can skip feature view validation:

**Python SDK:**
```python
from feast import FeatureStore

store = FeatureStore(repo_path=".")
store.apply([my_odfv], skip_feature_view_validation=True)
```

**CLI:**
```bash
feast apply --skip-feature-view-validation
```

{% hint style="warning" %}
Skipping validation bypasses important checks. Use this option only when the validation system is being overly strict. We encourage you to report validation issues on the [Feast GitHub repository](https://github.com/feast-dev/feast/issues) so the team can improve the validation system.
{% endhint %}

**When to use skip_feature_view_validation:**
- Your ODFV transformation uses complex logic that fails the random input validation
- You've verified your transformation works correctly with real data
- The validation error doesn't reflect an actual issue with your transformation

**What validation is skipped:**
- Feature view name uniqueness checks
- ODFV transformation validation via `_construct_random_input()`
- Schema inference for features

**What is NOT skipped:**
- Data source validation (use `--skip-source-validation` to skip)
- Registry operations
- Infrastructure updates


21 changes: 20 additions & 1 deletion docs/reference/feast-cli-commands.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,13 +51,32 @@ Creates or updates a feature store deployment
feast apply
```

**Options:**
* `--skip-source-validation`: Skip validation of data sources (don't check if tables exist)
* `--skip-feature-view-validation`: Skip validation of feature views. Use with caution as this skips important checks

```bash
# Skip only data source validation
feast apply --skip-source-validation

# Skip only feature view validation
feast apply --skip-feature-view-validation

# Skip both validations
feast apply --skip-source-validation --skip-feature-view-validation
```

**What does Feast apply do?**

1. Feast will scan Python files in your feature repository and find all Feast object definitions, such as feature views, entities, and data sources.
2. Feast will validate your feature definitions (e.g. for uniqueness of features)
2. Feast will validate your feature definitions (e.g. for uniqueness of features). This validation can be skipped using the `--skip-feature-view-validation` flag if the type/validation system is being overly strict.
3. Feast will sync the metadata about Feast objects to the registry. If a registry does not exist, then it will be instantiated. The standard registry is a simple protobuf binary file that is stored on disk \(locally or in an object store\).
4. Feast CLI will create all necessary feature store infrastructure. The exact infrastructure that is deployed or configured depends on the `provider` configuration that you have set in `feature_store.yaml`. For example, setting `local` as your provider will result in a `sqlite` online store being created.

{% hint style="info" %}
The `--skip-feature-view-validation` flag is particularly useful for On-Demand Feature Views (ODFVs) with complex transformations that may fail validation. However, use it with caution and please report any validation issues to the Feast team on GitHub.
{% endhint %}

{% hint style="warning" %}
`feast apply` \(when configured to use cloud provider like `gcp` or `aws`\) will create cloud infrastructure. This may incur costs.
{% endhint %}
Expand Down
Loading