Re: interface ideas for non-blocking mode ( migration path proposal )

2004-09-10 Thread David Nicol
I am proposing a convention for extension, not an extension to core compliance requirements. I am also proposing to write at least one wrapper driver that will provide the functionality against a synchronous DBD. I imagine that asynchronous DBDs will, at least initially, exist separately from

Re: interface ideas for non-blocking mode

2004-09-10 Thread David Nicol
I was not aware of the risk of select hanging due to a signal coming in before select can set its timer. Has anyone on this list ever been bitten by such a thing? Is Perl vulnerable to this situation or is it taken care of internally? The situation described would turn a nonblocking select call

Re: interface ideas for non-blocking mode

2004-09-10 Thread Tim Bunce
On Fri, Sep 10, 2004 at 03:15:38AM -0500, David Nicol wrote: I was not aware of the risk of select hanging due to a signal coming in before select can set its timer. Has anyone on this list ever been bitten by such a thing? Is Perl vulnerable to this situation or is it taken care of

Re: interface ideas for non-blocking mode

2004-09-09 Thread Matt Sergeant
On 9 Sep 2004, at 08:14, Jonathan Leffler wrote: == Yes this class of issues can be trivially solved by demanding threading, == but that does not help when a(n unrealistic?) design constraint limits == you to one thread. This worries me. I really think that asynchronous support via

Re: interface ideas for non-blocking mode

2004-09-09 Thread Dominic Mitchell
Matt Sergeant wrote: On 9 Sep 2004, at 08:14, Jonathan Leffler wrote: == Yes this class of issues can be trivially solved by demanding threading, == but that does not help when a(n unrealistic?) design constraint limits == you to one thread. This worries me. I really think that asynchronous

RE: interface ideas for non-blocking mode

2004-09-09 Thread Jeff Urlwin
In terms of why I'm banging on about file descriptors, let me explain my itch. I work on very highly scalable network applications that process thousands of concurrent connections. In these programs NOTHING can block my event loop, because everything falls apart if I do. And I have

Re: interface ideas for non-blocking mode

2004-09-09 Thread Matt Sergeant
On Thu, 9 Sep 2004, Dominic Mitchell wrote: Even if your DB library doesn't provide access to the file descriptor, you can still use the self pipe trick to work around that. http://cr.yp.to/docs/selfpipe.html I believe that's exactly what I'm talking about. Only if your DB doesn't notify

Re: interface ideas for non-blocking mode

2004-09-05 Thread Jonathan Leffler
On Fri, 3 Sep 2004 21:14:23 +0100, Matt Sergeant [EMAIL PROTECTED] wrote: On 2 Sep 2004, at 23:31, Tim Bunce wrote: I haven't had a chance to read through all the comments in this thread yet, but I'll point out two flies in the ointment: 1. Many database API's don't offer access to

Re: interface ideas for non-blocking mode

2004-09-03 Thread Matt Sergeant
On 2 Sep 2004, at 23:31, Tim Bunce wrote: I haven't had a chance to read through all the comments in this thread yet, but I'll point out two flies in the ointment: 1. Many database API's don't offer access to the filehandle. 2. Even for those that do, just because the filehandle becomes

Re: interface ideas for non-blocking mode

2004-09-02 Thread Tim Bunce
On Thu, Sep 02, 2004 at 01:52:59PM +0100, Matt Sergeant wrote: On 1 Sep 2004, at 03:13, david nicol wrote: Based on this comment I would like to extend the proposed extension to include an optional $h-fileno() method, which would return an arrayref containing file descriptor numbers for use

Re: interface ideas for non-blocking mode

2004-09-02 Thread Jonathan Leffler
On Thu, 2 Sep 2004 23:31:22 +0100, Tim Bunce [EMAIL PROTECTED] wrote: On Thu, Sep 02, 2004 at 01:52:59PM +0100, Matt Sergeant wrote: On 1 Sep 2004, at 03:13, david nicol wrote: Based on this comment I would like to extend the proposed extension to include an optional $h-fileno() method[...]

Re: interface ideas for non-blocking mode

2004-08-31 Thread david nicol
On Sat, 2004-08-28 at 06:01, Matt Sergeant wrote: As an addition to this thread, I just wanted to add that having each DBD implement their own event loop (via select() or otherwise) is not acceptable. Anyone who has done event driven programming will understand the mantra: There can be only

Re: interface ideas for non-blocking mode

2004-08-28 Thread Matt Sergeant
As an addition to this thread, I just wanted to add that having each DBD implement their own event loop (via select() or otherwise) is not acceptable. Anyone who has done event driven programming will understand the mantra: There can be only one. Only one event loop that is. If you implement

Re: interface ideas for non-blocking mode

2004-08-26 Thread Tim Bunce
On Thu, Aug 26, 2004 at 12:02:19AM -0500, david nicol wrote: In the recent roadmap announcement, Tim Bunce wrote: =head2 Other Enhancements * Support non-blocking mode for drivers that can enable it in their client API. I have just startedworking with DBI but I'm doing something

Re: interface ideas for non-blocking mode

2004-08-26 Thread Michael Peppler
On Thu, 2004-08-26 at 10:04, Tim Bunce wrote: On Thu, Aug 26, 2004 at 12:02:19AM -0500, david nicol wrote: In the recent roadmap announcement, Tim Bunce wrote: =head2 Other Enhancements * Support non-blocking mode for drivers that can enable it in their client API. I

Re: interface ideas for non-blocking mode

2004-08-26 Thread H.Merijn Brand
On Thu 26 Aug 2004 10:04, Tim Bunce [EMAIL PROTECTED] wrote: On Thu, Aug 26, 2004 at 12:02:19AM -0500, david nicol wrote: In the recent roadmap announcement, Tim Bunce wrote: =head2 Other Enhancements * Support non-blocking mode for drivers that can enable it in their client