Skip to content

Commit 6da2f46

Browse files
committed
Wrap code in subquery to safely apply user's LIMIT
1 parent 20dc8e9 commit 6da2f46

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

src/dbt_core_interface/server.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# pyright: reportCallInDefaultInitializer=false, reportUnknownMemberType=false, reportAny=false
1+
t# pyright: reportCallInDefaultInitializer=false, reportUnknownMemberType=false, reportAny=false
22
"""dbt-core-interface server API.
33
44
Note that the interface is coupled to https://github.com/datacoves/datacoves-power-user
@@ -284,12 +284,13 @@ def run_sql(
284284
comp_res = runner.compile_sql(raw_sql)
285285
try:
286286
model_context = runner.generate_runtime_model_context(comp_res.node)
287+
compiled_code = f"select * from ({model_context['compiled_code']}) as __server_query"
287288
query = runner.adapter.execute_macro(
288289
macro_name="get_show_sql",
289290
macro_resolver=runner.manifest,
290291
context_override=model_context,
291292
kwargs={
292-
"compiled_code": model_context["compiled_code"],
293+
"compiled_code": compiled_code,
293294
"sql_header": model_context["config"].get("sql_header"),
294295
"limit": limit,
295296
},

0 commit comments

Comments
 (0)