Skip to content

feat: add Vertica adapter support#130

Open
Albayrakengin wants to merge 3 commits into
b-ned:mainfrom
Albayrakengin:feat/vertica-support
Open

feat: add Vertica adapter support#130
Albayrakengin wants to merge 3 commits into
b-ned:mainfrom
Albayrakengin:feat/vertica-support

Conversation

@Albayrakengin

Copy link
Copy Markdown

What

Adds Vertica to the supported adapters, mirroring the sqlserver contribution
pattern
for adapters whose SQLGlot dialect name differs from the dbt
adapter_type.

Why these decisions

  • Vertica maps to SQLGlot postgres. SQLGlot has no native Vertica dialect.
    dbt-vertica projects emit adapter_type: "vertica" in manifest.json, and Vertica
    SQL/identifier behaviour is close enough to reuse the existing postgres parsing
    path.
  • self.adapter_type is tracked separately from self.dialect. For remapped
    adapters (sqlservertsql, verticapostgres), quoted-column case
    sensitivity must follow adapter semantics, not the mapped SQLGlot dialect alone.
    _build_quoted_columns_lookup therefore checks adapter_type.
  • DialectInfo("vertica", "lower", True, "vertica", sqlglot_dialect="postgres"). Vertica uses 3-part identifiers and double-quoted,
    case-sensitive identifiers like Postgres. Unquoted identifiers are lowercased.

Fixture generation

tests/test_data/vertica/ is derived from the existing postgres jaffle_shop
fixture with metadata.adapter_type set to "vertica". Happy to regenerate from a
real dbt-vertica project if maintainers prefer native artifacts.

Verification

  • pytest tests/test_extractor.py::test_adapter_type_detection_vertica -q
  • pytest tests/test_extractor.py::test_adapter_type_detection_sqlserver -q
  • pytest tests/test_extractor.py::test_vertica_quoted_columns_preserve_case -q
  • pytest tests/test_dialect_matrix.py -q
  • pytest tests/ -q

Albayrakengin and others added 3 commits June 18, 2026 14:39
Remove duplicate launch config, fix README formatting, document adapter semantics for quoted columns, and add sqlserver/vertica regression tests.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant