From: Igor <lanthruster@gmail.com>
To: Alec Warner <gentoo-dev@lists.gentoo.org>
Subject: Re: [gentoo-dev] Portage QOS
Date: Thu, 9 Jan 2014 16:44:02 +0400 [thread overview]
Message-ID: <52ce9994.24f5980a.0660.342e@mx.google.com> (raw)
In-Reply-To: <CAAr7Pr9a_BRZji8LTJb7rE53ASgyA4nP2ysVGkr+5m5JRjnYDw@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 8116 bytes --]
Hello Alec,
Thursday, January 9, 2014, 12:12:18 PM, you wrote:
On Wed, Jan 8, 2014 at 11:24 PM, LTHR <lanthruster@gmail.com> wrote:
Hi All,
I want to start off by discussing your premise, before embarking on the overall goals.
You wrote:
"I'm with Gentoo for many years. For various reasons many techs were not implemented and now Gentoo is in a kind of stagnation. But we can give Gentoo a new birth with relatively little efforts and bring the distro to the whole new level. "
I don't actually believe your premise of stagnation. But I can put aside my disagreement for now.
True. There is no data to tell what happens with Gentoo (to give that data is one of the goals of the
project). We only have some formal esteems from unreliable sources.
According to distro watch:
http://web.archive.org/web/20130701000000*/http://distrowatch.com/dwres.php?resource=popularity
In February 2012, Gentoo distro was in 19th place.
In December 2012, Gentoo went to 22nd place.
In December 2013, Gentoo is down to 32nd place
According to Linux Counter
http://web.archive.org/web/20120101000000*/http://linuxcounter.net/distributions/stats.html
In January 2012, Gentoo distro had 5.32%
In January 2012, Gentoo had 4.04%
In November 2013, Gentoo had 4,21%
And from my experience of Gentoo forums, gentoo.wiki - I vote for Gentoo at least not gaining new users.
If in several years the number of users is not increased - we can tell about stagnation.
Why new users are not with Gentoo and how to get them - good question, let's find out!
Lets talk about how the overall goal of 'bringing the distro to a whole new level' and how 'Portage QoS' will help us get there. I don't think you covered these points well in your post (I will talk about the goals more below...)
I'll re-phrase the goals.
It's all not very well thought after at this stage but immediate goals are like this:
* Knowledge of the number of Gentoo distros installed world wide - knowing the trend how many users choose
Gentoo and where Gentoo is really going down|up|stands still.
You can then try different features and see how a feature is met - if the number of systems increase
then this feature is probably useful. It's a strategical job, somebody at the very top of the project should
analyze databases and make conclusions.
* Knowledge of the ebuild popularity - what ebuilds are popular and what are not - what ebuild to give an extra focus
and what ebuild could wait
* Knowledge of ebuild quality. If some ebuilds fail on many systems - something is wrong and ebuild and may be portage
need fixing. It's especially useful to make sure that all ebuilds have correct dependencies, missing dependencies, etc.
* A formal esteem of portage quality
PortageQ = (the number of successful ebuilds/the number of all ebuild attempts)
Portage speed efficiency:
Average time before build starts (or download starts)
How many times portage fails itself.
* Immediate problem detection. If the number of PortageQ went down last day - there is some problem.
(then you go to ebuild stats and see what is failing)
* Reducing load on bugtracker folks - the build problems will be detected automatically and solved according
to their importance. There will be no need to supply bug tracker with ebuild logs and emerge --info if
somebody wants to report a problem.
* Team efficiency esteem. The stats will tell what ebuilds are failing most often.
* Team automated info. When failure rate of a certain ebuild increase the maintainer is automatically
informed and he can login in web-interface and see details how exactly ebuild failed.
The same for the portage itself. Next day a maintainer could push a new ebuild in the portage and the
problem might be solved.
It's not possible not to make mistakes. But it's possible to react on their consequences fast.
* Knowledge what kernels are used by Gentoo users, how often they update their systems, what flags
are used
2nd turn goals:
* to integrate forums.gentoo.org and bug tracker. People are offering great workarounds and solutions. But
they're not known to the majority of Gentoo users.
If a e-build fails - may be there is already a solution - and we can offer the solutions automatically from
portage. Like:
There might be some work-arounds on this problem:
[Gentoo Forum - qt-core ebuild fails - SOLVED]
htpp://forums.gentoo.org/.....
There is a known bug on this ebuild:
[Gentoo Bug - qt-core ebuild fails]
htpp://forums.gentoo.org/.....
* to make Bug Tracker almost unmanned. We can use gathered infromation on failed e-builds to
create bugs in Bug Tracker automatically and automatically set priorities according to the
severity.
The severity could be assigned automatically from package popularity and failure rate stats.
The users with the problems could receive e-mail automatically to follow up the quick arounds
and solutions.
No need to change bug-tracker version, you just need a robot who would maintain bug-tracker
analyazing PortageQOS databases.
I'm sure there could be more applications of the system.
Back to the premise of bringing the distro to a whole new level. Some of the items above I think have merits on their own, but they still don't guide me to your ultimate goal. You outlined some of what I presume to be defects in Gentoo today.
It's hard to see more goals at this stage. It's like when you're building a hammer to set a nail and
then when you have it you discover that you may use it to pull a nail too. It's for the future developers
to decide.
Knowledge: So I think in general I agree, insofar as more information can be helpful in making decisions. I think you should take note that there are at least 4-5 'gentoo stats' projects that have been tried and my understanding is that none of them are in operation today.
True, one of the reasons - the whole system planning shouldn't be apart from Gentoo developers.
I could write the whole system on paper, with tools, soft used and the system design not narrowing to the table structures.
Then everyone could contribute his experience to it or see a problem at design time.
I know how to design the system to make handling significant load. It has a good chance
to work fast and to be scalable.
With the design approved by others, programming is easy.
It's not going to be very complex.
I estimate the whole system as 10 000 - 15 000 lines max in different languages. The most difficult part would
be to make it scalable and fast as we don't know how many ebuilds are done world wide per second and we
have to be prepared to hot-plug hardware at any time not redesigning the system. And the system shouldn't get
overloaded/loose functionality.
Package blocks that portage does not resolve automatically
Slot conflicts that portage does not resolve automatically
Compile failures
...What else?
So part of the Portage QoS system is that users will submit their failures and Portage QoS will serve as a knowledge base of known issues. To me, that is still a pretty bad User Experience. Can't we just get portage to handle these issues transparently, as per http://forums.gentoo.org/viewtopic-t-977936.html
If we ask users about questions they don't know answers to it will result in users loss. But it's totally
out of my expertise if the portage interaction is GOOD
Users are not doing anything usual than they do right now. The reports are sent transparently by
portage to the PorageQOS load balancer and the suggestions are received.
Just a brief question - does anyone know how many ebuilds are assembled world
wide each second?
I bet you more apks are installed per second ;)
-A
--
Best regards,
LTHR mailto:lanthruster@gmail.com
--
Best regards,
Igor mailto:lanthruster@gmail.com
[-- Attachment #2: Type: text/html, Size: 11794 bytes --]
next prev parent reply other threads:[~2014-01-09 12:44 UTC|newest]
Thread overview: 57+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-01-09 7:24 [gentoo-dev] Portage QOS LTHR
2014-01-09 8:12 ` Alec Warner
2014-01-09 12:44 ` Igor [this message]
2014-01-09 14:12 ` Christopher Schwan
2014-01-09 15:26 ` Igor
2014-01-09 15:55 ` Jeroen Roovers
2014-01-09 16:37 ` Igor
2014-01-10 0:27 ` heroxbd
2014-01-10 12:41 ` Igor
2014-01-10 13:51 ` Rich Freeman
2014-01-10 0:16 ` heroxbd
2014-01-10 0:31 ` Patrick Lauer
2014-01-10 1:19 ` Tom Wijsman
2014-01-10 1:52 ` Patrick McLean
2014-01-10 2:40 ` Tom Wijsman
2014-01-10 6:17 ` Brian Dolbec
2014-01-10 18:14 ` Ciaran McCreesh
2014-01-10 7:54 ` heroxbd
2014-01-10 18:11 ` Ciaran McCreesh
2014-01-11 3:57 ` Patrick Lauer
2014-01-10 1:02 ` Tom Wijsman
2014-01-10 9:10 ` heroxbd
2014-01-10 14:54 ` Tom Wijsman
2014-01-10 12:23 ` Igor
2014-01-10 12:30 ` René Neumann
2014-01-10 12:30 ` Igor
2014-01-10 12:39 ` Patrick Lauer
2014-01-10 13:05 ` Igor
2014-01-10 13:18 ` René Neumann
2014-01-10 18:19 ` Ciaran McCreesh
2014-01-10 19:06 ` René Neumann
2014-01-10 14:05 ` heroxbd
2014-01-12 10:47 ` [gentoo-dev] " Steven J. Long
2014-01-10 13:10 ` [gentoo-dev] " Igor
2014-01-10 14:02 ` Rich Freeman
2014-01-10 15:16 ` Tom Wijsman
2014-01-10 18:12 ` Ciaran McCreesh
2014-01-09 15:49 ` Ben Kohler
2014-01-09 16:11 ` Igor
2014-01-09 17:59 ` [gentoo-dev] " Duncan
2014-01-09 20:42 ` Igor
2014-01-09 21:08 ` Chris Reffett
2014-01-10 12:10 ` Igor
2014-01-10 12:26 ` René Neumann
2014-01-10 12:52 ` Igor
2014-01-10 12:57 ` René Neumann
2014-01-10 15:39 ` Tom Wijsman
2014-01-10 16:36 ` Mike Frysinger
2014-01-10 18:17 ` Greg KH
2014-01-10 19:38 ` Duncan
2014-01-10 22:36 ` heroxbd
2014-01-11 1:28 ` Duncan
2014-01-09 19:35 ` [gentoo-dev] " yac
2014-01-11 15:00 ` Naohiro Aota
2014-01-12 10:28 ` Igor
2014-01-12 19:31 ` Igor
2014-01-12 19:31 ` Igor
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=52ce9994.24f5980a.0660.342e@mx.google.com \
--to=lanthruster@gmail.com \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox