Hi,
there seems to be a problem with the getbinarylist call (view=cpio) and the "Transfer-Encoding" header (depending on the "length" of the request?). I just tried the following curl calls: curl -o out.cpio -v -sS \ "https://api.opensuse.org/public/build/openSUSE:Factory/standard/x86_64/_repo... -e "print 'b'x3616")" and curl -o out.cpio -v -sS \ "https://api.opensuse.org/public/build/openSUSE:Factory/standard/x86_64/_repo... -e "print 'b'x3617")"
The response of the first request still includes the "Transfer-Encoding" header but the response of the second request has no "Transfer-Encoding" header.
Now consider the following call: curl http://<local obs>/build/<remote project>/<repo>/<arch>/_repository?view=cpio&<long query>
This leads to a "crash" in bs_srcserver (the ajax process dies because the response has neither a "Transfer-Encoding" nor a "Content-Length" header).
Any ideas why the "Transfer-Encoding" header gets swallowed?
Marcus
Ps. is this the same bug to which a comment in "worker_getbinaries" refers?
Hi,
On 2010-12-21 01:05:37 +0100, Marcus Hüwe wrote:
there seems to be a problem with the getbinarylist call (view=cpio) and the "Transfer-Encoding" header (depending on the "length" of the request?). I just tried the following curl calls: curl -o out.cpio -v -sS \ "https://api.opensuse.org/public/build/openSUSE:Factory/standard/x86_64/_repo... -e "print 'b'x3616")" and curl -o out.cpio -v -sS \ "https://api.opensuse.org/public/build/openSUSE:Factory/standard/x86_64/_repo... -e "print 'b'x3617")"
The response of the first request still includes the "Transfer-Encoding" header but the response of the second request has no "Transfer-Encoding" header.
Now consider the following call: curl http://<local obs>/build/<remote project>/<repo>/<arch>/_repository?view=cpio&<long query>
This leads to a "crash" in bs_srcserver (the ajax process dies because the response has neither a "Transfer-Encoding" nor a "Content-Length" header).
Any ideas why the "Transfer-Encoding" header gets swallowed?
Just a small *bump* - we just hit this bug while debugging a local obs issue in the #opensuse-buildservice irc channel.
Does anyone have an idea what might be the root cause of this behaviour?
Marcus
On Fri, Mar 25, 2011 at 11:55:00PM +0100, Marcus Hüwe wrote:
On 2010-12-21 01:05:37 +0100, Marcus Hüwe wrote:
there seems to be a problem with the getbinarylist call (view=cpio) and the "Transfer-Encoding" header (depending on the "length" of the request?). I just tried the following curl calls: curl -o out.cpio -v -sS \ "https://api.opensuse.org/public/build/openSUSE:Factory/standard/x86_64/_repo... -e "print 'b'x3616")" and curl -o out.cpio -v -sS \ "https://api.opensuse.org/public/build/openSUSE:Factory/standard/x86_64/_repo... -e "print 'b'x3617")"
The response of the first request still includes the "Transfer-Encoding" header but the response of the second request has no "Transfer-Encoding" header.
Now consider the following call: curl http://<local obs>/build/<remote project>/<repo>/<arch>/_repository?view=cpio&<long query>
This leads to a "crash" in bs_srcserver (the ajax process dies because the response has neither a "Transfer-Encoding" nor a "Content-Length" header).
Any ideas why the "Transfer-Encoding" header gets swallowed?
Just a small *bump* - we just hit this bug while debugging a local obs issue in the #opensuse-buildservice irc channel.
Does anyone have an idea what might be the root cause of this behaviour?
I think this is because ichain/lighttpd have a limit on the url size. I already switched to POST for the /lastevents request because of this.
Cheers, Michael.
Hi!
2011/3/28 Michael Schroeder mls@suse.de:
I think this is because ichain/lighttpd have a limit on the url size. I already switched to POST for the /lastevents request because of this.
It seems that this switch is only done in the backend and not in the API. PublicController::lastevents still supports only get. Or am I missing something?
-Johannes
buildservice@lists.opensuse.org