| "git clone --depth 1 https://github.com/ruby/ruby.git master" exit with 0. |
| Cloning into 'master'... |
| "./autogen.sh" exit with 0. |
| "autoconf" exit with 0. |
| "/home/opc/ruby/src/master/configure --prefix=/home/opc/ruby/install/master --disable-install-doc --disable-dtrace --disable-yjit" exit with 0. |
| configure: WARNING: does not work; ignore |
| "make update-unicode -j3" exit with 0. |
| "make update-download -j3" exit with 0. |
| Cloning into '/home/opc/ruby/src/master/gems/src/rbs'... |
| Cloning into '/home/opc/ruby/src/master/gems/src/debug'... |
| From https://github.com/ruby/debug |
| * branch 927587afb6aac69b358b86a01f602d207053e8d2 -> FETCH_HEAD |
| HEAD is now at 927587a Stop assuming Integer#times is written in C |
| From https://github.com/ruby/rbs |
| * branch 33813a60752624d58dfe5ae770b39bfaf29fbaf1 -> FETCH_HEAD |
| HEAD is now at 33813a60 Use valid syntax |
| "make update-rubyspec -j3" exit with 0. |
| "make update-src -j3" exit with 0. |
| "make after-update -j3" exit with 0. |
| + cp /home/opc/ruby/src/master/enc/jis/props.h.blt /home/opc/ruby/src/master/enc/jis/props.h |
| "make miniruby -j3" exit with 0. |
| "make ruby -j3" exit with 0. |
| "make all -j3" exit with 0. |
| libffi_version: 3.1.0 |
| "make install -j3" exit with 0. |
| "make yes-btest TESTOPTS='-q -j3'" exit with 512. |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_7_1221.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_30_1223.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_37_1224.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_68_1228.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_84_1230.rb:3:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_76_1229.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_94_1231.rb:3:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_103_1232.rb:3:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_113_1233.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_122_1234.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_135_1235.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_149_1236.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_180_1237.rb:4:in `block in <main>' |
| from <internal:numeric>:237:in `times' |
| from bootstraptest.test_ractor.rb_180_1237.rb:3:in `each' |
| from bootstraptest.test_ractor.rb_180_1237.rb:3:in `map' |
| from bootstraptest.test_ractor.rb_180_1237.rb:3:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_215_1240.rb:3:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_236_1241.rb:3:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_244_1242.rb:3:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_259_1243.rb:4:in `block in test' |
| from bootstraptest.test_ractor.rb_259_1243.rb:3:in `each' |
| from bootstraptest.test_ractor.rb_259_1243.rb:3:in `map' |
| from bootstraptest.test_ractor.rb_259_1243.rb:3:in `test' |
| from bootstraptest.test_ractor.rb_259_1243.rb:26:in `block in <main>' |
| from <internal:numeric>:237:in `times' |
| from bootstraptest.test_ractor.rb_259_1243.rb:25:in `each' |
| from bootstraptest.test_ractor.rb_259_1243.rb:25:in `map' |
| from bootstraptest.test_ractor.rb_259_1243.rb:25:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_298_1245.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_316_1246.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_333_1247.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_347_1248.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_364_1249.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_376_1250.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_384_1251.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_405_1252.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_419_1253.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_430_1254.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_448_1255.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_464_1256.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_471_1257.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_481_1258.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_506_1259.rb:6:in `block in <main>' |
| from bootstraptest.test_ractor.rb_506_1259.rb:5:in `each' |
| from bootstraptest.test_ractor.rb_506_1259.rb:5:in `map' |
| from bootstraptest.test_ractor.rb_506_1259.rb:5:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_541_1260.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_560_1261.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_574_1262.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_607_1263.rb:3:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_631_1265.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_701_1266.rb:13:in `check' |
| from bootstraptest.test_ractor.rb_701_1266.rb:21:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_728_1267.rb:3:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_749_1268.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_766_1269.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_783_1270.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_797_1271.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_808_1272.rb:3:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_822_1273.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_835_1274.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_850_1275.rb:2:in `<main>' |
| Fstderr output is not empty |
| Exception `ThreadError' at <internal:ractor>:282 - can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_862_1276.rb:53:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_921_1277.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_929_1278.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_949_1280.rb:6:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_969_1281.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_985_1282.rb:12:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1011_1283.rb:8:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1032_1284.rb:6:in `block in <main>' |
| from bootstraptest.test_ractor.rb_1032_1284.rb:2:in `map' |
| from bootstraptest.test_ractor.rb_1032_1284.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1044_1285.rb:22:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1091_1286.rb:6:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1110_1287.rb:11:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1132_1288.rb:5:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1147_1289.rb:6:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1159_1290.rb:4:in `<main>' |
| Fstderr output is not empty |
| bootstraptest.test_ractor.rb_1173_1291.rb:7:in `rescue in <main>': undefined method `message' for nil (NoMethodError) |
| from bootstraptest.test_ractor.rb_1173_1291.rb:4:in `<main>' |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1173_1291.rb:5:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1184_1292.rb:5:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1192_1293.rb:4:in `block in <main>' |
| from bootstraptest.test_ractor.rb_1192_1293.rb:4:in `each' |
| from bootstraptest.test_ractor.rb_1192_1293.rb:4:in `map' |
| from bootstraptest.test_ractor.rb_1192_1293.rb:4:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1214_1294.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1223_1295.rb:4:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1310_1297.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1360_1302.rb:8:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1404_1305.rb:4:in `block in <main>' |
| from <internal:trace_point>:260:in `enable' |
| from bootstraptest.test_ractor.rb_1404_1305.rb:3:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1417_1306.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1424_1307.rb:3:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1432_1308.rb:3:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1450_1309.rb:4:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1470_1310.rb:4:in `block in <main>' |
| from <internal:numeric>:237:in `times' |
| from bootstraptest.test_ractor.rb_1470_1310.rb:3:in `each' |
| from bootstraptest.test_ractor.rb_1470_1310.rb:3:in `map' |
| from bootstraptest.test_ractor.rb_1470_1310.rb:3:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1481_1311.rb:3:in `block in <main>' |
| from <internal:numeric>:237:in `times' |
| from bootstraptest.test_ractor.rb_1481_1311.rb:2:in `each' |
| from bootstraptest.test_ractor.rb_1481_1311.rb:2:in `map' |
| from bootstraptest.test_ractor.rb_1481_1311.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1496_1312.rb:8:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1509_1313.rb:3:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1523_1314.rb:3:in `block in <main>' |
| from bootstraptest.test_ractor.rb_1523_1314.rb:2:in `each' |
| from bootstraptest.test_ractor.rb_1523_1314.rb:2:in `map' |
| from bootstraptest.test_ractor.rb_1523_1314.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1574_1319.rb:25:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1614_1320.rb:15:in `block in <main>' |
| from <internal:numeric>:237:in `times' |
| from bootstraptest.test_ractor.rb_1614_1320.rb:14:in `each' |
| from bootstraptest.test_ractor.rb_1614_1320.rb:14:in `map' |
| from bootstraptest.test_ractor.rb_1614_1320.rb:14:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1655_1323.rb:3:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1662_1324.rb:3:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1671_1325.rb:3:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1684_1326.rb:4:in `block in <main>' |
| from <internal:numeric>:237:in `times' |
| from bootstraptest.test_ractor.rb_1684_1326.rb:3:in `each' |
| from bootstraptest.test_ractor.rb_1684_1326.rb:3:in `map' |
| from bootstraptest.test_ractor.rb_1684_1326.rb:3:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1705_1327.rb:5:in `block in <main>' |
| from <internal:numeric>:237:in `times' |
| from bootstraptest.test_ractor.rb_1705_1327.rb:4:in `each' |
| from bootstraptest.test_ractor.rb_1705_1327.rb:4:in `map' |
| from bootstraptest.test_ractor.rb_1705_1327.rb:4:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_ractor.rb_1734_1328.rb:4:in `block in <main>' |
| from <internal:numeric>:237:in `times' |
| from bootstraptest.test_ractor.rb_1734_1328.rb:3:in `each' |
| from bootstraptest.test_ractor.rb_1734_1328.rb:3:in `map' |
| from bootstraptest.test_ractor.rb_1734_1328.rb:3:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_yjit_rust_port.rb_349_1850.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_yjit_rust_port.rb_382_1853.rb:3:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_yjit_rust_port.rb_372_1852.rb:3:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_yjit_rust_port.rb_401_1855.rb:2:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_yjit_rust_port.rb_391_1854.rb:3:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_yjit.rb_2645_1698.rb:6:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_yjit.rb_2676_1699.rb:11:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_yjit.rb_2756_1704.rb:17:in `<main>' |
| Fstderr output is not empty |
| <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| from bootstraptest.test_yjit.rb_3424_1750.rb:2:in `<main>' |
| #1221 test_ractor.rb:7: |
| Ractor.new{}.class |
| #=> "" (expected "Ractor") |
| #1223 test_ractor.rb:30: |
| r = Ractor.new name: 'test-name' do |
| end |
| r.name |
| #=> "" (expected "test-name") |
| #1224 test_ractor.rb:37: |
| r = Ractor.new do |
| end |
| r.name.inspect |
| #=> "" (expected "nil") |
| #1228 test_ractor.rb:68: |
| r = Ractor.new { '' } |
| r.take |
| sleep 0.1 until r.inspect =~ /terminated/ |
| r.inspect |
| #=> /^#<Ractor:#([^ ]*?) .+:[0-9]+ terminated>$/ expected to be =~ |
| "" |
| #1230 test_ractor.rb:84: |
| # join |
| r = Ractor.new do |
| 'ok' |
| end |
| r.take |
| #=> "" (expected "ok") |
| #1229 test_ractor.rb:76: |
| r = Ractor.new(name: 'Test Ractor') { '' } |
| r.take |
| sleep 0.1 until r.inspect =~ /terminated/ |
| r.inspect |
| #=> /^#<Ractor:#([^ ]*?) Test Ractor .+:[0-9]+ terminated>$/ expected to be =~ |
| "" |
| #1231 test_ractor.rb:94: |
| # ping-pong with arg |
| r = Ractor.new 'ok' do |msg| |
| msg |
| end |
| r.take |
| #=> "" (expected "ok") |
| #1232 test_ractor.rb:103: |
| # ping-pong with two args |
| r = Ractor.new 'ping', 'pong' do |msg, msg2| |
| [msg, msg2] |
| end |
| 'ok' if r.take == ['ping', 'pong'] |
| #=> "" (expected "ok") |
| #1233 test_ractor.rb:113: |
| r = Ractor.new do |
| msg = Ractor.receive |
| end |
| r.send 'ok' |
| r.take |
| #=> "" (expected "ok") |
| #1234 test_ractor.rb:122: |
| r = Ractor.new Ractor.current do |main| |
| main << 1 |
| main << 2 |
| main << 3 |
| end |
| a = [] |
| a << Ractor.receive_if{|msg| msg == 2} |
| a << Ractor.receive_if{|msg| msg == 3} |
| a << Ractor.receive |
| #=> "" (expected "[2, 3, 1]") |
| #1235 test_ractor.rb:135: |
| r = Ractor.new Ractor.current do |main| |
| main << 1 |
| main << 2 |
| main << 3 |
| end |
| |
| a = [] |
| a << Ractor.receive_if{|msg| msg == 2} |
| a << Ractor.receive_if{|msg| break [msg, :break]} |
| a << Ractor.receive |
| #=> "" (expected "[2, [1, :break], 3]") |
| #1236 test_ractor.rb:149: |
| r = Ractor.new Ractor.current do |main| |
| main << 1 |
| main << 2 |
| main << 3 |
| end |
| |
| a = [] |
| |
| Ractor.receive_if do |msg| |
| begin |
| Ractor.receive |
| rescue Ractor::Error |
| a << [:e1, msg] |
| end |
| true # delete 1 from queue |
| end |
| |
| Ractor.receive_if do |msg| |
| begin |
| Ractor.receive_if{} |
| rescue Ractor::Error |
| a << [:e2, msg] |
| end |
| true # delete 2 from queue |
| end |
| |
| a # |
| #=> "" (expected "[[:e1, 1], [:e2, 2]]") |
| #1237 test_ractor.rb:180: |
| n = 3 |
| n.times.map{ |
| Ractor.new{ |
| 10_000.times{ rand.to_s } |
| :ok |
| } |
| }.map(&:take) |
| #=> "" (expected "[:ok, :ok, :ok]") |
| #1240 test_ractor.rb:215: |
| autoload :Foo, 'foo.rb' |
| r = Ractor.new do |
| p Foo |
| rescue Ractor::UnsafeError |
| :ok |
| end |
| r.take |
| #=> "" (expected "ok") |
| #1241 test_ractor.rb:236: |
| # select 1 |
| r1 = Ractor.new{'r1'} |
| r, obj = Ractor.select(r1) |
| 'ok' if r == r1 and obj == 'r1' |
| #=> "" (expected "ok") |
| #1242 test_ractor.rb:244: |
| # select 2 |
| r1 = Ractor.new{'r1'} |
| r2 = Ractor.new{'r2'} |
| rs = [r1, r2] |
| as = [] |
| r, obj = Ractor.select(*rs) |
| rs.delete(r) |
| as << obj |
| r, obj = Ractor.select(*rs) |
| as << obj |
| as.sort #=> ["r1", "r2"] |
| #=> "" (expected "[\"r1\", \"r2\"]") |
| #1243 test_ractor.rb:259: |
| def test n |
| rs = (1..n).map do |i| |
| Ractor.new(i) do |i| |
| "r#{i}" |
| end |
| end |
| as = [] |
| all_rs = rs.dup |
| |
| n.times{ |
| r, obj = Ractor.select(*rs) |
| as << [r, obj] |
| rs.delete(r) |
| } |
| |
| if as.map{|r, o| r.object_id}.sort == all_rs.map{|r| r.object_id}.sort && |
| as.map{|r, o| o}.sort == (1..n).map{|i| "r#{i}"}.sort |
| 'ok' |
| else |
| 'ng' |
| end |
| end |
| |
| 30.times.map{|i| |
| test i |
| } |
| #=> "" (expected "[\"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\"]") |
| #1245 test_ractor.rb:298: |
| r = Ractor.new do |
| 'finish' |
| end |
| |
| r.take |
| sleep 0.1 until r.inspect =~ /terminated/ |
| |
| begin |
| o = r.take |
| rescue Ractor::ClosedError |
| 'ok' |
| else |
| "ng: #{o}" |
| end |
| #=> "" (expected "ok") |
| #1246 test_ractor.rb:316: |
| r = Ractor.new do |
| end |
| |
| r.take # closed |
| sleep 0.1 until r.inspect =~ /terminated/ |
| |
| begin |
| r.send(1) |
| rescue Ractor::ClosedError |
| 'ok' |
| else |
| 'ng' |
| end |
| #=> "" (expected "ok") |
| #1247 test_ractor.rb:333: |
| r = Ractor.new { Ractor.receive } |
| r.close_incoming |
| |
| begin |
| r.send(1) |
| rescue Ractor::ClosedError |
| 'ok' |
| else |
| 'ng' |
| end |
| #=> "" (expected "ok") |
| #1248 test_ractor.rb:347: |
| r = Ractor.new do |
| Ractor.yield 1 |
| Ractor.receive |
| end |
| |
| r.close_outgoing |
| begin |
| r.take |
| rescue Ractor::ClosedError |
| 'ok' |
| else |
| 'ng' |
| end |
| #=> "" (expected "ok") |
| #1249 test_ractor.rb:364: |
| Ractor.new{ |
| t = Thread.current |
| begin |
| Thread.new{ t.raise "err" }.join |
| rescue => e |
| e.message |
| end |
| }.take |
| #=> "" (expected "err") |
| #1250 test_ractor.rb:376: |
| Ractor.new{ |
| t = Thread.current |
| Thread.new{ t.kill }.join |
| }.take.inspect #=> nil |
| #=> "" (expected "nil") |
| #1251 test_ractor.rb:384: |
| r = Ractor.new Ractor.current do |main| |
| Ractor.receive |
| main << true |
| Ractor.yield 1 |
| end |
| |
| r.close_outgoing |
| r << true |
| Ractor.receive |
| |
| begin |
| r.take |
| rescue Ractor::ClosedError |
| 'ok' |
| else |
| 'ng' |
| end |
| #=> "" (expected "ok") |
| #1252 test_ractor.rb:405: |
| r = Ractor.new { Ractor.receive } |
| r.close_incoming |
| |
| begin |
| r.send(1) |
| rescue Ractor::ClosedError |
| 'ok' |
| else |
| 'ng' |
| end |
| #=> "" (expected "ok") |
| #1253 test_ractor.rb:419: |
| r = Ractor.new do |
| Ractor.yield 1 |
| 2 |
| end |
| r.close_incoming |
| |
| [r.take, r.take] |
| #=> "" (expected "[1, 2]") |
| #1254 test_ractor.rb:430: |
| r = Ractor.new do |
| Ractor.yield 1 |
| Ractor.receive |
| end |
| |
| sleep 0.01 # wait for Ractor.yield in r |
| r.close_outgoing |
| begin |
| r.take |
| rescue Ractor::ClosedError |
| 'ok' |
| else |
| 'ng' |
| end |
| #=> "" (expected "ok") |
| #1255 test_ractor.rb:448: |
| r = Ractor.new do |
| Ractor.receive |
| end |
| |
| r.close_outgoing |
| begin |
| r.send(1) |
| rescue Ractor::ClosedError |
| 'ng' |
| else |
| 'ok' |
| end |
| #=> "" (expected "ok") |
| #1256 test_ractor.rb:464: |
| Ractor.new{ |
| Ractor.main |
| }.take == Ractor.current |
| #=> "" (expected "true") |
| #1257 test_ractor.rb:471: |
| Ractor.new do |
| close_outgoing |
| end |
| |
| true until Ractor.count == 1 |
| :ok |
| #=> "" (expected "ok") |
| #1258 test_ractor.rb:481: |
| pipe = Ractor.new do |
| loop do |
| Ractor.yield Ractor.receive |
| end |
| end |
| |
| RN = 10 |
| rs = RN.times.map{|i| |
| Ractor.new pipe, i do |pipe, i| |
| msg = pipe.take |
| msg # ping-pong |
| end |
| } |
| RN.times{|i| |
| pipe << i |
| } |
| RN.times.map{ |
| r, n = Ractor.select(*rs) |
| rs.delete r |
| n |
| }.sort |
| #=> "" (expected "[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]") |
| #1259 test_ractor.rb:506: |
| RN = 10 |
| CR = Ractor.current |
| |
| rs = (1..RN).map{ |
| Ractor.new do |
| CR.send 'send' + CR.take #=> 'sendyield' |
| 'take' |
| end |
| } |
| received = [] |
| taken = [] |
| yielded = [] |
| until received.size == RN && taken.size == RN && yielded.size == RN |
| r, v = Ractor.select(CR, *rs, yield_value: 'yield') |
| case r |
| when :receive |
| received << v |
| when :yield |
| yielded << v |
| else |
| taken << v |
| rs.delete r |
| end |
| end |
| r = [received == ['sendyield'] * RN, |
| yielded == [nil] * RN, |
| taken == ['take'] * RN, |
| ] |
| |
| STDERR.puts [received, yielded, taken].inspect |
| r |
| #=> "" (expected "[true, true, true]") |
| #1260 test_ractor.rb:541: |
| pipe = Ractor.new do |
| loop do |
| Ractor.yield Ractor.receive |
| end |
| end |
| |
| RN = 10 |
| RN.times.map{|i| |
| Ractor.new pipe, i do |pipe, i| |
| pipe << i |
| end |
| } |
| RN.times.map{ |
| pipe.take |
| }.sort |
| #=> "" (expected "[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]") |
| #1261 test_ractor.rb:560: |
| r = Ractor.new do |
| raise 'ok' # exception will be transferred receiver |
| end |
| begin |
| r.take |
| rescue Ractor::RemoteError => e |
| [e.cause.class, #=> RuntimeError |
| e.cause.message, #=> 'ok' |
| e.ractor == r] #=> true |
| end |
| #=> "" (expected "[RuntimeError, \"ok\", true]") |
| #1262 test_ractor.rb:574: |
| Ractor.new Ractor.current do |main| |
| q = Thread::Queue.new |
| Thread.new do |
| q << true |
| loop{} |
| ensure |
| main << :ok |
| end |
| |
| Thread.new do |
| q << true |
| while true |
| end |
| ensure |
| main << :ok |
| end |
| |
| Thread.new do |
| q << true |
| sleep 1 |
| ensure |
| main << :ok |
| end |
| |
| # wait for the start of all threads |
| 3.times{q.pop} |
| end |
| |
| 3.times.map{Ractor.receive}.tally |
| #=> "" (expected "{:ok=>3}") |
| #1263 test_ractor.rb:607: |
| obj = 'str'.dup |
| r = Ractor.new obj do |msg| |
| msg.object_id |
| end |
| |
| obj.object_id == r.take |
| #=> "" (expected "false") |
| #1265 test_ractor.rb:631: |
| echo_ractor = Ractor.new do |
| loop do |
| v = Ractor.receive |
| Ractor.yield v |
| end |
| end |
| |
| class C; end |
| module M; end |
| S = Struct.new(:a, :b, :c, :d) |
| |
| shareable_objects = [ |
| true, |
| false, |
| nil, |
| 1, |
| 1.1, # Float |
| 1+2r, # Rational |
| 3+4i, # Complex |
| 2**128, # Bignum |
| :sym, # Symbol |
| 'xyzzy'.to_sym, # dynamic symbol |
| 'frozen'.freeze, # frozen String |
| /regexp/, # regexp literal |
| /reg{true}exp/.freeze, # frozen dregexp |
| [1, 2].freeze, # frozen Array which only refers to shareable |
| {a: 1}.freeze, # frozen Hash which only refers to shareable |
| [{a: 1}.freeze, 'str'.freeze].freeze, # nested frozen container |
| S.new(1, 2).freeze, # frozen Struct |
| S.new(1, 2, 3, 4).freeze, # frozen Struct |
| (1..2), # Range on Struct |
| (1..), # Range on Struct |
| (..1), # Range on Struct |
| C, # class |
| M, # module |
| Ractor.current, # Ractor |
| ] |
| |
| unshareable_objects = [ |
| 'mutable str'.dup, |
| [:array], |
| {hash: true}, |
| S.new(1, 2), |
| S.new(1, 2, 3, 4), |
| S.new("a", 2).freeze, # frozen, but refers to an unshareable object |
| ] |
| |
| results = [] |
| |
| shareable_objects.map{|o| |
| echo_ractor << o |
| o2 = echo_ractor.take |
| results << "#{o} is copied" unless o.object_id == o2.object_id |
| } |
| |
| unshareable_objects.map{|o| |
| echo_ractor << o |
| o2 = echo_ractor.take |
| results << "#{o.inspect} is not copied" if o.object_id == o2.object_id |
| } |
| |
| if results.empty? |
| :ok |
| else |
| results.inspect |
| end |
| #=> "" (expected "ok") |
| #1266 test_ractor.rb:701: |
| class C |
| def initialize freeze |
| @a = 1 |
| @b = :sym |
| @c = 'frozen_str' |
| @c.freeze if freeze |
| @d = true |
| end |
| end |
| |
| def check obj1 |
| obj2 = Ractor.new obj1 do |obj| |
| obj |
| end.take |
| |
| obj1.object_id == obj2.object_id |
| end |
| |
| results = [] |
| results << check(C.new(true)) # false |
| results << check(C.new(true).freeze) # true |
| results << check(C.new(false).freeze) # false |
| #=> "" (expected "[false, true, false]") |
| #1267 test_ractor.rb:728: |
| # move |
| r = Ractor.new do |
| obj = Ractor.receive |
| obj << ' world' |
| end |
| |
| str = 'hello' |
| r.send str, move: true |
| modified = r.take |
| |
| begin |
| str << ' exception' # raise Ractor::MovedError |
| rescue Ractor::MovedError |
| modified #=> 'hello world' |
| else |
| raise 'unreachable' |
| end |
| #=> "" (expected "hello world") |
| #1268 test_ractor.rb:749: |
| r = Ractor.new do |
| ary = Ractor.receive |
| ary << 1 |
| end |
| |
| a1 = [0] |
| r.send a1, move: true |
| a2 = r.take |
| begin |
| a1 << 2 # raise Ractor::MovedError |
| rescue Ractor::MovedError |
| a2.inspect |
| end |
| #=> "" (expected "[0, 1]") |
| #1269 test_ractor.rb:766: |
| r = Ractor.new do |
| Thread.current.report_on_exception = false |
| obj = 'hello' |
| Ractor.yield obj, move: true |
| obj << 'world' |
| end |
| |
| str = r.take |
| begin |
| r.take |
| rescue Ractor::RemoteError |
| str #=> "hello" |
| end |
| #=> "" (expected "hello") |
| #1270 test_ractor.rb:783: |
| R = Ractor.new{} |
| M = Ractor.current |
| r = Ractor.new do |
| s = 'str' |
| selected_r, v = Ractor.select R, yield_value: s, move: true |
| raise if selected_r != R # taken from R |
| M.send s.inspect # s should not be a moved object |
| end |
| |
| Ractor.receive |
| #=> "" (expected "\"str\"") |
| #1271 test_ractor.rb:797: |
| r = Ractor.new do |
| obj = Thread.new{} |
| Ractor.yield obj |
| rescue => e |
| e.message |
| end |
| r.take |
| #=> "" (expected "allocator undefined for Thread") |
| #1272 test_ractor.rb:808: |
| $gv = 1 |
| r = Ractor.new do |
| $gv |
| end |
| |
| begin |
| r.take |
| rescue Ractor::RemoteError => e |
| e.cause.message |
| end |
| #=> "" (expected "can not access global variables $gv from non-main Ractors") |
| #1273 test_ractor.rb:822: |
| r = Ractor.new do |
| $gv = 1 |
| end |
| |
| begin |
| r.take |
| rescue Ractor::RemoteError => e |
| e.cause.message |
| end |
| #=> "" (expected "can not access global variables $gv from non-main Ractors") |
| #1274 test_ractor.rb:835: |
| r = Ractor.new do |
| [$stdin, $stdout, $stderr].map{|io| |
| [io.object_id, io.fileno] |
| } |
| end |
| |
| [$stdin, $stdout, $stderr].zip(r.take){|io, (oid, fno)| |
| raise "should not be different object" if io.object_id == oid |
| raise "fd should be same" unless io.fileno == fno |
| } |
| 'ok' |
| #=> "" (expected "ok") |
| #1275 test_ractor.rb:850: |
| r = Ractor.new do |
| $stdin.itself |
| $stdout.itself |
| $stderr.itself |
| 'ok' |
| end |
| |
| r.take |
| #=> "" (expected "ok") |
| #1276 test_ractor.rb:862: |
| $DEBUG = true |
| $VERBOSE = true |
| |
| def ractor_local_globals |
| /a(b)(c)d/ =~ 'abcd' # for $~ |
| `echo foo` unless /solaris/ =~ RUBY_PLATFORM |
| |
| { |
| # ractor-local (derived from created ractor): debug |
| '$DEBUG' => $DEBUG, |
| '$-d' => $-d, |
| |
| # ractor-local (derived from created ractor): verbose |
| '$VERBOSE' => $VERBOSE, |
| '$-w' => $-w, |
| '$-W' => $-W, |
| '$-v' => $-v, |
| |
| # process-local (readonly): other commandline parameters |
| '$-p' => $-p, |
| '$-l' => $-l, |
| '$-a' => $-a, |
| |
| # process-local (readonly): getpid |
| '$$' => $$, |
| |
| # thread local: process result |
| '$?' => $?, |
| |
| # scope local: match |
| '$~' => $~.inspect, |
| '$&' => $&, |
| '$`' => $`, |
| '$\'' => $', |
| '$+' => $+, |
| '$1' => $1, |
| |
| # scope local: last line |
| '$_' => $_, |
| |
| # scope local: last backtrace |
| '$@' => $@, |
| '$!' => $!, |
| |
| # ractor local: stdin, out, err |
| '$stdin' => $stdin.inspect, |
| '$stdout' => $stdout.inspect, |
| '$stderr' => $stderr.inspect, |
| } |
| end |
| |
| h = Ractor.new do |
| ractor_local_globals |
| end.take |
| ractor_local_globals == h #=> true |
| #=> "" (expected "true") |
| #1277 test_ractor.rb:921: |
| r = Ractor.new do |
| self.object_id |
| end |
| r.take == self.object_id #=> false |
| #=> "" (expected "false") |
| #1278 test_ractor.rb:929: |
| r = Ractor.new do |
| self.object_id |
| end |
| r.object_id == r.take #=> true |
| #=> "" (expected "true") |
| #1280 test_ractor.rb:949: |
| class C |
| @iv = 'str' |
| end |
| |
| r = Ractor.new do |
| class C |
| p @iv |
| end |
| end |
| |
| |
| begin |
| r.take |
| rescue Ractor::RemoteError => e |
| e.cause.message |
| end |
| #=> "" (expected "can not get unshareable values from instance variables of classes/modules from non-main Ractors") |
| #1281 test_ractor.rb:969: |
| shared = Ractor.new{} |
| shared.instance_variable_set(:@iv, 'str') |
| |
| r = Ractor.new shared do |shared| |
| p shared.instance_variable_get(:@iv) |
| end |
| |
| begin |
| r.take |
| rescue Ractor::RemoteError => e |
| e.cause.message |
| end |
| #=> "" (expected "can not access instance variables of shareable objects from non-main Ractors") |
| #1282 test_ractor.rb:985: |
| class Ractor |
| def setup |
| @foo = '' |
| end |
| |
| def foo |
| @foo |
| end |
| end |
| |
| shared = Ractor.new{} |
| shared.setup |
| |
| r = Ractor.new shared do |shared| |
| p shared.foo |
| end |
| |
| begin |
| r.take |
| rescue Ractor::RemoteError => e |
| e.cause.message |
| end |
| #=> "" (expected "can not access instance variables of shareable objects from non-main Ractors") |
| #1283 test_ractor.rb:1011: |
| class Ractor |
| def setup |
| @foo = '' |
| end |
| end |
| |
| shared = Ractor.new{} |
| |
| r = Ractor.new shared do |shared| |
| p shared.setup |
| end |
| |
| begin |
| r.take |
| rescue Ractor::RemoteError => e |
| e.cause.message |
| end |
| #=> "" (expected "can not access instance variables of shareable objects from non-main Ractors") |
| #1284 test_ractor.rb:1032: |
| [Object.new, [], ].map{|obj| |
| obj.instance_variable_set('@a', 1) |
| Ractor.make_shareable obj = obj.freeze |
| |
| Ractor.new obj do |obj| |
| obj.instance_variable_get('@a') |
| end.take.to_s |
| }.join |
| #=> "" (expected "11") |
| #1285 test_ractor.rb:1044: |
| class C |
| @int = 1 |
| @str = '-1000'.dup |
| @fstr = '100'.freeze |
| |
| def self.int = @int |
| def self.str = @str |
| def self.fstr = @fstr |
| end |
| |
| module M |
| @int = 2 |
| @str = '-2000'.dup |
| @fstr = '200'.freeze |
| |
| def self.int = @int |
| def self.str = @str |
| def self.fstr = @fstr |
| end |
| |
| a = Ractor.new{ C.int }.take |
| b = Ractor.new do |
| C.str.to_i |
| rescue Ractor::IsolationError |
| 10 |
| end.take |
| c = Ractor.new do |
| C.fstr.to_i |
| end.take |
| |
| d = Ractor.new{ M.int }.take |
| e = Ractor.new do |
| M.str.to_i |
| rescue Ractor::IsolationError |
| 20 |
| end.take |
| f = Ractor.new do |
| M.fstr.to_i |
| end.take |
| |
| |
| # 1 + 10 + 100 + 2 + 20 + 200 |
| a + b + c + d + e + f |
| #=> "" (expected "333") |
| #1286 test_ractor.rb:1091: |
| class C |
| @@cv = 'str' |
| end |
| |
| r = Ractor.new do |
| class C |
| p @@cv |
| end |
| end |
| |
| begin |
| r.take |
| rescue Ractor::RemoteError => e |
| e.cause.message |
| end |
| #=> "" (expected "can not access class variables from non-main Ractors") |
| #1287 test_ractor.rb:1110: |
| class C |
| @@cv = 'str' |
| def self.cv |
| @@cv |
| end |
| end |
| |
| C.cv # cache |
| |
| r = Ractor.new do |
| C.cv |
| end |
| |
| begin |
| r.take |
| rescue Ractor::RemoteError => e |
| e.cause.message |
| end |
| #=> "" (expected "can not access class variables from non-main Ractors") |
| #1288 test_ractor.rb:1132: |
| class C |
| CONST = 'str' |
| end |
| r = Ractor.new do |
| C::CONST |
| end |
| begin |
| r.take |
| rescue Ractor::RemoteError => e |
| e.cause.message |
| end |
| #=> "" (expected "can not access non-shareable objects in constant C::CONST by non-main Ractor.") |
| #1289 test_ractor.rb:1147: |
| STR = "hello" |
| def str; STR; end |
| s = str() # fill const cache |
| begin |
| Ractor.new{ str() }.take |
| rescue Ractor::RemoteError => e |
| e.cause.message |
| end |
| #=> "" (expected "can not access non-shareable objects in constant Object::STR by non-main Ractor.") |
| #1290 test_ractor.rb:1159: |
| class C |
| end |
| r = Ractor.new do |
| C::CONST = 'str' |
| end |
| begin |
| r.take |
| rescue Ractor::RemoteError => e |
| e.cause.message |
| end |
| #=> "" (expected "can not set constants with non-shareable objects by non-main Ractors") |
| #1291 test_ractor.rb:1173: |
| str = "foo" |
| define_method(:buggy){|i| str << "#{i}"} |
| begin |
| Ractor.new{buggy(10)}.take |
| rescue => e |
| e.cause.message |
| end |
| #=> "" (expected "defined with an un-shareable Proc in a different Ractor") |
| #1292 test_ractor.rb:1184: |
| A = Array.new(1000).freeze # [nil, ...] |
| H = {a: 1, b: 2, c: 3}.freeze |
| |
| Ractor.new{ [A.size, H.size] }.take |
| #=> "" (expected "[1000, 3]") |
| #1293 test_ractor.rb:1192: |
| counts = [] |
| counts << Ractor.count |
| ractors = (1..3).map { Ractor.new { Ractor.receive } } |
| counts << Ractor.count |
| |
| ractors[0].send('End 0').take |
| sleep 0.1 until ractors[0].inspect =~ /terminated/ |
| counts << Ractor.count |
| |
| ractors[1].send('End 1').take |
| sleep 0.1 until ractors[1].inspect =~ /terminated/ |
| counts << Ractor.count |
| |
| ractors[2].send('End 2').take |
| sleep 0.1 until ractors[2].inspect =~ /terminated/ |
| counts << Ractor.count |
| |
| counts.inspect |
| #=> "" (expected "[1, 4, 3, 2, 1]") |
| #1294 test_ractor.rb:1214: |
| Ractor.new{ |
| n = 0 |
| ObjectSpace.each_object{|o| n += 1 unless Ractor.shareable?(o)} |
| n |
| }.take |
| #=> "" (expected "0") |
| #1295 test_ractor.rb:1223: |
| s = 'hello' |
| |
| Ractor.new s.object_id do |id ;s| |
| begin |
| s = ObjectSpace._id2ref(id) |
| rescue => e |
| :ok |
| end |
| end.take |
| #=> "" (expected "ok") |
| #1297 test_ractor.rb:1310: |
| r = Ractor.new{} |
| Ractor.make_shareable(a = [r]) |
| [a.frozen?, a[0].frozen?] == [true, false] |
| #=> "" (expected "true") |
| #1302 test_ractor.rb:1360: |
| class C |
| a = 1 |
| define_method "foo", Ractor.make_shareable(Proc.new{ a }) |
| a = 2 |
| end |
| |
| Ractor.new{ C.new.foo }.take |
| #=> "" (expected "1") |
| #1305 test_ractor.rb:1404: |
| rs = [] |
| TracePoint.new(:line){|tp| rs << tp.lineno if tp.path == __FILE__}.enable do |
| Ractor.new{ # line 4 |
| a = 1 |
| b = 2 |
| }.take |
| c = 3 # line 8 |
| end |
| rs |
| #=> "" (expected "[4, 8]") |
| #1306 test_ractor.rb:1417: |
| Ractor.new([[]].freeze) { |ary| |
| [ary.frozen?, ary.first.frozen? ] |
| }.take |
| #=> "" (expected "[true, false]") |
| #1307 test_ractor.rb:1424: |
| s = String.new.instance_eval { @x = []; freeze} |
| Ractor.new(s) { |s| |
| [s.frozen?, s.instance_variable_get(:@x).frozen?] |
| }.take |
| #=> "" (expected "[true, false]") |
| #1308 test_ractor.rb:1432: |
| a = [] |
| Ractor.new{ |
| trap(:INT){p :ok} |
| }.take |
| a << :ok |
| |
| begin |
| Ractor.new{ |
| s = 'str' |
| trap(:INT){p s} |
| }.take |
| rescue => Ractor::RemoteError |
| a << :ok |
| end |
| #=> "" (expected "[:ok, :ok]") |
| #1309 test_ractor.rb:1450: |
| ans = [] |
| Ractor.current[:key] = 'a' |
| r = Ractor.new{ |
| Ractor.yield self[:key] |
| self[:key] = 'b' |
| self[:key] |
| } |
| ans << r.take |
| ans << r.take |
| ans << Ractor.current[:key] |
| #=> "" (expected "[nil, \"b\", \"a\"]") |
| #1310 test_ractor.rb:1470: |
| N = 100000 |
| 2.times.map{ |
| Ractor.new{ |
| N.times{|i| -(i.to_s)} |
| } |
| }.map{|r| r.take}.join |
| #=> "" (expected "100000100000") |
| #1311 test_ractor.rb:1481: |
| 2.times.map{ |
| Ractor.new do |
| 50000.times do |
| obj = '' |
| obj.instance_variable_set("@a", 1) |
| obj.instance_variable_set("@b", 1) |
| obj.instance_variable_set("@c", 1) |
| obj.instance_variable_defined?("@a") |
| end |
| end |
| }.map{|r| r.take}.join |
| #=> "" (expected "5000050000") |
| #1312 test_ractor.rb:1496: |
| obj = "".freeze # NameError refers the receiver indirectly |
| begin |
| obj.bar |
| rescue => err |
| end |
| begin |
| Ractor.new{} << err |
| rescue TypeError |
| 'ok' |
| end |
| #=> "" (expected "ok") |
| #1313 test_ractor.rb:1509: |
| GC.disable |
| Ractor.new {} |
| raise "not ok" unless GC.disable |
| |
| foo = [] |
| 10.times { foo << 1 } |
| |
| GC.start |
| |
| 'ok' |
| #=> "" (expected "ok") |
| #1314 test_ractor.rb:1523: |
| workers = (0...8).map do |
| Ractor.new do |
| loop do |
| 10_000.times.map { Object.new } |
| Ractor.yield Time.now |
| end |
| end |
| end |
| |
| 1_000.times { idle_worker, tmp_reporter = Ractor.select(*workers) } |
| "ok" |
| #=> "" (expected "ok") |
| #1319 test_ractor.rb:1574: |
| module M |
| def foo |
| @foo |
| end |
| end |
| |
| class A |
| include M |
| |
| def initialize |
| 100.times { |i| instance_variable_set(:"@var_#{i}", "bad: #{i}") } |
| @foo = 2 |
| end |
| end |
| |
| class B |
| include M |
| |
| def initialize |
| @foo = 1 |
| end |
| end |
| |
| Ractor.new do |
| b = B.new |
| 100_000.times do |
| raise unless b.foo == 1 |
| end |
| end |
| |
| a = A.new |
| 100_000.times do |
| raise unless a.foo == 2 |
| end |
| |
| "ok" |
| #=> "" (expected "ok") |
| #1320 test_ractor.rb:1614: |
| class C1; def self.foo = 1; end |
| class C2; def self.foo = 2; end |
| class C3; def self.foo = 3; end |
| class C4; def self.foo = 5; end |
| class C5; def self.foo = 7; end |
| class C6; def self.foo = 11; end |
| class C7; def self.foo = 13; end |
| class C8; def self.foo = 17; end |
| |
| LN = 10_000 |
| RN = 10 |
| CS = [C1, C2, C3, C4, C5, C6, C7, C8] |
| rs = RN.times.map{|i| |
| Ractor.new(CS.shuffle){|cs| |
| LN.times.sum{ |
| cs.inject(1){|r, c| r * c.foo} # c.foo invalidates method cache entry |
| } |
| } |
| } |
| |
| n = CS.inject(1){|r, c| r * c.foo} * LN |
| rs.map{|r| r.take} == Array.new(RN){n} |
| #=> "" (expected "true") |
| #1323 test_ractor.rb:1655: |
| s = Ractor::Selector.new |
| s.add Ractor.new{} |
| s.empty? |
| #=> "" (expected "false") |
| #1324 test_ractor.rb:1662: |
| s = Ractor::Selector.new |
| s.add Ractor.new{10} |
| s.add Ractor.new{20} |
| s.clear |
| s.empty? |
| #=> "" (expected "true") |
| #1325 test_ractor.rb:1671: |
| s = Ractor::Selector.new |
| s.add Ractor.new{10} |
| s.add Ractor.new{20} |
| r, v = s.wait |
| vs = [] |
| vs << v |
| r, v = s.wait |
| vs << v |
| [*vs.sort, s.empty?] |
| #=> "" (expected "[10, 20, true]") |
| #1326 test_ractor.rb:1684: |
| RN = 30 |
| rs = RN.times.map{ |
| Ractor.new{ :v } |
| } |
| s = Ractor::Selector.new(*rs) |
| |
| results = [] |
| until s.empty? |
| results << s.wait |
| |
| # Note that s.wait can raise an exception because other Ractors/Threads |
| # can take from the same ractors in the waiting set. |
| # In this case there is no other takers so `s.wait` doesn't raise an error. |
| end |
| |
| results.size |
| #=> "" (expected "30") |
| #1327 test_ractor.rb:1705: |
| RN = 100 |
| s = Ractor::Selector.new |
| rs = RN.times.map{ |
| Ractor.new{ |
| Ractor.main << Ractor.new{ Ractor.yield :v3; :v4 } |
| Ractor.main << Ractor.new{ Ractor.yield :v5; :v6 } |
| Ractor.yield :v1 |
| :v2 |
| } |
| } |
| |
| rs.each{|r| s.add(r)} |
| h = {v1: 0, v2: 0, v3: 0, v4: 0, v5: 0, v6: 0} |
| |
| loop do |
| case s.wait receive: true |
| in :receive, r |
| s.add r |
| in r, v |
| h[v] += 1 |
| break if h.all?{|k, v| v == RN} |
| end |
| end |
| |
| h.sum{|k, v| v} |
| #=> "" (expected "600") |
| #1328 test_ractor.rb:1734: |
| RN = 30 |
| rs = RN.times.map{ |
| Ractor.new{ :v } |
| } |
| s = Ractor::Selector.new(*rs) |
| :ok |
| #=> "" (expected "ok") |
| #1850 test_yjit_rust_port.rb:349: |
| Ractor.new{}.class |
| #=> "" (expected "Ractor") |
| #1853 test_yjit_rust_port.rb:382: |
| # ping-pong with arg |
| r = Ractor.new 'ok' do |msg| |
| msg |
| end |
| r.take |
| #=> "" (expected "ok") |
| #1852 test_yjit_rust_port.rb:372: |
| # join |
| r = Ractor.new do |
| 'ok' |
| end |
| r.take |
| #=> "" (expected "ok") |
| #1855 test_yjit_rust_port.rb:401: |
| r = Ractor.new do |
| msg = Ractor.receive |
| end |
| r.send 'ok' |
| r.take |
| #=> "" (expected "ok") |
| #1854 test_yjit_rust_port.rb:391: |
| # ping-pong with two args |
| r = Ractor.new 'ping', 'pong' do |msg, msg2| |
| [msg, msg2] |
| end |
| 'ok' if r.take == ['ping', 'pong'] |
| #=> "" (expected "ok") |
| #1698 test_yjit.rb:2645: |
| def traced_method |
| itself |
| end |
| |
| tracing_ractor = Ractor.new do |
| # 1: start tracing |
| events = [] |
| tp = TracePoint.new(:c_call) { events << _1.method_id } |
| tp.enable |
| Ractor.yield(nil) |
| |
| # 3: run compiled method on tracing ractor |
| Ractor.yield(nil) |
| traced_method |
| |
| events |
| ensure |
| tp&.disable |
| end |
| |
| tracing_ractor.take |
| |
| # 2: compile on non tracing ractor |
| traced_method |
| |
| tracing_ractor.take |
| tracing_ractor.take |
| #=> "" (expected "[:itself]") |
| #1699 test_yjit.rb:2676: |
| def compiled(arg) |
| if arg |
| arg + 1 |
| else |
| itself |
| itself |
| end |
| end |
| |
| ractor = Ractor.new do |
| compiled(false) |
| Ractor.yield(nil) |
| compiled(41) |
| end |
| |
| tp = TracePoint.new(:line) { itself } |
| ractor.take |
| tp.enable |
| |
| ractor.take |
| #=> "" (expected "42") |
| #1704 test_yjit.rb:2756: |
| class A |
| def self.foo |
| _foo = 1 |
| _bar = 2 |
| begin |
| @bar = _foo + _bar |
| rescue Ractor::IsolationError |
| 42 |
| end |
| end |
| end |
| |
| A.foo |
| A.foo |
| |
| Ractor.new { A.foo }.take |
| #=> "" (expected "42") |
| #1750 test_yjit.rb:3424: |
| r = Ractor.new Ractor.current do |main| |
| main << 1 |
| main << 2 |
| main << 3 |
| main << 4 |
| main << 5 |
| main << 6 |
| main << 7 |
| main << 8 |
| main << 9 |
| main << 10 |
| end |
| |
| a = [] |
| a << Ractor.receive_if{|msg| msg == 10} |
| a << Ractor.receive_if{|msg| msg == 9} |
| a << Ractor.receive_if{|msg| msg == 8} |
| a << Ractor.receive_if{|msg| msg == 7} |
| a << Ractor.receive_if{|msg| msg == 6} |
| a << Ractor.receive_if{|msg| msg == 5} |
| a << Ractor.receive_if{|msg| msg == 4} |
| a << Ractor.receive_if{|msg| msg == 3} |
| a << Ractor.receive_if{|msg| msg == 2} |
| a << Ractor.receive_if{|msg| msg == 1} |
| |
| a.length |
| #=> "" (expected "10") |
| FAIL 95/0 tests failed |
| make: *** [uncommon.mk:877: yes-btest] Error 1 |
| "make yes-test-basic TESTS='-j3'" exit with 0. |
| "make yes-test-all TESTOPTS='--stderr-on-failure' TESTS='-j3'" exit with 512. |
| 1) Failure: |
| TestDigestRactor::TestSHA256Ractor#test_s_hexdigest [/home/opc/ruby/src/master/test/digest/test_ractor.rb:17]: |
| pid 2433881 exit 1 |
| | <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| | from -:6:in `block in <main>' |
| | from -:5:in `each' |
| | from -:5:in `map' |
| | from -:5:in `<main>' |
| . |
| 1. [1/2] Assertion for "stdout" |
| | <["true", "true"]> expected but was |
| | <[]>. |
| 2. [2/2] Assertion for "stderr" |
| | <[]> expected but was |
| | <["<internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError)", |
| | "\tfrom -:6:in `block in <main>'", |
| | "\tfrom -:5:in `each'", |
| | "\tfrom -:5:in `map'", |
| | "\tfrom -:5:in `<main>'"]>. |
| 2) Failure: |
| TestDigestRactor::TestSHA384Ractor#test_s_hexdigest [/home/opc/ruby/src/master/test/digest/test_ractor.rb:17]: |
| pid 2433885 exit 1 |
| | <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| | from -:6:in `block in <main>' |
| | from -:5:in `each' |
| | from -:5:in `map' |
| | from -:5:in `<main>' |
| . |
| 1. [1/2] Assertion for "stdout" |
| | <["true", "true"]> expected but was |
| | <[]>. |
| 2. [2/2] Assertion for "stderr" |
| | <[]> expected but was |
| | <["<internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError)", |
| | "\tfrom -:6:in `block in <main>'", |
| | "\tfrom -:5:in `each'", |
| | "\tfrom -:5:in `map'", |
| | "\tfrom -:5:in `<main>'"]>. |
| 3) Failure: |
| TestDigestRactor::TestSHA512Ractor#test_s_hexdigest [/home/opc/ruby/src/master/test/digest/test_ractor.rb:17]: |
| pid 2433889 exit 1 |
| | <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| | from -:6:in `block in <main>' |
| | from -:5:in `each' |
| | from -:5:in `map' |
| | from -:5:in `<main>' |
| . |
| 1. [1/2] Assertion for "stdout" |
| | <["true", "true"]> expected but was |
| | <[]>. |
| 2. [2/2] Assertion for "stderr" |
| | <[]> expected but was |
| | <["<internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError)", |
| | "\tfrom -:6:in `block in <main>'", |
| | "\tfrom -:5:in `each'", |
| | "\tfrom -:5:in `map'", |
| | "\tfrom -:5:in `<main>'"]>. |
| 4) Failure: |
| TestDigestRactor::TestRMD160Ractor#test_s_hexdigest [/home/opc/ruby/src/master/test/digest/test_ractor.rb:17]: |
| pid 2433893 exit 1 |
| | <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| | from -:6:in `block in <main>' |
| | from -:5:in `each' |
| | from -:5:in `map' |
| | from -:5:in `<main>' |
| . |
| 1. [1/2] Assertion for "stdout" |
| | <["true", "true"]> expected but was |
| | <[]>. |
| 2. [2/2] Assertion for "stderr" |
| | <[]> expected but was |
| | <["<internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError)", |
| | "\tfrom -:6:in `block in <main>'", |
| | "\tfrom -:5:in `each'", |
| | "\tfrom -:5:in `map'", |
| | "\tfrom -:5:in `<main>'"]>. |
| 5) Failure: |
| TestDigestRactor::TestSHA1Ractor#test_s_hexdigest [/home/opc/ruby/src/master/test/digest/test_ractor.rb:17]: |
| pid 2433877 exit 1 |
| | <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| | from -:6:in `block in <main>' |
| | from -:5:in `each' |
| | from -:5:in `map' |
| | from -:5:in `<main>' |
| . |
| 1. [1/2] Assertion for "stdout" |
| | <["true", "true"]> expected but was |
| | <[]>. |
| 2. [2/2] Assertion for "stderr" |
| | <[]> expected but was |
| | <["<internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError)", |
| | "\tfrom -:6:in `block in <main>'", |
| | "\tfrom -:5:in `each'", |
| | "\tfrom -:5:in `map'", |
| | "\tfrom -:5:in `<main>'"]>. |
| 6) Failure: |
| TestDigestRactor::TestMD5Ractor#test_s_hexdigest [/home/opc/ruby/src/master/test/digest/test_ractor.rb:17]: |
| pid 2433873 exit 1 |
| | <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| | from -:6:in `block in <main>' |
| | from -:5:in `each' |
| | from -:5:in `map' |
| | from -:5:in `<main>' |
| . |
| 1. [1/2] Assertion for "stdout" |
| | <["true", "true"]> expected but was |
| | <[]>. |
| 2. [2/2] Assertion for "stderr" |
| | <[]> expected but was |
| | <["<internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError)", |
| | "\tfrom -:6:in `block in <main>'", |
| | "\tfrom -:5:in `each'", |
| | "\tfrom -:5:in `map'", |
| | "\tfrom -:5:in `<main>'"]>. |
| 7) Failure: |
| TestStringScannerRactor#test_ractor [/home/opc/ruby/src/master/test/strscan/test_ractor.rb:10]: |
| pid 2433912 exit 1 |
| | <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| | from -:3:in `<main>' |
| . |
| 1. [1/2] Assertion for "stdout" |
| | <["stra", " ", "strb", " ", "strc"]> expected but was |
| | <[]>. |
| 2. [2/2] Assertion for "stderr" |
| | <[]> expected but was |
| | <["<internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError)", |
| | "\tfrom -:3:in `<main>'"]>. |
| 8) Failure: |
| TestStringIOInRactor#test_ractor [/home/opc/ruby/src/master/test/stringio/test_ractor.rb:10]: |
| pid 2433559 exit 1 |
| | <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| | from -:3:in `<main>' |
| . |
| 1. [1/2] Assertion for "stdout" |
| | <["true"]> expected but was |
| | <[]>. |
| 2. [2/2] Assertion for "stderr" |
| | <[]> expected but was |
| | <["<internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError)", |
| | "\tfrom -:3:in `<main>'"]>. |
| 9) Failure: |
| TestIOWaitInRactor#test_ractor [/home/opc/ruby/src/master/test/io/wait/test_ractor.rb:9]: |
| pid 2433555 exit 1 |
| | <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| | from -:2:in `<main>' |
| . |
| 1. [1/2] Assertion for "stdout" |
| | <["true"]> expected but was |
| | <[]>. |
| 2. [2/2] Assertion for "stderr" |
| | <[]> expected but was |
| | <["<internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError)", |
| | "\tfrom -:2:in `<main>'"]>. |
| 10) Failure: |
| TestMemoryView#test_ractor [/home/opc/ruby/src/master/test/ruby/test_memory_view.rb:325]: |
| pid 2433457 exit 1 |
| | <internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError) |
| | from -:4:in `<main>' |
| . |
| 1. [1/2] Assertion for "stdout" |
| | <["[5, 6]", "[-7, -8]"]> expected but was |
| | <[]>. |
| 2. [2/2] Assertion for "stderr" |
| | <[]> expected but was |
| | <["<internal:ractor>:282:in `new': can't create Thread: Invalid argument (ThreadError)", |
| | "\tfrom -:4:in `<main>'"]>. |
| 11) Error: |
| TestEnv#test_ivar_in_env_should_not_be_access_from_non_main_ractors: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 12) Error: |
| TestEnv#test_each_key_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 13) Error: |
| TestEnv#test_reject_bang_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 14) Error: |
| TestEnv#test_select_bang_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 15) Error: |
| TestEnv#test_values_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 16) Error: |
| TestEnv#test_each_value_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 17) Error: |
| TestEnv#test_rehash_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 18) Error: |
| TestEnv#test_to_h_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 19) Error: |
| TestEnv#test_shift_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 20) Error: |
| TestEnv#test_dup_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 21) Error: |
| TestEnv#test_slice_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 22) Error: |
| TestEnv#test_clear_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 23) Error: |
| TestEnv#test_shared_substring_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 24) Error: |
| TestEnv#test_getenv_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 25) Error: |
| TestEnv#test_frozen_env_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 26) Error: |
| TestEnv#test_key_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 27) Error: |
| TestEnv#test_filter_bang_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 28) Error: |
| TestISeq#test_mandatory_only_redef: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| /home/opc/ruby/src/master/test/ruby/test_iseq.rb:749:in `<main>' |
| /home/opc/ruby/src/master/test/ruby/test_iseq.rb:748:in `test_mandatory_only_redef' |
| 29) Error: |
| TestEtc#test_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 30) Error: |
| TC_OpenStruct#test_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 31) Error: |
| TC_OpenStruct#test_access_methods_from_different_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 32) Error: |
| TestBigDecimalRactor#test_ractor_shareable: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| /home/opc/ruby/src/master/test/bigdecimal/test_ractor.rb:17:in `<main>' |
| /home/opc/ruby/src/master/test/bigdecimal/test_ractor.rb:13:in `test_ractor_shareable' |
| 33) Error: |
| TestPathnameRactor#test_ractor_shareable: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| /home/opc/ruby/src/master/test/pathname/test_ractor.rb:15:in `<main>' |
| /home/opc/ruby/src/master/test/pathname/test_ractor.rb:11:in `test_ractor_shareable' |
| 34) Error: |
| TestTmpdir#test_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 35) Error: |
| TestTimeExtension#test_rfc2822_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 36) Error: |
| JSONInRactorTest#test_generate: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| /home/opc/ruby/src/master/test/json/ractor_test.rb:12:in `<main>' |
| /home/opc/ruby/src/master/test/json/ractor_test.rb:8:in `test_generate' |
| 37) Error: |
| TestPsychRactor#test_not_shareable: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 38) Error: |
| TestPsychRactor#test_ractor_round_trip: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 39) Error: |
| TestPsychRactor#test_ractor_config: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 40) Error: |
| TestPsychRactor#test_ractor_constants: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 41) Error: |
| TestObjSpaceRactor#test_tracing_does_not_crash: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 42) Error: |
| TestEnv#test_keep_if_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 43) Error: |
| TestEnv#test_replace_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 44) Error: |
| TestEnv#test_reject_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 45) Error: |
| TestEnv#test_invert_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 46) Error: |
| TestEnv#test_rassoc_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 47) Error: |
| TestEnv#test_fetch_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 48) Error: |
| TestEnv#test_aset_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 49) Error: |
| TestEnv#test_to_a_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 50) Error: |
| TestEnv#test_filter_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 51) Error: |
| TestEnv#test_to_s_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 52) Error: |
| RactorCompatibilityTest#test_class_name_suggestion_works_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 53) Error: |
| RactorCompatibilityTest#test_can_raise_other_name_error_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 54) Error: |
| RactorCompatibilityTest#test_variable_name_suggestion_works_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 55) Error: |
| RactorCompatibilityTest#test_method_name_suggestion_works_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 56) Error: |
| RactorCompatibilityTest#test_pattern_key_name_suggestion_works_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 57) Error: |
| RactorCompatibilityTest#test_key_name_suggestion_works_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 58) Error: |
| TestDateParseRactor#test_date_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 59) Error: |
| URI::TestCommon#test_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 60) Error: |
| TestFiberCurrentRactor#test_ractor_shareable: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| /home/opc/ruby/src/master/test/fiber/test_ractor.rb:15:in `<main>' |
| /home/opc/ruby/src/master/test/fiber/test_ractor.rb:11:in `test_ractor_shareable' |
| 61) Error: |
| TestEnv#test_inspect_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 62) Error: |
| TestEnv#test_assoc_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 63) Error: |
| TestEnv#test_keys_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 64) Error: |
| TestEnv#test_huge_value_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 65) Error: |
| TestEnv#test_each_pair_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 66) Error: |
| TestEnv#test_update_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 67) Error: |
| TestEnv#test_select_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 68) Error: |
| TestEnv#test_values_at_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 69) Error: |
| TestEnv#test_frozen_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 70) Error: |
| TestEnv#test_size_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 71) Error: |
| TestEnv#test_bracket_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 72) Error: |
| TestEnv#test_empty_p_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 73) Error: |
| TestEnv#test_has_key_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 74) Error: |
| TestEnv#test_has_value2_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 75) Error: |
| TestEnv#test_to_hash_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 76) Error: |
| TestEnv#test_delete_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 77) Error: |
| TestEnv#test_except_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 78) Error: |
| TestEnv#test_delete_if_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| 79) Error: |
| TestEnv#test_has_value_in_ractor: |
| ThreadError: can't create Thread: Invalid argument |
| <internal:ractor>:282:in `new' |
| make: *** [uncommon.mk:939: yes-test-all] Error 79 |
| "make yes-test-rubyspec MSPECOPT='--error-output stderr --debug' TESTS='-j3'" exit with 0. |