From: Garthy D Date: 2013-03-16T20:09:48+09:00 Subject: Fiber and embedding differences in 1.9.2 versus 1.9.3 series Hi everyone, I don't suppose anybody knows much about the differences in Fiber implementation, especially with respect to embedding, between the MRI 1.9.2 and 1.9.3 series? If so, would you be be happy to share some links and resources? Over the last couple of days I've been looking at updating the version of MRI Ruby that I am embedding in my project. After a bit of work I've been able to get most of the 1.9.2 series working fine, including the latest, but my attempts to get things working with the 1.9.3 series have fallen flat. For 1.9.3, I have concentrated on p0 and p392 for now. My app makes heavy use of coroutines (ie. Fibers), and tends to segfault at a similar point, with severe stack corruption (basically the top two stack frames have different values for "this" for the same object, essentially impossible). This occurs in the middle of a call back to the containing C++ code, during a coroutine. The complexity and corruption is making debugging rather difficult. Whilst I'm leaving it for now (the latest 1.9.2 is sufficient for my purposes), I'd like to take a crack at it again in the future. Given the nature of the issue and the difficulty in debugging it, I'd like to be a bit more knowledgeable on the issues the next time I dive in and try to solve it. If anyone can point to any links, discussion, or hints on any fundamental changes to Fibers between the 1.9.2 and 1.9.3 series, it would be much appreciated. I'm happy to do the legwork and the reading, but I'd be thrilled if anyone could throw some starting points for research or hints my way. :) Cheers, Garth