Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Catch/throw and exceptions do not propagate out of fibers #1519

Closed
headius opened this Issue Feb 21, 2014 · 1 comment

Comments

Projects
None yet
1 participant
@headius
Copy link
Member

commented Feb 21, 2014

Perhaps due to exception-propgation fixes in 1.7.11, catch/throw stopped working across a fiber boundary.

This code will hang, because the fiber goes away but the waiter never receives the Continuation exception for the throw:

catch(:foo) do
  Fiber.new do
    throw :foo
  end.resume
end

Fix in progress.

@headius headius added core labels Feb 21, 2014

@headius headius added this to the JRuby 1.7.11 milestone Feb 21, 2014

@headius headius self-assigned this Feb 21, 2014

headius added a commit that referenced this issue Feb 21, 2014

@headius headius closed this in 83a7619 Feb 21, 2014

@headius

This comment has been minimized.

Copy link
Member Author

commented Feb 21, 2014

An additional case that actually caused hangs during "bundle install" of deep dependency graphs:

Fiber.new { raise }.resume

I know, right? Fixed (or rather un-broken) by d784882.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.