Author: poeml Date: Fri Jul 31 02:43:10 2009 New Revision: 7738 URL: http://svn.mirrorbrain.org/viewvc/mirrorbrain?view=revision&revision=7738 Log: BUGS: this file is obsolete. Make it a pointer into the docs directory, where the information has been moved. TODO: one note was moved from BUGS here. Modified: trunk/BUGS trunk/TODO Modified: trunk/BUGS ============================================================================== --- trunk/BUGS Fri Jul 31 02:39:13 2009 (r7737) +++ trunk/BUGS Fri Jul 31 02:43:10 2009 (r7738) _at_@ -1,105 +1,6 @@ -more important bugs at the top! +This documentation was moved into the "docs" subdirectory. +View it online at http://mirrorbrain.org/docs/ +Source files: http://svn.mirrorbrain.org/svn/mirrorbrain/trunk/docs/ -* metalinks will likely use RFC3339 timestamps instead of RFC822 timestamps in - the future (IETF draft w.i.p.). No client makes use of the data yet. Cf. - http://groups.google.com/group/metalink-discussion/browse_thread/thread/44489ba99916aced - http://groups.google.com/group/metalink-discussion/msg/2b80424f41173cd3 - r->request_time, which is attached to the request object, - might be useful instead of apr_time_now(), because it's already filled out - and can save the syscall to time(). - - -* mod_asn lookup data is sometimes garbled (subprocess env table): - - 87.79.141.235 - - [16/Feb/2009:14:41:38 +0100] "GET /factory/repo/oss/suse/setup/descr/packages.gz HTTP/1.1" 200 2416300 "-" "ZYpp 5.25.0 (curl 7.19.0)" - r:- 145 2416594 -:- ASN:8422 P:87.78.0.0/15 size:- - - "-" - 87.79.141.235 - - [16/Feb/2009:14:41:38 +0100] "GET /factory/repo/oss/suse/setup/descr/patterns HTTP/1.1" 200 164 "-" "ZYpp 5.25.0 (curl 7.19.0)" - r:- 142 431 -:- ASN:{&\x80\x02 P: size:- - - "-" - 87.79.141.235 - - [16/Feb/2009:14:41:39 +0100] "GET /factory/repo/oss/license.tar.gz HTTP/1.1" 200 24492 "-" "ZYpp 5.25.0 (curl 7.19.0)" - r:- 131 24782 -:- ASN:8422 P:87.78.0.0/15 size:- - - "-" - - As a further data point, I have been seeing this: - 90.182.x.x - - [20/Jul/2009:12:16:19 +0200] "GET /distribution/10.3/repo/oss/content HTTP/1.1" 302 348 "-" "Novell ZYPP Installer" ftp.linux.cz r:country 170 901 EU:CZ ASN:z,ne,ng,re,rw,sc,sd,sh,sl,sn,so,st,td,tf,tg,tn,tz,ug,yt,za,zm,zw a2 ge,kz,ru P:90.180.0.0/14 size:44325 - - "-" - - This further points to a memory corruption, happening while or after - mod_mirrorbrain is running. It seems very hard to trigger though, I'd estimate - 20 requests out of 10.000.000. - - This command - # zcat /var/log/apache2/download.opensuse.org/2009/07/download.opensuse.org-20090720-access_log.gz| grep 'xaa' - yields some log lines for examination. - - Something might be corrupting data in the env table. It doesn't seem to - affect other env variables though, only the two that are set by mod_asn. - - All places where the subprocess env table is manipulated in mod_asn and - mod_mirrorbrain seem safe. - - A "soft" way of debugging would be to add a detailed debugging logging - coupled to a trigger which pulls when non-numeric data is seen in ASN or PFX. - When actually adding several such triggers at different stages of request - processing, it should be possible to pinpoint the corruption. In addition, - a core dump of the process could be saved to disk while running. - - The bug doesn't seem to have noticeable negative consequences except the - messed up logging of the two values. - - -* it was noticed that for 404s the lookup is correctly done (can be seen in - the response headers), but ASN:- P:- is being logged. - - Empty logging also happens for 200s, when e.g. requesting something from /icons, - so that fits the configuration: - 87.79.141.235 - - [16/Feb/2009:15:55:43 +0100] "GET /icons/torrent.png HTTP/1.1" 200 3445 "http://download.opensuse.org/distribution/11.1/iso/" "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_6; en-us) AppleWebKit/525.27.1 (KHTML, like Gecko) Shiira Safari/125" - r:- 405 3744 -:- ASN:- P:- size:- - - "-" - - - But what about redirections exceptions, like size? - 78.34.103.82 - - [16/Feb/2009:16:05:54 +0100] "GET /distribution/11.1/repo/oss/suse/setup/descr/patterns HTTP/1.1" 200 170 "-" "ZYpp 5.24.5 (curl 7.19.0)" - r:- 152 448 -:- ASN:8422 P:78.34.0.0/15 size:- - - "-" - - -* when the AS is overridden with a query parameter, the one being logged/put - into the headers is not the overriding one - - -* scanner: when scanning via rsync, it reports symlinks (which are mode 0777) - as world-writable directories: - - lrwxrwxrwx 1 root root 13 2009-03-01 05:29 /mounts/dist/unpacked/head-i586/usr/bin/pnmnoraw -> pnmtoplainpnm* - - rsync dir: 777 13 Sun Mar 1 05:29:31 2009 unpacked/head-i586/usr/bin/pnmnoraw - - That doesn't harm, because the symlinks are (intentionally) ignored anyway, - but it clutters the output and of course is confusing. - - -* check if the Vary header on Accept is added on all requests! - - -* mod_geoip should be required hard, as mod_form is - and Apache should check at - startup. On the other hand, it could be optional, because mod_mirrorbrain - also works without mod_geoip (distributing requests world-wide, according to - mirror priorities). So it could be a valid use case to run without mod_geoip. - On the other hand, at least a warning should be issued, so admins get a hint when - mod_geoip was simply forgotten. On the other hand, we could have a check that - prevents starting, unless geoip usage is explicitely disabled (e.g. - MirrorBrainRequireGeoIP off) - Update: explicitely disabling GeoIP would somehow conflict with the "no GeoIP" use case - (see http://mirrorbrain.org/docs/configuration/#using-mod-mirrorbrain-without-geoip) - - -* since "override countries" (overridden via query paramter) are not resolved into region, - a wrong region is given in generated mirror lists: - - http://download.opensuse.org/distribution/11.1/repo/oss/suse/noarch/rubygem-rails-2.1.1-1.14.noarch.rpm?mirrorlist&country=ZA - Found 2 mirrors which handle this country (ZA): <- ok - Found 61 mirrors in other countries, but same continent (EU): <- wrong - - -* mirrorlist give inaccurate readings for "number of mirrors", if some mirrors - where not considered, because they are configured country-only or region-only - (same_region=1 or same_country=1) - - As further effect of this bug, I just noticed that a mirror is missing from - the ?mirrorlist mirror lists if it is configured as fallback mirror for a - country: - http://download.opensuse.org/repositories/KDE:/KDE4:/STABLE:/Desktop/openSUSE_11.1/KDE4-DEVEL.ymp?mirrorlist&country=tw - ftp5 disappears from the list, when configured as fallback for Taiwan. It is - correctly used though and appears on th list when actually used as fallback. +poeml, July 2009 Modified: trunk/TODO ============================================================================== --- trunk/TODO Fri Jul 31 02:39:13 2009 (r7737) +++ trunk/TODO Fri Jul 31 02:43:10 2009 (r7738) _at_@ -36,6 +36,7 @@ Metalinks: make less cacheable? +* check if the Vary header on Accept is added on all requests! Further ideas: _______________________________________________ mirrorbrain-commits mailing list Archive: http://mirrorbrain.org/archive/mirrorbrain-commits/ Note: To remove yourself from this list, send a mail with the content unsubscribe to the address mirrorbrain-commits-request_at_mirrorbrain.orgReceived on Fri Jul 31 2009 - 00:43:11 GMT
This archive was generated by hypermail 2.3.0 : Mon Feb 20 2012 - 23:47:04 GMT