Skip to content

Conversation

@wietzesuijker
Copy link
Contributor

@wietzesuijker wietzesuijker commented Oct 28, 2025

Adds workflow-level parallelism controls and idempotency to prevent duplicate processing and enable safe workflow scaling.

Changes

  • Workflow controls: parallelism: 10, activeDeadlineSeconds: 7200, mutex synchronization
  • Idempotency: S3 check before conversion, --overwrite flag

Benefits

  • Limit concurrent workflows (cluster stability)
  • Prevent duplicate item processing (mutex lock)
  • Skip existing outputs (save compute costs)
  • Force re-conversion when needed (--overwrite flag)

Files

  • workflows/base/workflowtemplate.yaml: Add parallelism/timeout/mutex
  • scripts/convert.py: Add idempotency check"

The --crs-groups flag triggers prepare_dataset_with_crs_info() in data-model,
which writes CRS metadata via ds.rio.write_crs() and creates the spatial_ref
coordinate variable required by TiTiler validation.

Restores working configuration from commit 21ea009.
- workflows/README: explain secret purposes (event ingestion, storage, API auth)
- workflows/README: add direct OVH Manager links for kubeconfig and S3 credentials
- README: delegate setup to workflows/README
- Separate operator usage (root README) from deployment setup (workflows/README)
Add workflow-level controls:
- parallelism: 10 (limit concurrent workflows)
- activeDeadlineSeconds: 7200 (2h timeout)
- mutex synchronization (prevent duplicate processing)

Add idempotency to convert.py:
- check_output_exists() function (S3 check before conversion)
- --overwrite flag to force re-conversion
- Skip conversion if output already exists
@wietzesuijker wietzesuijker force-pushed the feat/workflow-parallelism branch from 250a262 to 0443e4a Compare October 28, 2025 08:58
@wietzesuijker wietzesuijker force-pushed the slim branch 3 times, most recently from 96e2de5 to efe5618 Compare October 30, 2025 07:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants