Hello. This is ping for "02/08/2017 19:05" e-mail. On 10/08/2017 18:16, Oleg Ogurtsov wrote:
I installed a last version BSSolv from sources (0.13). And I saw a worsening of work with my patches - increase in a build time of the project.
I meant perl-BSSolv.I tested with different versions of the perl-BSSlov library and concluded - versions above 0.30.0 (or 0.10 git-tag) break the scheduler algorithm with phases 1,2,3 for cyclic packages (%cycpass). Packets don't wait the phase 3. And after the build, scheduler set up their immediately on the rebuild. Please tell me if it is not so. On 28/07/2017 18:29, Michael Schroeder wrote:
Hmm, I remember mailing with Pavel Kopyl from Samsung about improving the handling of cycles. Is this related?
On 02/08/2017 19:05, Oleg Ogurtsov wrote:
I continued Pavel's work. At first he faced a problem of names and solved it. I made optimization on the basis of his patch.
1. I think, Pavel's patch fix a problem with names. Although it significantly increases the build time, as in my case with linaro-gcc(relatively long build time). The patch itself may worsen the performance, but it fixes problem in internal package names. So, in my opinion, it is significant for OBS. On 28/07/2017 18:29, Michael Schroeder wrote:
I think the patch does way to much to implement this. My suggestion from the mail thread was just to tweak the code so that non-cycle packages come after the cycle ones, and then change the code so that "$notready" is set of all cycle packages if one of them is building/blocked.
I'll check how much change that would be next week, we can then discuss things further.On 02/08/2017 19:05, Oleg Ogurtsov wrote: 2. The code in Checker.pm changes the sequence of processing. The code in Package.pm adds a checking for non-cyclic packages - block the build of package, if all cyclic packages are not ready.
2. The main idea - build non-cyclic packages and their dependencies only once. Changing the processing sequence is not enough. But changes in Package.pm also do not guarantee the expected result. A project configuration may contain lines that exclude packages from list of expanded dependencies, because of Preinstall section. It can do is added as an option to a project configuration - enabling/disabling. -- Best regards, Oleg Ogurtsov. Samsung R&D Institute Russia, e-mail: o.ogurtsov@samsung.com -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org