[#119637] Behavior of raising from rescue blocks when multiple rescue blocks exist — Rodrigo Rosenfeld Rosas via ruby-core <ruby-core@...>
Hello, I couldn't find any documentation about the subject, so I thought
3 messages
2024/10/29
[ruby-core:119626] [Ruby master Bug#20816] Potential regression in Ruby 3.3.x (compared with 3.1 and 3.2) regarding fast syscalls and multi-threading.
From:
"nobu (Nobuyoshi Nakada) via ruby-core" <ruby-core@...>
Date:
2024-10-26 09:28:50 UTC
List:
ruby-core #119626
SXNzdWUgIzIwODE2IGhhcyBiZWVuIHVwZGF0ZWQgYnkgbm9idSAoTm9idXlvc2hpIE5ha2FkYSku DQoNCg0KVGhlIHJlc3VsdCBvbiBteSBtYWNoaW5lIChBcHBsZSBNMiBQcm8sIDEyIHByb2Nlc3Nv cnMpLg0KTm90ZSB0aGF0IE49NV8wMDBfMDAwLCBhIGhhbGYgb2YgeW91ciBleGFtcGxlLg0KDQp8 VGhyZWFkc1xSdWJ5fCAzLjEuNCAgfCAzLjIuNSAgfCAzLjMuNSAgfCAzLjQuMCAgfA0KfC0tLS0t LS0tLS0tOnwtLS0tLS0tOnwtLS0tLS0tOnwtLS0tLS0tOnwtLS0tLS0tOnwNCnwgICAgICAgICAg MSB8ICA4LjgxOCB8ICA1LjYyOCB8ICA1Ljk0MyB8ICA2LjA2NiB8DQp8ICAgICAgICAgIDIgfCAx MC4zODkgfCAgNi45MjAgfCAxMS4yNTIgfCAxMi4zMTUgfA0KfCAgICAgICAgICA0IHwgMTguNjQz IHwgMTUuMzQ3IHwgMjAuMjg1IHwgMjAuMTg0IHwNCnwgICAgICAgICAgOCB8IDE4Ljc2NiB8IDE0 Ljk5NCB8IDIwLjE1NSB8IDE5LjkyMyB8DQp8ICAgICAgICAgMTYgfCAxNy41MzAgfCAxMy40NTkg fCAxOS45ODggfCAxOS43MDUgfA0KDQoNCg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQ0KQnVnICMyMDgxNjogUG90ZW50aWFsIHJlZ3Jlc3Npb24gaW4gUnVieSAzLjMu eCAoY29tcGFyZWQgd2l0aCAzLjEgYW5kIDMuMikgcmVnYXJkaW5nIGZhc3Qgc3lzY2FsbHMgYW5k IG11bHRpLXRocmVhZGluZy4NCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy8yMDgx NiNjaGFuZ2UtMTEwMjQ4DQoNCiogQXV0aG9yOiBhZHJpZW5qYXJ0aG9uIChBZHJpZW4gSmFydGhv bikNCiogU3RhdHVzOiBPcGVuDQoqIHJ1YnkgLXY6IDMuMy41DQoqIEJhY2twb3J0OiAzLjE6IFVO S05PV04sIDMuMjogVU5LTk9XTiwgMy4zOiBVTktOT1dODQotLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tDQpPayBJJ20gc29ycnkgaW4gYWR2YW5jZSBpZiB0aGlzIGlzIG5v dCByZWFsbHkgYSByZWdyZXNzaW9uIChtYXliZSBpdCdzIHRoZSBjb3N0IHRvIHBheSBmb3Igb3Ro ZXIgaW1wcm92ZW1lbnRzKSBidXQgaXQgc3RpbGwgc2hvd2VkIGFzIGEgMzAlIHBlcmZvcm1hbmNl IGRyb3AgaW4gbXkgYmVuY2htYXJrIHNvIEkgdGhpbmsgaXQgbWF5IGJlIHdvcnRoIGEgbG9vay4N Cg0KRm9yIHRoZSBmdWxsIHN0b3J5IGFib3V0IGhvdyBJIGNhbWUgZG93biB0aGlzIHJhYmJpdCBo b2xlIEkganVzdCB3cm90ZSBhIGJsb2cgcG9zdCB0byBhdm9pZCBjbHV0dGVyaW5nIHRoZSBpc3N1 ZTogaHR0cHM6Ly91cGRvd24uaW8vYmxvZy93ZWlyZC1yZXN1bHRzLWNvbXBhcmluZy1ydWJ5LTMt MS0zLTItMy0zLXdpdGgtamVtYWxsb2MtYW5kLXlqaXQgKHBsZWFzZSByZWFkIGl0IGZpcnN0KQ0K DQpIZXJlIEknbSBnb25uYSBwdXQgbXkgbGFzdCBmaW5kaW5ncyBhbmQgdGhlIHNtYWxsZXN0IHJl cHJvZHVjaWJsZSBleGFtcGxlIEkgd2FzIGFibGUgdG8gd3JpdGUuDQoNClNvIGJhc2ljYWxseSBJ IG5vdGljZWQgdGhhdCBxdWljayBzeXNjYWxscyAoYXQgbGVhc3Qgd2l0aCBhIGdvb2QgU1NEKSBs aWtlIGBGaWxlLmV4aXN0cz9gIG9yIGBGaWxlLm10aW1lYCwgd2hlbiB1c2VkIGluIGEgbXVsdGkt dGhyZWFkZWQgZW52aXJvbmVtZW50IChTaWRla2lxIGluIG15IGluaXRpYWwgdGVzdGluZyBidXQg SSByZWR1Y2VkIGl0IHRvIGEgZmV3IFRocmVhZC5uZXcpIGFyZSBzaWduaWZpY2FudGx5IHNsb3dl ciBpbiAzLjMueCAodGVzdGVkIHdpdGggdGhlIHNhbWUgcmVzdWx0cyBvbiAzLjMuMCwgMy4zLjIg YW5kIDMuMy41IGZvciB0aGUgbW9tZW50KSBpbiBjb21wYXJpc29uIHdpdGggMy4xLjIgb3IgMy4y LjU6IGFib3V0IHR3aWNlIGFzIHNsb3cuDQoNClRoZXNlIHN5c2NhbGxzIGFyZSBoZWF2aWx5IHVz ZWQgYnkgdGhlIFJhaWxzIFJlbG9hZGVyIHdoaWNoIGlzIGhvdyBpdCBoYWQgc3VjaCBhIGh1Z2Ug aW1wYWN0ICgzMCUpIGluIG15IHRlc3RpbmcuDQoNCkhlcmUgaXMgdGhlIHNtYWxsIHJlcHJvZHVj dGlvbiBzY3JpcHQgSSB3cm90ZToNCg0KYGBgIHJ1YnkNCiMhL3Vzci9iaW4vZW52IHJ1YnkNCg0K R0MuZGlzYWJsZSAjIGp1c3QgdG8gbWFrZSBzdXJlIGl0IGRvZXNuJ3Qgc2tldyByZXN1bHRzDQpU SFJFQURTID0gKEFSR1YuZmlyc3QgfHwgMTApLnRvX2kgICMgY2hvb3NlIHRocmVhZCBjb3VudCBm cm9tIENMSQ0KTiA9IDEwXzAwMF8wMDAgIyB0byBtYWtlIHRoZSB0ZXN0IGxvbmdlciBvciBzaG9y dGVyDQoNCnB1dHMgIlJ1YnkgI3tSVUJZX1ZFUlNJT059IC8gWUpJVDogI3tSdWJ5Vk06OllKSVQu ZW5hYmxlZD99IC8gI3tUSFJFQURTfSBUaHJlYWRzIg0KDQpBcnJheS5uZXcoVEhSRUFEUykubWFw IGRvDQogIFRocmVhZC5uZXcgZG8NCiAgICAoTi9USFJFQURTKS50aW1lcyB7IEZpbGUubXRpbWUo X19GSUxFX18pIH0NCiAgZW5kDQplbmQuZWFjaCgmOmpvaW4pDQoNCnB1dHMgIiN7Tn0gY2FsbHMg Y29tcGxldGVkIg0KYGBgDQoNClRoZSBnb2FsIGlzIGp1c3QgdG8gcnVuIGEgbG90IG9mIGZhc3Qg c3lzY2FsbHMsIGluIHZhcmlvdXMgbnVtYmVyIG9mIHRocmVhZHMsIGFuZCBoZXJlIGFyZSB0aGUg bnVtYmVycyBvbiBteSBtYWNoaW5lOg0KfFRocmVhZHNcUnVieXwzLjEuMiB8My4zLjUgfA0KfC0t fC0tfC0tfA0KfDEgfCAxMy43cyB8IOKchSAxNC4ycyB8DQp8MiB8IDkuN3MgfCDimqDvuI8gMzMu NHMgfA0KfDQgfCAyMy4ycyB8IOKaoO+4jyAzNy4wcyB8DQp8OCB8IDIxLjhzIHwg4pqg77iPIDM5 LjdzIHwNCnwxNiB8IDIzLjFzIHwg4pqg77iPIDQxLjVzIHwNCg0KKG1vcmUgbnVtYmVycyBpbiB0 aGUgW2Jsb2cgcG9zdF0oaHR0cHM6Ly91cGRvd24uaW8vYmxvZy93ZWlyZC1yZXN1bHRzLWNvbXBh cmluZy1ydWJ5LTMtMS0zLTItMy0zLXdpdGgtamVtYWxsb2MtYW5kLXlqaXQpKQ0KDQpJIHN1c3Bl Y3RlZCB0aGUgW25ldyBOOk0gdGhyZWFkIHNjaGVkdWxlciBpbnRyb2R1Y2VkIGluIDMuM10oaHR0 cHM6Ly9naXRodWIuY29tL3J1YnkvcnVieS9wdWxsLzg2MjkpLCBldmVuIHRob3VnaCBpdCdzICJk aXNhYmxlZCIgYnkgZGVmYXVsdCBvbiB0aGUgbWFpbiBSYWN0b3IsIHRoaW5raW5nIG1heWJlIHRo ZXNlIGNoYW5nZXMgZGVncmFkZWQgYSBiaXQgdGhpcyAocXVpdGUgc3BlY2lmaWMgc2NlbmFyaW8p LiBTbyBJIGdhdmUgYSBxdWljayB0cnkgd2l0aCB0aGUgZmVhdHVyZSBFTkFCTEVELCB0byBzZWUg aWYgaXQgd291bGQgYXQgbGVhc3QgY2hhbmdlIGFueXRoaW5nIGFuZCBpdCBkaWQgISAodGhvdWdo IG5vdCB3YXMgSSBleHBlY3RlZCk6DQoNCnxUaHJlYWRzXFJ1Ynl8My4xLjIgfDMuMy41IHwgMy4z LjUgd2l0aCBSVUJZX01OX1RIUkVBRFM9MSB8DQp8LS18LS18LS18LS18DQp8MSB8IDEzLjdzIHwg MTQuMnMgfCAxNC41cyDinIUgfA0KfDIgfCA5LjdzIHwg4pqg77iPIDMzLjRzIHwgMTIuM3Mg8J+O iSB8DQp8NCB8IDIzLjJzIHwg4pqg77iPIDM3LjBzIHwgNDAuNXMg8J+nkCB8DQp8OCB8IDIxLjhz IHwg4pqg77iPIDM5LjdzIHwgMzcuOXMg8J+nkCB8DQp8MTYgfCAyMy4xcyB8IOKaoO+4jyA0MS41 cyB8IDM2LjNzIPCfp5AgfA0KDQoNCihJIGNhbiBtYWtlIGdyYXBocyBmb3IgdGhlc2UgbnVtYmVy cyBpZiBpdCBoZWxwcykNCg0KTm93IEknbSBhIGJpdCBzdHVjayBpbiBteSBpbnZlc3RpZ2F0aW9u LCBJJ20gbm90IHN1cmUgd2hhdCBjaGFuZ2UgaW4gMy4zIGNhdXNlZCB0aGlzICh0aGUgbmV3IHRo cmVhZCBzY2hlZHVsZXIgaXMgYSBnb29kIGxlYWQgSU1PKSBvciBpZiBpdCBldmVuIGlzIGEgcmVn cmVzc2lvbi4gTWF5YmUgdGhpcyBkb3duc2lkZSBpcyBpbm5ldml0YWJsZSBmb3Igb3RoZXIgYmVu ZWZpdHM/IEkgYW0gaGFwcHkgdG8gY29udHJpYnV0ZSBtb3JlIHRpbWUgdG8gdGhpcyBpc3N1ZSBh bmQgcGVyZm9ybSBtb3JlIHRlc3RzIGJ1dCBJIHdvdWxkIG5lZWQgc29tZSBndWlkYW5jZSBvbiB3 aGF0IGNvdWxkIGJlIGludGVyZXN0aW5nIHRvIHRlc3QsIGZyb20gcGVvcGxlIHdobyB1bmRlcnN0 YW5kIGEgYml0IGJldHRlciB0aGFuIG1lIGhvdyB0aGlzIHdvcmtzIGludGVybmFsbHkuDQoNClRo YW5rcyAhIChhbmQgc29ycnkgZm9yIHRoZSBsb25nIHJlYWQpDQoNCg0KDQotLSANCmh0dHBzOi8v YnVncy5ydWJ5LWxhbmcub3JnLw0KIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KIHJ1YnktY29yZSBtYWlsaW5nIGxpc3QgLS0gcnVieS1jb3JlQG1sLnJ1Ynkt bGFuZy5vcmcKIFRvIHVuc3Vic2NyaWJlIHNlbmQgYW4gZW1haWwgdG8gcnVieS1jb3JlLWxlYXZl QG1sLnJ1YnktbGFuZy5vcmcKIHJ1YnktY29yZSBpbmZvIC0tIGh0dHBzOi8vbWwucnVieS1sYW5n Lm9yZy9tYWlsbWFuMy9saXN0cy9ydWJ5LWNvcmUubWwucnVieS1sYW5nLm9yZy8=