Dapr v1.18.1은 워크플로우 엔진 버그 수정에 집중된 패치 릴리스로, 타이머 리마인더 누수, 설정 리로드 후 사이드카 불능 상태, 워크플로우 영구 중단 등 5가지 문제를 수정합니다.
breakingHelm 설치 사용자: 워크플로우 동시성 제한이 이전까지 무시됐습니다
Helm으로 Dapr을 설치하면서 Configuration 리소스에 globalMaxConcurrentWorkflowInvocations, globalMaxConcurrentActivityInvocations 또는 per-name 제한 필드를 설정했다면, 해당 설정이 실제로는 적용되지 않았습니다. 1.18.1로 업그레이드하면 CRD 스키마가 올바르게 수정되어 제한이 실제로 적용되기 시작합니다. 값이 지나치게 보수적으로 설정돼 있으면 처리량이 갑자기 줄어들 수 있으므로, 프로덕션 업그레이드 전에 설정값을 반드시 검토하세요.
enhancement에이전트형·루프 워크플로우를 운영한다면 업그레이드 필수
이번 릴리스에서 수정된 버그 3개가 ContinueAsNew 루프나 동일 이벤트 이름을 반복 대기하는 패턴에 직접 영향을 줍니다. 이런 패턴은 에이전트형 워크플로우에서 흔히 쓰입니다. 리마인더 누수는 워크플로우 수명 동안 계속 쌓이고, ContinueAsNew 교착 상태는 타임아웃 없이 영구 중단을 유발합니다. 루프 워크플로우가 RUNNING에서 멈추거나 이유 없이 깨어나는 현상이 관측된다면 1.18.1로 업그레이드하세요.
enhancement워크플로우 사이드카의 설정 핫 리로드가 이제 정상 동작합니다
이 수정 이전에는 워크플로우 워커를 호스팅하는 사이드카에서 SIGHUP으로 설정 리로드를 수행하면 사이드카가 영구적으로 망가질 수 있었습니다 — 포트 50001이 연결을 거부하고 파드를 재시작하는 것 외에 복구 방법이 없었습니다. 워크플로우를 호스팅하는 배포에서 설정 핫 리로드를 사용한다면 1.18.1 업그레이드를 필수로 처리하세요.
주요 변경 (5)
- 동일한 외부 이벤트 이름을 루프에서 반복 대기할 때 타이머 리마인더가 누수되던 문제 수정
- 설정 핫 리로드(SIGHUP) 시 워크플로우 사이드카가 영구적으로 불능 상태에 빠지던 문제 수정 — 스트리밍 워커가 종료 시 정상적으로 닫힘
- 실제 변경이 없는 Kubernetes 오퍼레이터 리싱크 이벤트에 사이드카가 불필요하게 재시작하던 문제 수정
- ContinueAsNew 경계를 넘어 완료된 차일드 워크플로우 때문에 부모 워크플로우가 RUNNING 상태로 영구 중단되던 문제 수정
- Helm 차트의 Configuration CRD에 v1.18.0에서 추가된 워크플로우/액티비티 동시성 제한 필드 누락 수정