-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Description
Problem
The MutableDict.as_mutable() wrapper applied to ObjectTypeImpl is causing issues with forward and reverse type mapping procedures.
The problematic code is:
ObjectType = MutableDict.as_mutable(ObjectTypeImpl)Reference:
sqlalchemy-cratedb/src/sqlalchemy_cratedb/type/object.py
Lines 71 to 72 in d3f0291
| # Designated name to refer to. `Object` is too ambiguous. | |
| ObjectType = MutableDict.as_mutable(ObjectTypeImpl) |
Impact
When using ObjectType in type mapping dictionaries, the MutableDict wrapper interferes with type resolution. This requires workarounds like using ObjectTypeImpl() directly instead of ObjectType.
Context
This issue was discovered while implementing history mode support in the Fivetran destination connector:
- PR: History mode: Template file blueprints and minimal CrateDB implementation cratedb-fivetran-destination#112
- Comment: History mode: Template file blueprints and minimal CrateDB implementation cratedb-fivetran-destination#112 (comment)
Workaround
Currently working around by using ObjectTypeImpl() directly in type mappings instead of ObjectType.
Reported by: @amotl
Metadata
Metadata
Assignees
Labels
No labels