[opensuse-buildservice] My next patch
Hi, I think web client programming is for wimps, so I thought I need to prove myself and touch the backend. I don't dare to commit, but I would like to hear some "this { needs to be on its own line" and "there needs to be a space before the )". What I did: BSFileDB::fdb_getall works from on the file from end to start and supports a limit paramter - only very people want to see the first 20 build history items as the platform page shows atm. The filtering is done using a callback and not afterwards on the full array. /build/openSUSE:Factory/standard/i586/_jobhistory?package=xen&code=failed' takes 17 seconds, with limit=2 it takes less than 1. And to support the project page, I added a _failures function that will show all current failures and the latest success, so I don't need to load the complete jobhistory /build/openSUSE:Factory/standard/i586/_failures' still takes 16 seconds, but _jobhistory takes 61s. And the implementation is just a couple of lines after the _jobhistory function filters by callback. Once those functions (with corrected indenting of course) are in, we can actually implement build history for packages without breaking the rep server. Greetings, Stephan
On Sunday 08 November 2009 16:51:55 Stephan Kulow wrote:
Once those functions (with corrected indenting of course) are in, we can actually implement build history for packages without breaking the rep server.
One more change I require is getting a way to get all meta informations from openSUSE:Factory without 4000 http (or worse ichain) requests. So I implemented '/source/$project/_fullmeta', which includes the meta of all packages in a project (I mainly need all devel projects, but getting the _fullmeta takes 3.4s - while getting all single _meta files takes ~10 minutes. Please see http://gitorious.org/factory-o-o/buildservice-trunk/commit/bc4391a22578c700b... Greetings, Stephan -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
On Sun, Nov 08, 2009 at 04:51:55PM +0100, Stephan Kulow wrote:
I think web client programming is for wimps, so I thought I need to prove myself and touch the backend.
I don't dare to commit, but I would like to hear some "this { needs to be on its own line" and "there needs to be a space before the )".
What I did:
BSFileDB::fdb_getall works from on the file from end to start and supports a limit paramter - only very people want to see the first 20 build history items as the platform page shows atm.
The filtering is done using a callback and not afterwards on the full array.
Hah, I already added that last week but didn't commit yet. ;-)
/build/openSUSE:Factory/standard/i586/_jobhistory?package=xen&code=failed'
takes 17 seconds, with limit=2 it takes less than 1.
And to support the project page, I added a _failures function that will show all current failures and the latest success, so I don't need to load the complete jobhistory
That's not a good idea, you should not use a new route to get this. Support a filter on the existing route instead. 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
Am Montag 09 November 2009 schrieb Michael Schroeder:
That's not a good idea, you should not use a new route to get this. Support a filter on the existing route instead.
The problem is not the backend, but _meta is hard coded in the API to be found in the API database. I tried to hack this into the frontend to bypass the database when includepacks=1 is set, but I have no idea how this works with remote backends. Greetings, Stephan -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
participants (2)
-
Michael Schroeder
-
Stephan Kulow