> > At least on the client side, we don't need streaming for files or
> > manifests.  Why is this enabled serverside?  Does the depot still print
> 
> I'm not sure what you mean about the "why".

I'm asking why you set 'response.stream' to True for the manfiest_0 and
file_0 cases.  I'm assuming you had a reason for doing so.

> > functionality to guard against corruption until we have manifest
> > signing.  Does setting streaming to True have any performance impact on
> > pkg client performance?
> 
> In theory, it should be better.  We may not be able to tell a difference 
> with an Apache proxy in front.

Did you make any measurements one way or the other?

> In retrospect, manifest probably isn't is a prime candidate for 
> streaming, but I believe file is given the cherrypy admonition about 
> "pages which take many minutes to produce."
> 
> Also, I would think it would make sense to stream files, since we 
> wouldn't want the server to buffer an entire 1GB file before sending it 
> out; it should just send the file as it reads it (streaming).

http://www.cherrypy.org/wiki/ReturnVsYield

I agree that server memory usage is a concern; but the manifest_0 and
file_0 routines call serve_file() instead of yield.  The serve_file code
looks like it only yields when processing multipart/byterange requests.
It's not clear to me why we're setting response.stream to True in these
cases, if our code isn't actually calling yield.  I'm assuming that the
internal CherryPY routine knows how to do the right thing, regardless.
Are you saying that assumption is incorrect?

-j

_______________________________________________
pkg-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/pkg-discuss

Reply via email to