On Wed, Jun 17, 2009 at 4:53 PM, Stewart Smith <[email protected]> wrote: > > On Mon, Jun 15, 2009 at 10:11:39AM +0800, Biping MENG wrote: > > I found it's really easy to make the userland switch work. We only > > need to add a swapcontext() statement after > > drizzleclient_vio_read/write in the > > my_real_read/drizzleclient_net_real_write call, so the running session > > can switch out when I/O fails. So we don't need too much changes in > > this way. > > But this way of implementation will do no good to the proposal of > > architecture (cool thing!) mentioned on your blog. So I think choosing > > the not so easy way will be more valuable, that is, making the > > execution engine stateful. > > One advantage of going down the swapcontext() route is that with async > *disk* IO, we could swap context while waiting for disk io (as well as > for network io). > > We could laso do this fairly transparently to engines/plugins doing the > disk io.
Yep! I agree. It's done at lower level of abstraction, so with more independence. > > (of course, that does require some sort of async disk io.... which is a > whole different problem). > > -- > Stewart Smith -- Cheers. Biping MENG Natural Language Processing(NLP) Lab Dept. of Computer Science and Technology Nanjing University _______________________________________________ Mailing list: https://launchpad.net/~drizzle-discuss Post to : [email protected] Unsubscribe : https://launchpad.net/~drizzle-discuss More help : https://help.launchpad.net/ListHelp

