The feast registry-dump command fails with PostgreSQL registry (SQL registry type)
- Dominant language
- Python
- Stars
- 7.3k
- Forks
- 1.4k
- Avg merge
- 1d 21h
- Merged PRs (30d)
- 15
Description
## Expected Behavior
According to the official Feast documentation, the `feast registry-dump` command prints the content of the registry.
## Current Behavior
The `feast registry-dump` command does not work when the registry is configured to be PostgreSQL (`registry_type: sql`).
Using a postgres:14 Docker image for the registry makes it fail with the following error raised by the get_registry_store_class_from_scheme(..) function:
```
Exception: Registry path postgresql+psycopg://:@:5432/ has unsupported scheme postgresql+psycopg. Supported schemes are file, s3 and gs.
```
## Steps to reproduce
Set up a local Feast environment in docker compose using PostgreSQL as registry:
```
postgres:
image: postgres:14
environment:
POSTGRES_DB: feast
POSTGRES_PASSWORD: mysecretpassword
POSTGRES_USER: myusername
ports:
- 5435:5432
```
feature_store.yaml:
```
project:
provider: local
entity_key_serialization_version: 2 # it also fails with 3
registry:
registry_type: sql
path: "postgresql+psycopg://myusername:mysecretpassword@postgres:5432/feast"
offline_store:
...
online_store:
...
```
Then try to run the `feast registry-dump` command in this environment.
### Specifications
- Version: 0.54.0 (but should be present in latest version too, as the registry dump logic is unchanged)
- Platform: Debian GNU/Linux 12 (python:3.11.5-slim Docker image with feast lib v0.54.0)
- Subsystem: SQL registry
## Possible Solution
Fix the command so feast registry-dump works with all supported registry backends.
Or, if limiting registry-dump to file/s3/gs registries is intentional, document that restriction clearly in the CLI reference and have the command fail with an explicit, actionable message (e.g. "registry-dump is not supported for SQL registries; use feast list instead") rather than the generic "unsupported scheme" error.
Contributor guide
Research direction
Start by reproducing the failure with the PostgreSQL Docker Compose setup and inspect the feast registry-dump command, especially get_registry_store_class_from_scheme(..). Confirm whether SQL registries should be supported; done means the command works with the PostgreSQL registry or returns a clear, actionable restriction message if they are intentionally unsupported.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, postgresql, python
- Domain
- cli, databases
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 68/100