Difference between revisions of "Infrastructure Problems"

From Apache OpenOffice Wiki
Jump to: navigation, search
(Cleanup; wiki is active)
(17 intermediate revisions by 7 users not shown)
Line 1: Line 1:
== SourceCast ==
+
== OOo's SourceCast Instance ==
  
Comment, LSP: What is the point of this diatribe?  Michael: if you have legitimate complaints with the infrastructure, then I urge you to bring them directly to CollabNet. But I also urge you to do some due diligence and determine what is OOo and what is SourceCast. Keep in mind, too, that when we (Sun/CollabNet) designed the ancient version of SourceCast for OOo, many one-offs were committed; these have been perpetuated as SourceCast has evolved (it's now called, btw, CollabNet Enterprise Edition and is at 4.0; we use 2.6). Furthermore, the basic architecture of SourceCast was altered to conform to OOo's requisites.  This change affected performance and some elements of usability.  For insight into other versions of SourceCast that are more or less at the same version, see, for instance, java.net, jini.org, jxta.org, or sungrid.org.  I'll respond to some of your more obvious complaints but I have better things to do. Don't you?
+
The OOo instance of SourceCast is based on an extremely old version (2.6), the equivalent up-to-date product is 'CollabNet Enterprise Edition'. It is believed that many problems of the current infrastructure are fixed in the latest versions of this (ver 4.0). The use of 'SourceCast' hereinafter referrs to the (patched & older) OOo version of this infrastructure.
  
SourceCast provided services are typically extremely unresponsive - it typically taking longer to log-into
+
SourceCast provided services are typically extremely unresponsive - it typically taking longer to log-into SourceCast than search the entire-web at google.com with some complex search. High latencies are also sporadic - there are unpredictable periods of low & high latency.
SourceCast than search the entire-web at google.com with some complex search. High latencies are also
+
sporadic - there are unpredictable periods of low & high latency.
+
 
+
ED
+
  
 
=== Scaling issues ===
 
=== Scaling issues ===
Line 15: Line 11:
 
=== Constant re-login ===
 
=== Constant re-login ===
  
For unknown reasons SourceCast login infrastructure requires that you re-log-in very frequently. It's hard to quantify quite how frequently, but normally for every new bug filed it is necessary to go to the IssueZilla page, log-in, hit back, hit refresh - adding (if you're lucky) 15seconds or so to any bug filing - prolly more. This latency is not present with other bugzilla derived products.
+
For unknown reasons SourceCast login infrastructure [http://qa.openoffice.org/issues/show_bug.cgi?id=34822 requires] that you re-log-in when closing and restarting your browser. It's hard to quantify quite how frequently, but normally for every new bug filed it is necessary to go to the IssueZilla page, log-in, hit back, hit refresh - adding (if you're lucky) 15seconds or so to any bug filing - prolly more. This latency is not present with other bugzilla derived products. Of course, developers Issue access patterns are typically not those of the casual tester, or heavy SourceCast user - they spend an hour or more fixing a bug, then return to mark the bug fixed (sometimes from one of their other desktop machines) - at which point; re-login is forced on them. A persistant, long-lived client-side authentication cookie would remove this problem entirely.
  
Comment from Louis Suarez-Potts: I actually have not encountered this behaviour. I do not access OOo from CollabNet but from home, so doubt if my charmed life has to do with my particular location.
+
Some people report not being able to reproduce this frequent re-login issue; it is possible the bug relates closely to the end users' network topology, such as NAT gateways etc. Or - as a serious discussion without exaggeration seems to reveal - it's just that a session cookie is used and not a persistent one.
  
 
=== CVS ===
 
=== CVS ===
  
CVS is <b>extremely</b> slow. This problem is compounded by the OO.o source code being extremely large it is true.  
+
CVS is <b>extremely slow </b> ({{Bug|24771}}). This problem is compounded by the OO.o source code being extremely large it is true.  
 
However an order of magnitude slow-down is due to a simple source-cast design bug of having the CVS .rcs files on a different disk to that of the CVS daemon itself - adding untold latency to each NFS file operation.
 
However an order of magnitude slow-down is due to a simple source-cast design bug of having the CVS .rcs files on a different disk to that of the CVS daemon itself - adding untold latency to each NFS file operation.
  
Access control - the CVS repository was by default constructed in such a way as to deny even those granted access commit writes to large chunks of it. This was coupled to the formal role request/granting process. Similarly the CVS structure itself (split into separate top-level modules per-project) is confusing (not matching the source directory layout),  also making it not possible to have a 'familiar' structure, configure / autogen.sh / README / BUILDING etc. in the top-level directory. [ at least without breaking other CVS operations ]
+
Access control - the CVS repository was by default constructed in such a way as to deny even those granted access commit writes to large chunks of it. This was coupled to the formal role request/granting process. Similarly the CVS structure itself (split into separate top-level modules per-project) is confusing (not matching the source directory layout),  also making it not possible to have a 'familiar' structure, configure / autogen.sh / README / BUILDING etc. in the top-level directory. [ at least without breaking other CVS operations ]. This artefact also makes the real CVS structure (as seen in LXR etc.) hard to navigate &amp; confusingly different.
 +
 
 +
CVS also has rather a [http://qa.openoffice.org/issues/show_bug.cgi?id=23306 habit] of loosing cvs tags cf. the [[CvsFAQ]]
  
 
== Searching ==
 
== Searching ==
  
There is no ability to search openoffice.org without logging in, there's no good reason for that. More seriously googling doesn't show any results from within the mailing lists! Making them nigh on useless as a resource. Whatever needs to be done to get them googlable should be a priority.
+
There is no ability to search openoffice.org without logging in, there's no good reason for that. More seriously googling doesn't show any results from within the mailing lists! Making them nigh on useless as a resource.  
 +
 
 +
{{Bug|58310}} has been raised to address this issue. The Googlebot web crawler is well behaved, and respects the overly restrictive 'robots.txt' files scattered around the OpenOffice.org website, such as this one: http://tools.openoffice.org/source/browse/tools/www/robots.txt.
 +
<br>
 +
The consequences of a [http://qa.openoffice.org/robots.txt reduced robots.txt] file for [[Infrastructure_Problems#Scaling_issues|scaling issues]] are checked for the qa project starting 2005-11-21.  
  
 
Hint: as a workaround, for fast and easy mailing list searches and a threaded archive go to mail-archive.com, e.g. http://www.mail-archive.com/dev@openoffice.org/, combined with Google this leads to something like ''site:mail-archive.com/dev@openoffice.org YourSearchTerm'', which works in many cases. Of course there are also others like Gmane and such.
 
Hint: as a workaround, for fast and easy mailing list searches and a threaded archive go to mail-archive.com, e.g. http://www.mail-archive.com/dev@openoffice.org/, combined with Google this leads to something like ''site:mail-archive.com/dev@openoffice.org YourSearchTerm'', which works in many cases. Of course there are also others like Gmane and such.
Line 34: Line 36:
 
== Projects &amp; roles ==
 
== Projects &amp; roles ==
  
There is an extremely formal project / role structure built on SourceCast's features in this area. Unfortunately extremely formalised structures, with roles 'project leads' etc. is inimical to the rapid transition of this large code base towards more external contribution, influence, interest etc.
+
There is an extremely formal project / role structure built on SourceCast's features in this area, with various roles being requested, and granted via E-mail round-trips. Thankfully this doesn't impact CVS access these days - with broadly unconstrained CVS accounts being the norm.
 
+
Comment, LSP:  You are confusing political with site structure.  The site structure does not determine the politics of OOo; that was done when the project was incepted, years ago. It can be changed, but and in some projects, it has been. If you wish to change the overall political structure, then bring it before the Community Council, not in a diatribe like this, which is erroneous and misplaced.
+
 
+
Thankfully much of the discouraging E-mail round-trip latency necessary for granting a role, is unnecessary for CVS access these days - with broadly unconstrained accounts being the norm.
+
  
 
== IssueZilla ==
 
== IssueZilla ==
  
This is rather old and nasty compared with the excellent modern Bugzilla releases, that shows in lots of places - file typing, uploads, comment management, well - tens of usability &amp; cleanup features missing.
+
This is rather old and nasty compared with the excellent modern Bugzilla releases, that shows in lots of places - file typing, uploads, comment management, well - tens of usability &amp; cleanup features missing. {{Bug|34665}} contains a good sample of such problems.
  
 
== Mailing lists ==
 
== Mailing lists ==
  
It is critical in any new Free software project to attract developers. One way to drive away newbies is to have an unstated rule that anyone who wants to get a reply from a mailing list post needs to add "please CC me I'm not subscribed - and retain this message so the rest of the thread reaches me" in a prominent place in their E-mail. Thus (I imagine) people regularly ask a question on a list, and <i>recieve</i> no reply, even if one is written.
+
It is critical in any new Free software project to attract developers. One way to drive away newbies is to have an unstated rule that anyone who wants to get a reply from a mailing list post needs to add "please CC me I'm not subscribed - and retain this message so the rest of the thread reaches me" in a prominent place in their E-mail. Thus (I imagine) people regularly ask a question on a list, and <i>receive</i> no reply, even if one is written.
  
 
Futhermore address munging is a hugely bad idea for busy mailing lists - it is not possible to read all (busy) mailing lists on topics that people are interested in in linear time; hence keeping a thread CC'd to one is important, it allows a quick response - while keeping the mailing list informed. This is not possible with collab-net's Reply-To: mangling - hence discouraging busy people from using or CC'ing the mailing lists.
 
Futhermore address munging is a hugely bad idea for busy mailing lists - it is not possible to read all (busy) mailing lists on topics that people are interested in in linear time; hence keeping a thread CC'd to one is important, it allows a quick response - while keeping the mailing list informed. This is not possible with collab-net's Reply-To: mangling - hence discouraging busy people from using or CC'ing the mailing lists.
Line 54: Line 52:
 
It may be that one reason behind this mangling is to discourage people from replying off-list to people, - that unfortunately stifles community by not building strong inter-personal relationships, (although clearly off-list replies tend to be short, punchy, amusing, and not the norm). Another reason may be that there exist people out there who don't know how to use their mailer's reply-to-all feature.
 
It may be that one reason behind this mangling is to discourage people from replying off-list to people, - that unfortunately stifles community by not building strong inter-personal relationships, (although clearly off-list replies tend to be short, punchy, amusing, and not the norm). Another reason may be that there exist people out there who don't know how to use their mailer's reply-to-all feature.
  
It is believed that underneath SourceCast uses [http://cr.yp.to/ezmlm.html].
+
It is believed that underneath SourceCast uses [http://cr.yp.to/ezmlm.html ezmlm] to handle mail.
  
 
== Missing services ==
 
== Missing services ==
Line 67: Line 65:
  
 
It's not clear why it is not possible eg. to re-direct .openoffice.org domain names to existing solutions here as elsewhere.
 
It's not clear why it is not possible eg. to re-direct .openoffice.org domain names to existing solutions here as elsewhere.
 +
 +
== Additional Links ==
 +
[[SVNMigration|Migration to SVN]]
 +
 +
[[Infrastructure_Requirements]]
 +
 +
[[Infrastructure_Overview]]
 +
 +
[[Category:Website]]
 +
[[Category:Build_System]]

Revision as of 03:03, 29 December 2008

OOo's SourceCast Instance

The OOo instance of SourceCast is based on an extremely old version (2.6), the equivalent up-to-date product is 'CollabNet Enterprise Edition'. It is believed that many problems of the current infrastructure are fixed in the latest versions of this (ver 4.0). The use of 'SourceCast' hereinafter referrs to the (patched & older) OOo version of this infrastructure.

SourceCast provided services are typically extremely unresponsive - it typically taking longer to log-into SourceCast than search the entire-web at google.com with some complex search. High latencies are also sporadic - there are unpredictable periods of low & high latency.

Scaling issues

Under heavy load - such as close to a release - it is common for SourceCast to become almost totally unresponsive & unusable, sometimes for days.

Constant re-login

For unknown reasons SourceCast login infrastructure requires that you re-log-in when closing and restarting your browser. It's hard to quantify quite how frequently, but normally for every new bug filed it is necessary to go to the IssueZilla page, log-in, hit back, hit refresh - adding (if you're lucky) 15seconds or so to any bug filing - prolly more. This latency is not present with other bugzilla derived products. Of course, developers Issue access patterns are typically not those of the casual tester, or heavy SourceCast user - they spend an hour or more fixing a bug, then return to mark the bug fixed (sometimes from one of their other desktop machines) - at which point; re-login is forced on them. A persistant, long-lived client-side authentication cookie would remove this problem entirely.

Some people report not being able to reproduce this frequent re-login issue; it is possible the bug relates closely to the end users' network topology, such as NAT gateways etc. Or - as a serious discussion without exaggeration seems to reveal - it's just that a session cookie is used and not a persistent one.

CVS

CVS is extremely slow (Issue 24771 ). This problem is compounded by the OO.o source code being extremely large it is true. However an order of magnitude slow-down is due to a simple source-cast design bug of having the CVS .rcs files on a different disk to that of the CVS daemon itself - adding untold latency to each NFS file operation.

Access control - the CVS repository was by default constructed in such a way as to deny even those granted access commit writes to large chunks of it. This was coupled to the formal role request/granting process. Similarly the CVS structure itself (split into separate top-level modules per-project) is confusing (not matching the source directory layout), also making it not possible to have a 'familiar' structure, configure / autogen.sh / README / BUILDING etc. in the top-level directory. [ at least without breaking other CVS operations ]. This artefact also makes the real CVS structure (as seen in LXR etc.) hard to navigate & confusingly different.

CVS also has rather a habit of loosing cvs tags cf. the CvsFAQ

Searching

There is no ability to search openoffice.org without logging in, there's no good reason for that. More seriously googling doesn't show any results from within the mailing lists! Making them nigh on useless as a resource.

Issue 58310 has been raised to address this issue. The Googlebot web crawler is well behaved, and respects the overly restrictive 'robots.txt' files scattered around the OpenOffice.org website, such as this one: http://tools.openoffice.org/source/browse/tools/www/robots.txt.
The consequences of a reduced robots.txt file for scaling issues are checked for the qa project starting 2005-11-21.

Hint: as a workaround, for fast and easy mailing list searches and a threaded archive go to mail-archive.com, e.g. http://www.mail-archive.com/dev@openoffice.org/, combined with Google this leads to something like site:mail-archive.com/dev@openoffice.org YourSearchTerm, which works in many cases. Of course there are also others like Gmane and such.

Projects & roles

There is an extremely formal project / role structure built on SourceCast's features in this area, with various roles being requested, and granted via E-mail round-trips. Thankfully this doesn't impact CVS access these days - with broadly unconstrained CVS accounts being the norm.

IssueZilla

This is rather old and nasty compared with the excellent modern Bugzilla releases, that shows in lots of places - file typing, uploads, comment management, well - tens of usability & cleanup features missing. Issue 34665 contains a good sample of such problems.

Mailing lists

It is critical in any new Free software project to attract developers. One way to drive away newbies is to have an unstated rule that anyone who wants to get a reply from a mailing list post needs to add "please CC me I'm not subscribed - and retain this message so the rest of the thread reaches me" in a prominent place in their E-mail. Thus (I imagine) people regularly ask a question on a list, and receive no reply, even if one is written.

Futhermore address munging is a hugely bad idea for busy mailing lists - it is not possible to read all (busy) mailing lists on topics that people are interested in in linear time; hence keeping a thread CC'd to one is important, it allows a quick response - while keeping the mailing list informed. This is not possible with collab-net's Reply-To: mangling - hence discouraging busy people from using or CC'ing the mailing lists.

Also Reply-To: mangling is just a bad idea, cf. Linux Kernel, GNOME et. al's non-invasive, non-munging policies that encourage contributors & build collaboration.

It may be that one reason behind this mangling is to discourage people from replying off-list to people, - that unfortunately stifles community by not building strong inter-personal relationships, (although clearly off-list replies tend to be short, punchy, amusing, and not the norm). Another reason may be that there exist people out there who don't know how to use their mailer's reply-to-all feature.

It is believed that underneath SourceCast uses ezmlm to handle mail.

Missing services

LXR / Bonsai / Tinderbox

With 8 million lines of code no-one outside Sun is familiar with, is is essential to have some hard-code code search, change tracking, indexing functionality. Unfortunately SourceCast does not provide this, that makes it way more difficult to collaborate on developing the code.

A central well-maintained Tinderbox server, should be a pre-requisite for any large project with as many complex build issues as OO.o. One is provided at http://go-oo.org/tinderbox/ however.

RSS aggregator / 'planet'

It's not clear why it is not possible eg. to re-direct .openoffice.org domain names to existing solutions here as elsewhere.

Additional Links

Migration to SVN

Infrastructure_Requirements

Infrastructure_Overview

Personal tools