[#7809] uninit bug in yaml/emitter.c — "Pat Eyler" <rubypate@...>
During our hacking night, we also looked at an UNINIT bug in yaml/emitter.c
[#7813] :!~ not a symbol — noreply@...
Bugs item #4344, was opened at 2006-05-03 17:41
[#7818] (security-related) patch to ALLOC macros to prevent integer overflow bugs — "Dominique Brezinski" <dominique.brezinski@...>
While fixing the integer overflow in rb_ary_fill(), it occurred to me
[#7833] segfault on Proc#call after setting a trace_func — Mauricio Fernandez <mfp@...>
$ cat bug2.rb
[#7843] Possible YAMl bug in 1.8.4 — Damphyr <damphyr@...>
OK, while parsing the td2 data from the ruby-lang website we stumbled on
Its probably a bug. I'm not familiar with the specifics, but Ruby
[#7858] Ruby threads working with native threads — "Francis Cianfrocca" <garbagecat10@...>
I recently wrote a network-event extension for Ruby ("eventmachine" in
[#7865] Strange interactions between Struct and 'pp' — noreply@...
Bugs item #4457, was opened at 2006-05-12 17:13
[#7872] Nonblocking socket-connect — "Francis Cianfrocca" <garbagecat10@...>
All, I needed a nonblocking socket connect for my asynchronous-event
In article <3a94cf510605140559l7baa0205le341dac4f47d424b@mail.gmail.com>,
How about introducing the method Socket#set_nonblocking, or alternatively
Hi,
Well, it's ok then. I'm comfortable adding in the nonblocking
Hi,
How about Socket#nbconnect and Socket#nbaccept?
On 5/15/06, Francis Cianfrocca <garbagecat10@gmail.com> wrote:
In article <1147709691.180288.28647.nullmailer@x31.priv.netlab.jp>,
[#7881] Segfault on x86_64 when built with -O0 in CFLAGS — noreply@...
Bugs item #4491, was opened at 2006-05-16 12:46
[#7882] reproducible bug in DRb on OSX — cremes.devlist@...
I've been tearing my hair out the last few days trying to track down
[#7909] SCRIPT_LINES__ issue when loading a file more than once — Mauricio Fernandez <mfp@...>
SCRIPT_LINES__ is an obscure feature very few people care about, but I happen
On Fri, May 19, 2006 at 06:46:05PM +0900, Mauricio Fernandez wrote:
Hi,
[#7923] Nonblocking accept — "Francis Cianfrocca" <garbagecat10@...>
Thanks to the Matz and colleagues for adding the *_nonblock functions. They
[#7928] set_trace_func: binding has wrong self value for return events — =?ISO-8859-15?Q?Florian_Gro=DF?= <florgro@...>
Moin.
Florian Growrote:
Re: Nonblocking socket-connect
I also prefer *_nonblock. Based on my reading of io.c and socket.c, it seems to me that IO objects are designed to have a strong interaction with Ruby threads. And this is really unavoidable because, as everyone immediately points out, any green-thread implementation is required to avoid blocking the whole process if one thread should ever make a blocking call. As Tanaka pointed out, the need for this interaction goes away when IO operations are strictly nonblocking. But it's really quite difficult to write nonblocking IO in any case, not just in Ruby (you have to deal with a plethora of platform dependencies as well as a large range of possible errors). So I think the current implementation makes the right choice by concentrating on working as well as possible with blocking IO. So it seems like a good choice to provide methods for nonblocking IO (some belong in Socket and some in IO) that are explicitly designed only for nonblocking. That way only people who really need nonblocking IO will need to learn them, and everyone else can ignore them. I think that any call to a nonblocking operation should set the nonblocking mode on the descriptor, and programmers should be warned not to mix blocking and nonblocking operations on the same descriptor (as they are warned not to mix buffered and unbuffered). An alternative is to provide a platform-neutral IO#set_nonblock call (replacing the strange convention of calling a Unix-style fcntl and relying on some internal magic to do the right thing on Windows). But that doesn't solve the whole problem since you can't tell a descriptor is nonblocking on Windows. I think nonblocking mode should be implicitly set on any call to a *_nonblock method. As a starting point, I'm happy to contribute the nonblocking calls that were developed for eventmachine. On 5/21/06, Sam Roberts <sroberts@uniserve.com> wrote: > > Quoting matz@ruby-lang.org, on Sun, May 21, 2006 at 11:39:21PM +0900: > > Hi, > > > > In message "Re: Nonblocking socket-connect" > > on Sat, 20 May 2006 17:01:03 +0900, Tanaka Akira <akr@m17n.org> > writes: > > > > |Do you find an acceptable name? > > | > > | connect_nonblock > > | nbconnect > > | connectnb > > | connect! > > | > > | accept_nonblock > > | nbaccept > > | acceptnb > > | > > | recvfrom_nonblock > > | nbrecvfrom > > > > *_nonblock sound better than others from my POV. Any opinion? > > I like the _nonblock best of the 4. > > > Is there any issue other than a name left? > > Is there a description somewhere of what they do, and why setting > nonblock on the socket is not sufficient? > > Its a bit odd, usually ruby Socket methods mirror the BSD socket API > fairly closely, I think the problem here has to do with interactions > with threads, and ruby's implicit calling of select before making sys > calls on a descriptor, but if there is a mailing list thread that > discusses the problem in more detail, or an RCR, could someone point it > out to me? > > Thanks, > Sam > > >