Skip to content

Commit a3e2c0a

Browse files
rebase of windows pr
1 parent 2561ef8 commit a3e2c0a

2 files changed

Lines changed: 4 additions & 2 deletions

File tree

sqlmesh/core/model/cache.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@
1313
from sqlmesh.core.model.definition import ExternalModel, Model, SqlModel, _Model
1414
from sqlmesh.utils.cache import FileCache
1515
from sqlmesh.utils.hashing import crc32
16-
from sqlmesh.utils.windows import IS_WINDOWS
1716
from sqlmesh.utils.process import PoolExecutor, create_process_pool_executor
1817

1918
from dataclasses import dataclass

sqlmesh/utils/process.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import typing as t
55
import multiprocessing as mp
66
from sqlmesh.core import constants as c
7+
from sqlmesh.utils.windows import IS_WINDOWS
78

89

910
class SynchronousPoolExecutor:
@@ -65,8 +66,10 @@ def create_process_pool_executor(
6566
initializer=initializer,
6667
initargs=initargs,
6768
)
69+
# fork doesnt work on Windows. ref: https://docs.python.org/3/library/multiprocessing.html#multiprocessing-start-methods
70+
context_type = "spawn" if IS_WINDOWS else "fork"
6871
return ProcessPoolExecutor(
69-
mp_context=mp.get_context("fork"),
72+
mp_context=mp.get_context(context_type),
7073
initializer=initializer,
7174
initargs=initargs,
7275
max_workers=max_workers,

0 commit comments

Comments
 (0)