Skip to content

Commit 05f5293

Browse files
authored
Revert "Fix: redshift leverages postgres adapter dispatch implementations for common functionality" (#2836)
1 parent d9439d0 commit 05f5293

File tree

2 files changed

+7
-23
lines changed

2 files changed

+7
-23
lines changed

sqlmesh/dbt/adapter.py

Lines changed: 7 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -97,27 +97,15 @@ def quote(self, identifier: str) -> str:
9797

9898
def dispatch(self, name: str, package: t.Optional[str] = None) -> t.Callable:
9999
"""Returns a dialect-specific version of a macro with the given name."""
100-
package = package or "dbt"
101100
target_type = self.jinja_globals["target"]["type"]
102-
macro_suffix = f"__{name}"
103-
104-
def _relevance(macro: MacroReference) -> int:
105-
"""Lower scores more relevant."""
106-
if macro.name.startswith("default"):
107-
return 2
108-
elif macro.name.startswith(target_type):
109-
return 0
110-
return 1
111-
112-
macros = [
113-
MacroReference(package=macro_package, name=macro_name)
114-
for macro_package, macros in self.jinja_macros.packages.items()
115-
if (macro_package == package) or (package == "dbt" and macro_package.startswith("dbt_"))
116-
for macro_name in macros.keys()
117-
if macro_name.endswith(macro_suffix)
101+
references_to_try = [
102+
MacroReference(package=f"{package}_{target_type}", name=f"{target_type}__{name}"),
103+
MacroReference(package=package, name=f"{target_type}__{name}"),
104+
MacroReference(package=package, name=f"default__{name}"),
118105
]
119-
for macro in sorted(macros, key=_relevance):
120-
macro_callable = self.jinja_macros.build_macro(macro, **self.jinja_globals)
106+
107+
for reference in references_to_try:
108+
macro_callable = self.jinja_macros.build_macro(reference, **self.jinja_globals)
121109
if macro_callable is not None:
122110
return macro_callable
123111

tests/dbt/test_adapter.py

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -164,13 +164,9 @@ def test_adapter_dispatch(sushi_test_project: Project, runtime_renderer: t.Calla
164164
context = sushi_test_project.context
165165
renderer = runtime_renderer(context)
166166
assert renderer("{{ adapter.dispatch('current_engine', 'customers')() }}") == "duckdb"
167-
assert renderer("{{ adapter.dispatch('current_timestamp')() }}") == "now()"
168-
assert renderer("{{ adapter.dispatch('current_timestamp', 'dbt')() }}") == "now()"
169167

170168
with pytest.raises(ConfigError, match=r"Macro 'current_engine'.*was not found."):
171169
renderer("{{ adapter.dispatch('current_engine')() }}")
172-
with pytest.raises(ConfigError, match=r"Macro 'current_timestamp'.*was not found."):
173-
assert renderer("{{ adapter.dispatch('current_timestamp', 'customers')() }}")
174170

175171

176172
def test_adapter_map_snapshot_tables(

0 commit comments

Comments
 (0)