I think that is a event which is cancelled and destructed, but still
running in other thread, the event id in our stack show the same issue
as TS-1114, with turnout to be a locking issue, where we should protect
all the vol open/write.

the event is free and the same place is filled with other data, and the
data may or may not be another same structure.

I am just think of that we try to focus on how to do io_close is far
away to fix the problem

FYI

在 2012-03-17六的 20:35 -0700,John Plevyak写道:
> This makes no sense at all then.  If there is no sharing there should be
> only one thread in play, so there can't be a thread A and a thread B.  I'd
> love to know where that other thread comes from.  It seems like a deeper
> problem.  I added asserts a while back to ensure that a transaction stayed
> entirely on a single thread.  I will add them again and make sure that
> connection sharing is disabled and see what happens.
> 
> john
> 
> On Thu, Mar 15, 2012 at 11:01 AM, Alan M. Carroll <
> a...@network-geographics.com> wrote:
> 
> > Thursday, March 15, 2012, 12:39:08 PM, you wrote:
> >
> > > On 3/15/12 10:58 AM, Alan M. Carroll wrote:
> > >> Thursday, March 15, 2012, 10:43:34 AM, you wrote:
> >
> > >>>> This can only occur when there is some connection sharing or if
> > someone has
> > >>>> introduced a thread switch in some other processor which triggers the
> > OS
> > >>>> connection.  AFAIK the OS connection is initiated on the thread which
> > has
> > >>>> the client connection and thus, without connection sharing, they
> > should be
> > >>>> on the same thread.
> > >>> Sorry to butt in, but that was my impression as well. That's also why I
> > >>> added the option to have a per-thread session pools, enabled via
> > >>>       CONFIG proxy.config.http.share_server_sessions INT 2
> > >> What setting disables connection sharing? Setting that value to 0
> > doesn't.
> >
> >
> > > Well, with 0, each client VC basically gets its own "pool". I.e. as long
> > as
> > > the client VC is alive, any origin connection(s) used by that client VC
> > is
> > > tied to that client, and stays alive as either keep-alive lets it stay
> > up.
> >
> > > So, the origin connection is still reused, but never shared. If it does
> > > indeed get shared, we have a major, major bug (probably blame me....).
> >
> > For the situation in my scenario there is no sharing. The two NetVCs in
> > the HttpServerSession are not shared with any other HttpServerSession (as
> > far as I can tell and the resulting crash does not require any sharing to
> > occur).
> >
> >

-- 
zym, Zhao Yongming.
aka: yonghao @ taobao.com

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to