AsyncRetriever cannot be used in DynamicSchemaLoader - parameter name mismatch
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 76/100
Research direction
Start in airbyte_cdk/sources/declarative/parsers/model_to_component_factory.py at lines 2556, 837, and 3465, then reproduce the declarative YAML configuration using AsyncRetriever inside DynamicSchemaLoader. Trace the keyword arguments and verify that dynamic schema generation completes without the missing stream_slicer TypeError, matching SimpleRetriever behavior.
Written by the indexing model from the issue text.
Description
Description
AsyncRetriever fails when used inside DynamicSchemaLoader for dynamic schema generation, throwing:
TypeError: ModelToComponentFactory.create_async_retriever() missing 1 required keyword-only argument: 'stream_slicer'
Root Cause
In airbyte_cdk/sources/declarative/parsers/model_to_component_factory.py:
- Line 2556:
create_dynamic_schema_loaderpassespartition_router=...when creating the retriever - Line 837:
_create_component_from_modelpasses kwargs through unchanged - Line 3465:
create_async_retrieverexpectsstream_sliceras a required parameter
The parameter names don't match - partition_router is passed but stream_slicer is expected.
Steps to Reproduce
Use AsyncRetriever in a DynamicSchemaLoader in a declarative YAML connector:
schema_loader:
type: DynamicSchemaLoader
retriever:
type: AsyncRetriever
# ... AsyncRetriever config
Expected Behavior
AsyncRetriever should work in DynamicSchemaLoader just like SimpleRetriever does.
Suggested Fix
Either:
- Change line 2556 to pass stream_slicer=... instead of partition_router=...
- Or change line 3465 to accept partition_router instead of stream_slicer
Environment
- airbyte-cdk version: [latest ... cloud 7.0.4 ]
- Connector type: Declarative YAML (low-code)
---
**Internal Tracking:** https://github.com/airbytehq/oncall/issues/11848
- Dominant language
- Python
- Stars
- 26
- Forks
- 53
- Avg merge
- 5d 12h
- Merged PRs (30d)
- 7
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from airbytehq/airbyte-python-cdk
-
airbyte-cdk connector test: --no-creds crashes when combined with --pytest-arg (tuple has no extend) Opencommunity
Difficulty 1/5 Under an hour Newbie friendliness 88/100
airbytehq/airbyte-python-cdk#1153 ·
-
community
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
airbytehq/airbyte-python-cdk#1147 ·
-
community
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
airbytehq/airbyte-python-cdk#1137 ·
-
community
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
airbytehq/airbyte-python-cdk#1127 · 1 comment ·
-
community
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
airbytehq/airbyte-python-cdk#1118 · 2 comments ·
All issues in airbytehq/airbyte-python-cdk
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100