coinbase / coinbase/temporal-ruby

Mismatch in `workflow_id_reuse_policy` across testing and production environments

Open
#341 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Ruby
Stars
287
Forks
113
Avg merge
6d 11h
Merged PRs (30d)
1

Description

When executing Temporal tests locally, workflows with the same `workflow_id`, and `COMPLETED` status are not rerun. They raise a `WorkflowExecutionAlreadyStartedFailure`.

But this is not the case in production, where `COMPLETED` workflows with the same `workflow_id` are rerun without passing `{workflow_id_reuse_policy: :allow}` explicitly.

I have currently patched https://github.com/coinbase/temporal-ruby/blob/b5efd2cef802be2fa97d5bab04839413726ac06e/lib/temporal/testing/temporal_override.rb#L83, to use `:allow` as the default value.

Is this intended behavior ? I feel the testing environment should be as close as possible to dev & production.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.