[#114348] [Ruby master Feature#19832] Method#destructive?, UnboundMethod#destructive? — "sawa (Tsuyoshi Sawada) via ruby-core" <ruby-core@...>

Issue #19832 has been reported by sawa (Tsuyoshi Sawada).

15 messages 2023/08/06

[#114365] [Ruby master Bug#19834] Segmentation fault while running in docker — "ramachandran@... (Ramachandran A) via ruby-core" <ruby-core@...>

Issue #19834 has been reported by ramachandran@mallow-tech.com (Ramachandran A).

7 messages 2023/08/09

[#114380] [Ruby master Bug#19837] Concurrent calls to Process.waitpid2 misbehave on Ruby 3.1 & 3.2 — "kjtsanaktsidis (KJ Tsanaktsidis) via ruby-core" <ruby-core@...>

Issue #19837 has been reported by kjtsanaktsidis (KJ Tsanaktsidis).

7 messages 2023/08/11

[#114399] [Ruby master Feature#19839] Need a method to check if two ranges overlap — "shouichi (Shouichi KAMIYA) via ruby-core" <ruby-core@...>

Issue #19839 has been reported by shouichi (Shouichi KAMIYA).

27 messages 2023/08/18

[#114410] [Ruby master Bug#19841] Marshal.dump stack overflow with recursive Time — "segiddins (Samuel Giddins) via ruby-core" <ruby-core@...>

Issue #19841 has been reported by segiddins (Samuel Giddins).

9 messages 2023/08/18

[#114422] [Ruby master Feature#19842] Intorduce M:N threads — "ko1 (Koichi Sasada) via ruby-core" <ruby-core@...>

Issue #19842 has been reported by ko1 (Koichi Sasada).

30 messages 2023/08/21

[#114590] [Ruby master Bug#19857] Eval coverage is reset after each `eval`. — "ioquatix (Samuel Williams) via ruby-core" <ruby-core@...>

Issue #19857 has been reported by ioquatix (Samuel Williams).

21 messages 2023/08/30

[ruby-core:114530] [Ruby master Bug#17676] Accessing ENV from Ractor raises IsolationError

From: "ivoanjo (Ivo Anjo) via ruby-core" <ruby-core@...>
Date: 2023-08-25 08:30:08 UTC
List: ruby-core #114530
Issue #17676 has been updated by ivoanjo (Ivo Anjo).


Thank you Jeremy! :)

----------------------------------------
Bug #17676: Accessing ENV from Ractor raises IsolationError
https://bugs.ruby-lang.org/issues/17676#change-104329

* Author: delner (David Elner)
* Status: Closed
* Priority: Normal
* Assignee: ko1 (Koichi Sasada)
* ruby -v: ruby 3.0.0p0 (2020-12-25 revision 95aff21468) [x86_64-linux]
* Backport: 2.5: UNKNOWN, 2.6: UNKNOWN, 2.7: UNKNOWN, 3.0: UNKNOWN
----------------------------------------
## Background

Accessing ENV variables from a Ractor will raise Ractor::IsolationError, as the Hash is non-shareable.

## How to reproduce

``` ruby
ractor = Ractor.new do
 ENV['PATH']
end
 
ractor.take
```

## Expectation and result

Ractor raises Ractor::IsolationError for ENV

Expect to be able to access ENV variables from Ractors without raising an error.

```
`block in <main>': can not access non-shareable objects in constant Object::ENV by non-main Ractor. (Ractor::IsolationError)
```

## Additional Notes

Attempting to create a shareable copy of ENV currently fails:

```ruby
Ractor.make_shareable(ENV, copy: true)
# TypeError: cannot freeze ENV
# from <internal:ractor>:812:in `freeze'
```

## Suggested solutions

1. If ENV is a mutable hash, make a Ractor-compatible copy of ENV isolated to that Ractor.  




-- 
https://bugs.ruby-lang.org/
 ______________________________________________
 ruby-core mailing list -- ruby-core@ml.ruby-lang.org
 To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org
 ruby-core info -- https://ml.ruby-lang.org/mailman3/postorius/lists/ruby-core.ml.ruby-lang.org/

In This Thread

Prev Next