Re: Comm API notes

From: Alex Rousskov <rousskov_at_measurement-factory.com>
Date: Wed, 10 Sep 2008 16:30:25 -0600

On Wed, 2008-09-10 at 23:52 +0200, Henrik Nordstrom wrote:
> On ons, 2008-09-10 at 15:45 -0600, Alex Rousskov wrote:
>
> > Take an HttpStateData, for example. When the socket descriptor is
> > closing, HttpStateData may still have a lot of work to do. The old code
> > (some of which remains) assumed that comm_close is pretty much the final
> > word. After that, there is no valid state to care about and no work to
> > continue. That's wrong. Does this example clarify the difference between
> > "stop I/O on this descriptor" and "kill this job"?
>
> Yes, I think so.
>
> But the direct relation you tink of didn't exist before either. Only
> indirectly by close handlers.

Agreed. However, since the close handlers were synchronous the indirect
relationship was still rather "close" -- some jobs did not expect to
survive past the comm_close call because they would be reentered and
killed during that call.

> > Hopefully, the above steps will make it easier. I have not refreshed my
> > memory on overlapping I/Os and other Windows details, but I am certain
> > the initial steps outlined in the notes will be required anyway.
>
> Getting away from fd_t being an int is the most important part. The rest
> is just adaptation glue..

The fd_t conversion work should not go into v3.1, right?

Thanks,

Alex.
Received on Wed Sep 10 2008 - 22:31:10 MDT

This archive was generated by hypermail 2.2.0 : Thu Sep 11 2008 - 12:00:12 MDT