my prefect server setup prefect-metrics.waow.tech
python orchestration
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

fix enrich: PER_WAVE to avoid concurrent DuckDB lock conflicts

ExecutionMode.SEQUENTIAL doesn't exist (only PER_NODE and PER_WAVE).
PER_WAVE runs each wave as a single dbt build subprocess with a shared
DuckDB connection, avoiding the inter-process lock conflicts that PER_NODE
causes by spawning a separate subprocess per node.

Also drops CacheConfig which is only supported in PER_NODE mode.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

zzstoatzz b63f0072 83c34683

+1 -4
+1 -4
flows/enrich.py
··· 1 1 import subprocess 2 - from datetime import timedelta 3 2 from pathlib import Path 4 3 5 4 from prefect import flow, get_run_logger 6 5 from prefect_dbt.core._orchestrator import ( 7 - CacheConfig, 8 6 ExecutionMode, 9 7 PrefectDbtOrchestrator, 10 8 TestStrategy, ··· 36 34 ) 37 35 orchestrator = PrefectDbtOrchestrator( 38 36 settings=settings, 39 - execution_mode=ExecutionMode.SEQUENTIAL, 40 - cache=CacheConfig(expiration=timedelta(hours=1)), 37 + execution_mode=ExecutionMode.PER_WAVE, 41 38 test_strategy=TestStrategy.DEFERRED, 42 39 create_summary_artifact=True, 43 40 )