Charles Feduke
06/08/2024, 1:51 AMtap-postgres
and I'm trying to figure out why wildcard metadata extractors are overriding more specific metadata extractors; here's my `.yml`:
plugins:
extractors:
- name: tap-postgres--secondary-svc-db
inherit_from: tap-postgres
metadata:
# secondary
secondary-investment_account_owning_entity:
replication-method: FULL_TABLE
"secondary-*":
table-key-properties: [ id ]
replication-method: INCREMENTAL
replication-key: modified_date
# secondary_archive
"secondary_archive-*_audit":
replication-method: INCREMENTAL
replication-key: audit_id
select:
# secondary
- secondary-investment_account_owning_entity
- secondary-investment_*.*
- secondary-owning_*.*
# secondary_archive
- secondary_archive-investment*_audit.*
- secondary_archive-owning*_audit.*
I'm receiving the following error message:
singer_sdk.exceptions.InvalidReplicationKeyException: Field 'modified_date' is not in schema for stream 'secondary-investment_account_owning_entity'
I would expect for secondary-investment_account_owning_entity
that the FULL_TABLE
replication method would be used and it would not try to inherit the incremental/modified_date of the less specific wildcard; at least this is the behavior I ascertained from the examples in the docs. Do wildcards override more specific settings?Edgar Ramírez (Arch.dev)
06/10/2024, 8:49 PMDo wildcards override more specific settings?I would think so. Can you try this?
metadata:
"secondary-*":
table-key-properties: [ id ]
replication-method: INCREMENTAL
replication-key: modified_date
# secondary_archive
"secondary_archive-*_audit":
replication-method: INCREMENTAL
replication-key: audit_id
# secondary
secondary-investment_account_owning_entity:
replication-method: FULL_TABLE