Skip to content

[Bug] Potential deadlock detected after upgrade to v0.6.0 #330

@laurynas

Description

@laurynas

What are you really trying to do?

I have upgraded sdk-ruby from v0.5.0 to v0.6.0 and ran benchmark workflow locally in dev env.

Describe the bug

Benchmark workflow consistently works fine with v0.5.0, but with v0.6.0 it consistently gets stuck with error [TMPRL1101] Potential deadlock detected: workflow didn't yield within 2.0 second(s)..

Image

Minimal Reproduction

  • Start worker
  • Start workflow
  • Wait
  • Get error

Environment/Versions

  • OS and processor: M3 MacBook
  • Temporal Version: 1.18
  • Temporal server running on Docker

Additional context

Workflow:

class Benchmarks::AsyncActivityTemporalioWorkflow < TemporalioWorkflow
  def execute(iterations = 1000)
    futures = iterations.times.map do |i|
      Temporalio::Workflow::Future.new do
        TemporalioExt::Activities.execute(HelloWorldActivityV2, "Test #{i}")
      end
    end

    Temporalio::Workflow::Future.all_of(*futures).wait

    true
  end
end

Activity:

class HelloWorldActivityV2 < TemporalioActivity
  def execute(name)
    "Hello #{name}"
  end
end

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions