Re:Re:Re: Puzzled at storeAppend. :-(

From: <maer727@dont-contact.us>
Date: Sun, 21 Apr 2002 10:21:20 +0800 (CST)

Thanks, Henrik pal!

I also try to find the answer by myself after posting the question.
I find in ftp.c, it is doing the same task as you said. After copying
data and all the "tags" of HTML, the buffer will flush. And not simply
just copying data and flush buffer, then copying tags and flush
again. :-) Am I correct?

Best regards,
George Ma

----- Original Message -----
From: Henrik Nordstrom
To: maer727@sohu.com
Cc: squid-dev@squid-cache.org
Subject: Re:Re: Puzzled at storeAppend. :-(
Sent: Sat Apr 20 23:53:41 CST 2002

> You are correct.
>
> A writer (one calling storeAppend()) can by calling storeBuffer()
> tell the store layer to internally buffer all data, delay sending it
> to the store clients until storeBufferFlush() is called. This is to
> avoid having store clients being invoked on small fragments of data
> when it is known more will be added immediately.
>
> Regards
> Henrik
>
>
> On Saturday 20 April 2002 15:39, maer727@sohu.com wrote:
> > Thanks, Henrik pal!
> >
> > I have got some ideas for the variable. For example, in
> > storeBuffer,
> >
> > void
> > storeBuffer(StoreEntry * e)
> > {
> > EBIT_SET(e->flags, DELAY_SENDING);
> > }
> >
> > in storeBufferFlush,
> > /* this just clears DELAY_SENDING and Invokes the handlers */
> > void
> > storeBufferFlush(StoreEntry * e)
> > {
> > EBIT_CLR(e->flags, DELAY_SENDING);
> > InvokeHandlers(e);
> > storeSwapOut(e);
> > }
> >
> > I think it means some process is delaying, for example, copying
> > something into the buffer. But I do not know clearly. :-) Can you
> > give me a simple explanation about the meaning of the variable?
> >
> > Best regards
> > George Ma
> >
> > ----- Original Message -----
> > From: Henrik Nordstrom
> > To: maer727@sohu.com ;squid-dev@squid-cache.org
> > Cc: squid-dev@squid-cache.org
> > Subject: Re: Puzzled at storeAppend. :-(
> > Sent: Sat Apr 20 19:40:09 CST 2002
> >
> > > grep -C DELAY_SENDING store.c, then see how the functions found
> > > are being used in other parts of the code.
> > >
> > > Regards
> > > Henrik
> > >
> > > On Saturday 20 April 2002 10:46, maer727@sohu.com wrote:
> > > > Hi, pals!
> > > >
> > > > Take a look at the lines in storeAppend.c,
> > > >
> > > > if (EBIT_TEST(e->flags, DELAY_SENDING))
> > > > return;
> > > >
> > > > What is the meaning and function of DELAY_PENDING?
> > > >
> > > > I look up it in FAQ and squid.conf but failed. :-(
> > > >
> > > > Another question, what is the function of storeSwapout()?
> > > > After searching for some informations, I think it is used
> > > > for write an object from mem to disk. Am I correct?
> > > >
> > > > Best regards,
> > > > George Ma
Received on Sat Apr 20 2002 - 20:21:28 MDT

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:15:15 MST