fix(connectors): handle unrecognized types with explicit coverage and diagnostics#3196
Conversation
Codecov Report❌ Patch coverage is
❌ Your patch check has failed because the patch coverage (36.04%) is below the target coverage (50.00%). You can increase the patch coverage or adjust the target coverage. Additional details and impacted files@@ Coverage Diff @@
## master #3196 +/- ##
=============================================
- Coverage 74.10% 19.23% -54.87%
Complexity 943 943
=============================================
Files 1159 1157 -2
Lines 102033 90511 -11522
Branches 79083 67579 -11504
=============================================
- Hits 75607 17414 -58193
- Misses 23765 72678 +48913
+ Partials 2661 419 -2242
🚀 New features to boost your workflow:
|
|
This pull request has been automatically marked as stale because it has not had recent activity. It will be closed in 7 days if no further activity occurs. If you need a review, please ensure CI is green and the PR is rebased on the latest master. Don't hesitate to ping the maintainers - either @core on Discord or by mentioning them directly here on the PR. Thank you for your contribution! |
Which issue does this PR close?
Closes #3175
Rationale
Unrecognized Postgres types silently coerced to String, returning opaque
InvalidRecordon failure with no column or type context.What changed?
The default
_branch inextract_column_valueattempted to read any unrecognized Postgres type asOption<String>, failing silently withError::InvalidRecordand no indication of which column or type caused it.Added explicit handlers for DATE, TIME, INTERVAL, OID, NAME, BPCHAR, and 13 array types (_BOOL, _INT2, _INT4, _INT8, _FLOAT4, _FLOAT8, _TEXT, _VARCHAR, _CHAR, _BPCHAR, _UUID, _JSON, _JSONB). The default branch now logs a warning with column name and type before attempting String fallback, and returns
InvalidRecordValuewith a diagnostic message on failure.Local Execution
AI Usage