[ruby-core:122652] [Ruby Bug#18940] Ruby Ractor fails with IOError when handling higher concurrency
From:
"jhawthorn (John Hawthorn) via ruby-core" <ruby-core@...>
Date:
2025-07-04 21:16:18 UTC
List:
ruby-core #122652
SXNzdWUgIzE4OTQwIGhhcyBiZWVuIHVwZGF0ZWQgYnkgamhhd3Rob3JuIChKb2huIEhhd3Rob3Ju KS4NCg0KU3RhdHVzIGNoYW5nZWQgZnJvbSBBc3NpZ25lZCB0byBDbG9zZWQNCg0KVGhpcyBkb2Vz bid0IHJlcHJvZHVjZSBvbiBteSBtYWNoaW5lIG9uIDMuNWRldiwgYW5kIHRoZXJlIGhhdmUgYmVl biBhIG51bWJlciBvZiBpbXByb3ZlbWVudHMgdG8gUmFjdG9ycyBsaWtlbHkgdG8gaGF2ZSBzb2x2 ZWQgdGhpcy4gUGxlYXNlIHJlb3BlbiBpZiB0aGF0J3Mgbm90IHRoZSBjYXNlIDopDQoNCi0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCkJ1ZyAjMTg5NDA6IFJ1YnkgUmFj dG9yIGZhaWxzIHdpdGggSU9FcnJvciB3aGVuIGhhbmRsaW5nIGhpZ2hlciBjb25jdXJyZW5jeQ0K aHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzE4OTQwI2NoYW5nZS0xMTM5MzINCg0K KiBBdXRob3I6IGJyb2RvY2sgKEdhYnJpZWwgTWF6ZXR0bykNCiogU3RhdHVzOiBDbG9zZWQNCiog QXNzaWduZWU6IHJhY3Rvcg0KKiBydWJ5IC12OiBydWJ5IDMuMi4wZGV2ICgyMDIyLTA3LTI2VDE2 OjQwOjAzWiBtYXN0ZXIgM2IxZWQwM2Q4YykgW2FybTY0LWRhcndpbjIxXQ0KKiBCYWNrcG9ydDog Mi43OiBVTktOT1dOLCAzLjA6IFVOS05PV04sIDMuMTogVU5LTk9XTg0KLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KUmVwcm9kdWN0aW9uIHNlcnZlcjoNCg0KYGBgDQpy ZXF1aXJlICdzb2NrZXQnDQoNCiMgU2V0IGJhc2VkIG9uIENQVSBjb3VudA0KQ09OQ1VSUkVOQ1kg PSA4DQoNCnNlcnZlciA9IFRDUFNlcnZlci5uZXcoODA4MCkNCndvcmtlcnMgPSBDT05DVVJSRU5D WS50aW1lcy5tYXAgZG8NCiAgUmFjdG9yLm5ldyBkbw0KICAgIGxvb3AgZG8NCiAgICAgICMgcmVj ZWl2ZSBUQ1BTb2NrZXQNCiAgICAgIHNlc3Npb24gPSBSYWN0b3IucmVjdg0KDQogICAgICByZXF1 ZXN0ID0gc2Vzc2lvbi5nZXRzDQogICAgICBwdXRzIHJlcXVlc3QNCg0KICAgICAgc2Vzc2lvbi5w cmludCAiSFRUUC8xLjEgMjAwXHJcbiINCiAgICAgIHNlc3Npb24ucHJpbnQgIkNvbnRlbnQtVHlw ZTogdGV4dC9odG1sXHJcbiINCiAgICAgIHNlc3Npb24ucHJpbnQgIlxyXG4iDQogICAgICBzZXNz aW9uLnByaW50ICJIZWxsbyB3b3JsZCEgQ3VycmVudCB0aW1lIGlzICN7VGltZS5ub3d9Ig0KICAg ICAgc2Vzc2lvbi5jbG9zZQ0KICAgIGVuZA0KICBlbmQNCmVuZA0KDQpsb29wIGRvDQogIGNvbm4s IF8gPSBzZXJ2ZXIuYWNjZXB0DQoNCiAgIyBwYXNzIFRDUFNvY2tldCB0byBvbmUgb2YgdGhlIHdv cmtlcnMNCiAgd29ya2Vycy5zYW1wbGUuc2VuZChjb25uLCBtb3ZlOiB0cnVlKQ0KZW5kDQpgYGAN Cg0KcnVuIGFwYWNoZSBiZW5jaG1hcmsgYWdhaW5zdCBjb2RlIGFib3ZlOg0KDQpgYGANCmFiIC1u IDIwMDAwIC1jIDIwIGh0dHA6Ly9sb2NhbGhvc3Q6ODA4MC8NCmBgYA0KDQpvciBydW4gdXNpbmcg aGV5IChodHRwczovL2dpdGh1Yi5jb20vcmFreWxsL2hleSk6DQoNCmBgYA0KaGV5IC1uIDIwMDAw IC1jIDIwIGh0dHA6Ly9sb2NhbGhvc3Q6ODA4MC8NCmBgYA0KDQp5b3Ugc2hvdWxkIHNlZSBzb21l dGhpbmcgbGlrZSB0aGlzIG9uIHRoZSBiZW5jaG1hcmsgdG9vbCBzaWRlOg0KDQpgYGANClN1bW1h cnk6DQogIFRvdGFsOgkzMi45NTM4IHNlY3MNCiAgU2xvd2VzdDoJMi42MzE3IHNlY3MNCiAgRmFz dGVzdDoJMC4wMDAyIHNlY3MNCiAgQXZlcmFnZToJMC4wMzMxIHNlY3MNCiAgUmVxdWVzdHMvc2Vj Ogk2MDYuOTA5OA0KDQoNClJlc3BvbnNlIHRpbWUgaGlzdG9ncmFtOg0KICAwLjAwMCBbMV0JfA0K ICAwLjI2MyBbMTY5NjhdCXzilqDilqDilqDilqDilqDilqDilqDilqDilqDilqDilqDilqDilqDi lqDilqDilqDilqDilqDilqDilqDilqDilqDilqDilqDilqDilqDilqDilqDilqDilqDilqDilqDi lqDilqDilqDilqDilqDilqDilqDilqANCiAgMC41MjcgWzE3NDBdCXzilqDilqDilqDilqANCiAg MC43OTAgWzBdCXwNCiAgMS4wNTMgWzBdCXwNCiAgMS4zMTYgWzBdCXwNCiAgMS41NzkgWzBdCXwN CiAgMS44NDIgWzBdCXwNCiAgMi4xMDUgWzIwXQl8DQogIDIuMzY5IFswXQl8DQogIDIuNjMyIFs2 XQl8DQoNCg0KTGF0ZW5jeSBkaXN0cmlidXRpb246DQogIDEwJSBpbiAwLjAwMDggc2Vjcw0KICAy NSUgaW4gMC4wMDEwIHNlY3MNCiAgNTAlIGluIDAuMDAxMiBzZWNzDQogIDc1JSBpbiAwLjAwMTYg c2Vjcw0KICA5MCUgaW4gMC4wMDc1IHNlY3MNCiAgOTUlIGluIDAuMzEwMSBzZWNzDQogIDk5JSBp biAwLjMxNzUgc2Vjcw0KDQpEZXRhaWxzIChhdmVyYWdlLCBmYXN0ZXN0LCBzbG93ZXN0KToNCiAg RE5TK2RpYWx1cDoJMC4wMzIyIHNlY3MsIDAuMDAwMiBzZWNzLCAyLjYzMTcgc2Vjcw0KICBETlMt bG9va3VwOgkwLjAwMDYgc2VjcywgMC4wMDAwIHNlY3MsIDAuMDEyNyBzZWNzDQogIHJlcSB3cml0 ZToJMC4wMDAxIHNlY3MsIDAuMDAwMCBzZWNzLCAwLjAwOTUgc2Vjcw0KICByZXNwIHdhaXQ6CTAu MDAwNyBzZWNzLCAwLjAwMDAgc2VjcywgMC4wMTQwIHNlY3MNCiAgcmVzcCByZWFkOgkwLjAwMDEg c2VjcywgMC4wMDAwIHNlY3MsIDAuMDA4OCBzZWNzDQoNClN0YXR1cyBjb2RlIGRpc3RyaWJ1dGlv bjoNCiAgWzIwMF0JMTg3MzUgcmVzcG9uc2VzDQoNCkVycm9yIGRpc3RyaWJ1dGlvbjoNCiAgWzEy MzFdCUdldCAiaHR0cDovL2xvY2FsaG9zdDo4MDgwLyI6IGRpYWwgdGNwIFs6OjFdOjgwODA6IGNv bm5lY3Q6IGNvbm5lY3Rpb24gcmVmdXNlZA0KICBbMTZdCUdldCAiaHR0cDovL2xvY2FsaG9zdDo4 MDgwLyI6IGRpYWwgdGNwIFs6OjFdOjgwODA6IGNvbm5lY3Q6IGNvbm5lY3Rpb24gcmVzZXQgYnkg cGVlcg0KICBbMV0JR2V0ICJodHRwOi8vbG9jYWxob3N0OjgwODAvIjogbmV0L2h0dHA6IEhUVFAv MS54IHRyYW5zcG9ydCBjb25uZWN0aW9uIGJyb2tlbjogdW5leHBlY3RlZCBFT0YNCiAgWzFdCUdl dCAiaHR0cDovL2xvY2FsaG9zdDo4MDgwLyI6IHJlYWQgdGNwIDEyNy4wLjAuMTo1NzA3OC0+MTI3 LjAuMC4xOjgwODA6IHJlYWQ6IGNvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcg0KICBbMV0JR2V0ICJo dHRwOi8vbG9jYWxob3N0OjgwODAvIjogcmVhZCB0Y3AgWzo6MV06NTcwNTQtPls6OjFdOjgwODA6 IHJlYWQ6IGNvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcg0KICBbMV0JR2V0ICJodHRwOi8vbG9jYWxo b3N0OjgwODAvIjogcmVhZCB0Y3AgWzo6MV06NTcwNTgtPls6OjFdOjgwODA6IHJlYWQ6IGNvbm5l Y3Rpb24gcmVzZXQgYnkgcGVlcg0KICBbMV0JR2V0ICJodHRwOi8vbG9jYWxob3N0OjgwODAvIjog cmVhZCB0Y3AgWzo6MV06NTcwNTktPls6OjFdOjgwODA6IHJlYWQ6IGNvbm5lY3Rpb24gcmVzZXQg YnkgcGVlcg0KICBbMV0JR2V0ICJodHRwOi8vbG9jYWxob3N0OjgwODAvIjogcmVhZCB0Y3AgWzo6 MV06NTcwNjItPls6OjFdOjgwODA6IHJlYWQ6IGNvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcg0KICBb MV0JR2V0ICJodHRwOi8vbG9jYWxob3N0OjgwODAvIjogcmVhZCB0Y3AgWzo6MV06NTcwNjctPls6 OjFdOjgwODA6IHJlYWQ6IGNvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcg0KICBbMV0JR2V0ICJodHRw Oi8vbG9jYWxob3N0OjgwODAvIjogcmVhZCB0Y3AgWzo6MV06NTcwNjgtPls6OjFdOjgwODA6IHJl YWQ6IGNvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcg0KICBbMV0JR2V0ICJodHRwOi8vbG9jYWxob3N0 OjgwODAvIjogcmVhZCB0Y3AgWzo6MV06NTcwNjktPls6OjFdOjgwODA6IHJlYWQ6IGNvbm5lY3Rp b24gcmVzZXQgYnkgcGVlcg0KICBbMV0JR2V0ICJodHRwOi8vbG9jYWxob3N0OjgwODAvIjogcmVh ZCB0Y3AgWzo6MV06NTcwNzAtPls6OjFdOjgwODA6IHJlYWQ6IGNvbm5lY3Rpb24gcmVzZXQgYnkg cGVlcg0KICBbMV0JR2V0ICJodHRwOi8vbG9jYWxob3N0OjgwODAvIjogcmVhZCB0Y3AgWzo6MV06 NTcwNzEtPls6OjFdOjgwODA6IHJlYWQ6IGNvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcg0KICBbMV0J R2V0ICJodHRwOi8vbG9jYWxob3N0OjgwODAvIjogcmVhZCB0Y3AgWzo6MV06NTcwNzItPls6OjFd OjgwODA6IHJlYWQ6IGNvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcg0KICBbMV0JR2V0ICJodHRwOi8v bG9jYWxob3N0OjgwODAvIjogcmVhZCB0Y3AgWzo6MV06NTcwNzUtPls6OjFdOjgwODA6IHJlYWQ6 IGNvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcg0KICBbMV0JR2V0ICJodHRwOi8vbG9jYWxob3N0Ojgw ODAvIjogcmVhZCB0Y3AgWzo6MV06NTcwNzYtPls6OjFdOjgwODA6IHJlYWQ6IGNvbm5lY3Rpb24g cmVzZXQgYnkgcGVlcg0KICBbMV0JR2V0ICJodHRwOi8vbG9jYWxob3N0OjgwODAvIjogcmVhZCB0 Y3AgWzo6MV06NTcwODctPls6OjFdOjgwODA6IHJlYWQ6IGNvbm5lY3Rpb24gcmVzZXQgYnkgcGVl cg0KICBbMV0JR2V0ICJodHRwOi8vbG9jYWxob3N0OjgwODAvIjogcmVhZCB0Y3AgWzo6MV06NTcw ODgtPls6OjFdOjgwODA6IHJlYWQ6IGNvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcg0KICBbMV0JR2V0 ICJodHRwOi8vbG9jYWxob3N0OjgwODAvIjogcmVhZCB0Y3AgWzo6MV06NTcwODktPls6OjFdOjgw ODA6IHJlYWQ6IGNvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcg0KICBbMV0JR2V0ICJodHRwOi8vbG9j YWxob3N0OjgwODAvIjogcmVhZCB0Y3AgWzo6MV06NTcwOTAtPls6OjFdOjgwODA6IHJlYWQ6IGNv bm5lY3Rpb24gcmVzZXQgYnkgcGVlcg0KYGBgDQoNCmFuZCB0aGlzIG9uIHRoZSBydWJ5IHByb2Nl c3M6DQoNCmBgYA0KLi4uDQoNCkdFVCAvIEhUVFAvMS4xDQpHRVQgLyBIVFRQLzEuMQ0KIzxUaHJl YWQ6MHgwMDAwMDAwMTAwZmJmNmU4IHJ1bj4gdGVybWluYXRlZCB3aXRoIGV4Y2VwdGlvbiAocmVw b3J0X29uX2V4Y2VwdGlvbiBpcyB0cnVlKToNCnJhY3Rvci5yYjoyMTppbiBgd3JpdGUnOiBHRVQg LyBIVFRQLzEuMQ0KdW5pbml0aWFsaXplZCBzdHJlYW0gKElPRXJyb3IpDQoJZnJvbSByYWN0b3Iu cmI6MjE6aW4gYHByaW50Jw0KCWZyb20gcmFjdG9yLnJiOjIxOmluIGBibG9jayAoMyBsZXZlbHMp IGluIDxtYWluPicNCglmcm9tIHJhY3Rvci5yYjoxMTppbiBgbG9vcCcNCglmcm9tIHJhY3Rvci5y YjoxMTppbiBgYmxvY2sgKDIgbGV2ZWxzKSBpbiA8bWFpbj4nDQpHRVQgLyBIVFRQLzEuMQ0KR0VU IC8gSFRUUC8xLjENCmBgYA0KDQoNCg0KDQotLSANCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3Jn Lw0KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwogcnVieS1j b3JlIG1haWxpbmcgbGlzdCAtLSBydWJ5LWNvcmVAbWwucnVieS1sYW5nLm9yZwogVG8gdW5zdWJz Y3JpYmUgc2VuZCBhbiBlbWFpbCB0byBydWJ5LWNvcmUtbGVhdmVAbWwucnVieS1sYW5nLm9yZwog cnVieS1jb3JlIGluZm8gLS0gaHR0cHM6Ly9tbC5ydWJ5LWxhbmcub3JnL21haWxtYW4zL2xpc3Rz L3J1YnktY29yZS5tbC5ydWJ5LWxhbmcub3JnLwo=