Skip to content

Commit 49aa308

Browse files
authored
Fix: Cache DBT macros to improve load time (#695)
1 parent 4c1b671 commit 49aa308

1 file changed

Lines changed: 6 additions & 4 deletions

File tree

sqlmesh/dbt/builtin.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -250,7 +250,7 @@ def _try_literal_eval(value: str) -> t.Any:
250250
return value
251251

252252

253-
def _dbt_macros_registry() -> JinjaMacroRegistry:
253+
def _dbt_macro_registry() -> JinjaMacroRegistry:
254254
registry = JinjaMacroRegistry()
255255

256256
try:
@@ -270,6 +270,8 @@ def _dbt_macros_registry() -> JinjaMacroRegistry:
270270
return registry
271271

272272

273+
DBT_MACRO_REGISTRY = _dbt_macro_registry()
274+
273275
BUILTIN_GLOBALS = {
274276
"api": Api(),
275277
"env_var": env_var,
@@ -367,9 +369,9 @@ def create_builtin_globals(
367369

368370
builtin_globals.update(jinja_globals)
369371
if "dbt" not in builtin_globals:
370-
builtin_globals["dbt"] = (
371-
_dbt_macros_registry().build_environment(**builtin_globals).globals.get("dbt", {})
372-
)
372+
builtin_globals["dbt"] = DBT_MACRO_REGISTRY.build_environment(
373+
**builtin_globals
374+
).globals.get("dbt", {})
373375

374376
return builtin_globals
375377

0 commit comments

Comments
 (0)