On Wed, Oct 14, 2009 at 05:48:17PM +0200, Marcus Hüwe wrote:
On 2009-10-14 16:44:52 +0200, Michael Schroeder wrote:
On Wed, Oct 14, 2009 at 04:21:11PM +0200, Marcus Hüwe wrote:
If there are no objections I'm going to commit it and the next step will be to implement range support in BSServerEvents::reply_file (or rather in the corresponding "stream" functions).
I think your change breaks the magic "split/join logfile stream request" code in BSWatcher.pm, which currently relies on advancing a "start" cgi parameter and doesn't look at http headers.
Hmm what do you exactly mean? Currently we pass the range header to the BSWatcher::rpc(..) call, which does some "magic" and finally the request hits the worker which simply uses BSHTTP::reply_file(..) to fullfil the range request (in case a range header was specified). So the rpc magic should still work correctly (at least I hope so:) / couldn't find a place where the current code might break the rpc stuff).
See BSWatcher.pm's rpc_recv_forward_data_handler() function. The idea is that multiple requests to the same logfile get joined in the server and the build client needs only to serve one request. This obviously only makes sense for requests that stream the logfile while the build is running. You could just don't join requests with range requests as a workaround. Cheers, Michael. -- Michael Schroeder mls@suse.de SUSE LINUX Products GmbH, GF Markus Rex, HRB 16746 AG Nuernberg main(_){while(_=~getchar())putchar(~_-1/(~(_|32)/13*2-11)*13);} -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org