8000 Worker Pool in trap context · Issue #361 · socketry/async · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
Worker Pool in trap context #361
Open
@ioquatix

Description

@ioquatix

I noticed this issue, but I'm unable to reproduce it locally:

/home/runner/.rubies/ruby-head/lib/ruby/gems/3.4.0+1/gems/sus-0.32.0/lib/sus/mock.rb:33: warning: Exception in finalizer #<Tempfile::FinalizerManager:0x00007fc9fd2246f0 @open_files={}, @path="/tmp/20241127-4684-jdry9k", @pid=4684, @unlinked=false>
/home/runner/work/async/async/lib/async/worker_pool.rb:73:in 'Thread::Mutex#synchronize': can't be called from trap context (ThreadError)
	from /home/runner/work/async/async/lib/async/worker_pool.rb:73:in 'Async::WorkerPool::Promise#cancel'
	from /home/runner/work/async/async/lib/async/worker_pool.rb:124:in 'Async::WorkerPool::Worker#call'
	from /home/runner/work/async/async/lib/async/worker_pool.rb:160:in 'Async::WorkerPool#call'
	from /home/runner/work/async/async/lib/async/worker_pool.rb:22:in 'Async::WorkerPool::BlockingOperationWait#blocking_operation_wait'
	from /home/runner/.rubies/ruby-head/lib/ruby/3.4.0+1/tempfile.rb:392:in 'File.unlink'
	from /home/runner/.rubies/ruby-head/lib/ruby/3.4.0+1/tempfile.rb:392:in 'Tempfile::FinalizerManager#call'
	from /home/runner/.rubies/ruby-head/lib/ruby/gems/3.4.0+1/gems/sus-0.32.0/lib/sus/mock.rb:33:in 'Thread.current'
	from /home/runner/.rubies/ruby-head/lib/ruby/gems/3.4.0+1/gems/sus-0.32.0/lib/sus/mock.rb:33:in 'block in replace'
	from /home/runner/work/async/async/external/async-http/lib/async/http/client.rb:32:in 'Async::HTTP::Client#initialize'
	from /home/runner/.rubies/ruby-head/lib/ruby/gems/3.4.0+1/gems/sus-fixtures-async-http-0.10.0/lib/sus/fixtures/async/http/server_context.rb:99:in 'Class#new'
	from /home/runner/.rubies/ruby-head/lib/ruby/gems/3.4.0+1/gems/sus-fixtures-async-http-0.10.0/lib/sus/fixtures/async/http/server_context.rb:99:in 'Sus::Fixtures::Async::HTTP::ServerContext#make_client'
	from /home/runner/.rubies/ruby-head/lib/ruby/gems/3.4.0+1/gems/sus-fixtures-async-http-0.10.0/lib/sus/fixtures/async/http/server_context.rb:130:in 'Sus::Fixtures::Async::HTTP::ServerContext#before'
	from /home/runner/.rubies/ruby-head/lib/ruby/gems/3.4.0+1/gems/sus-0.32.0/lib/sus/base.rb:37:in 'Sus::Base#around'
	from /home/runner/.rubies/ruby-head/lib/ruby/gems/3.4.0+1/gems/sus-fixtures-async-0.2.0/lib/sus/fixtures/async/scheduler_context.rb:72:in 'block (2 levels) in Sus::Fixtures::Async::SchedulerContext#around'
	from /home/runner/.rubies/ruby-head/lib/ruby/gems/3.4.0+1/gems/sus-fixtures-async-0.2.0/lib/sus/fixtures/async/scheduler_context.rb:36:in 'block in Sus::Fixtures::Async::SchedulerContext#run_with_timeout'
	from /home/runner/work/async/async/lib/async/task.rb:197:in 'block in Async::Task#run'
	from /home/runner/work/async/async/lib/async/task.rb:435:in 'block in Async::Task#schedule'
/home/runner/work/async/async/lib/async/worker_pool.rb:81:in 'Thread::Mutex#synchronize': can't be called from trap context (ThreadError)
	from /home/runner/work/async/async/lib/async/worker_pool.rb:81:in 'Async::WorkerPool::Promise#wait'
	from /home/runner/work/async/async/lib/async/worker_pool.rb:122:in 'Async::WorkerPool::Worker#call'
	from /home/runner/work/async/async/lib/async/worker_pool.rb:160:in 'Async::WorkerPool#call'
	from /home/runner/work/async/async/lib/async/worker_pool.rb:22:in 'Async::WorkerPool::BlockingOperationWait#blocking_operation_wait'
	from /home/runner/.rubies/ruby-head/lib/ruby/3.4.0+1/tempfile.rb:392:in 'File.unlink'
	from /home/runner/.rubies/ruby-head/lib/ruby/3.4.0+1/tempfile.rb:392:in 'Tempfile::FinalizerManager#call'
	from /home/runner/.rubies/ruby-head/lib/ruby/gems/3.4.0+1/gems/sus-0.32.0/lib/sus/mock.rb:33:in 'Thread.current'
	from /home/runner/.rubies/ruby-head/lib/ruby/gems/3.4.0+1/gems/sus-0.32.0/lib/sus/mock.rb:33:in 'block in replace'
	from /home/runner/work/async/async/external/async-http/lib/async/http/client.rb:32:in 'Async::HTTP::Client#initialize'
	from /home/runner/.rubies/ruby-head/lib/ruby/gems/3.4.0+1/gems/sus-fixtures-async-http-0.10.0/lib/sus/fixtures/async/http/server_context.rb:99:in 'Class#new'
	from /home/runner/.rubies/ruby-head/lib/ruby/gems/3.4.0+1/gems/sus-fixtures-async-http-0.10.0/lib/sus/fixtures/async/http/server_context.rb:99:in 'Sus::Fixtures::Async::HTTP::ServerContext#make_client'
	from /home/runner/.rubies/ruby-head/lib/ruby/gems/3.4.0+1/gems/sus-fixtures-async-http-0.10.0/lib/sus/fixtures/async/http/server_context.rb:130:in 'Sus::Fixtures::Async::HTTP::ServerContext#before'
	from /home/runner/.rubies/ruby-head/lib/ruby/gems/3.4.0+1/gems/sus-0.32.0/lib/sus/base.rb:37:in 'Sus::Base#around'
	from /home/runner/.rubies/ruby-head/lib/ruby/gems/3.4.0+1/gems/sus-fixtures-async-0.2.0/lib/sus/fixtures/async/scheduler_context.rb:72:in 'block (2 levels) in Sus::Fixtures::Async::SchedulerContext#around'
	from /home/runner/.rubies/ruby-head/lib/ruby/gems/3.4.0+1/gems/sus-fixtures-async-0.2.0/lib/sus/fixtures/async/scheduler_context.rb:36:in 'block in Sus::Fixtures::Async::SchedulerContext#run_with_timeout'
	from /home/runner/work/async/async/lib/async/task.rb:197:in 'block in Async::Task#run'
	from /home/runner/work/async/async/lib/async/task.rb:435:in 'block in Async::Task#schedule'
/home/runner/work/async/async/lib/async/worker_pool.rb:45: [BUG] Segmentation fault at 0x00007fc9fe2a3640
ruby 3.4.0dev (2024-11-26T17:58:43Z :detached: c1dcd1d496) +PRISM [x86_64-linux]

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions

    0