Mailing-List: contact cygwin-apps-help AT cygwin DOT com; run by ezmlm Sender: cygwin-apps-owner AT cygwin DOT com List-Subscribe: List-Archive: List-Post: List-Help: , Delivered-To: mailing list cygwin-apps AT cygwin DOT com Message-ID: <07f101c17cb9$06992ba0$0200a8c0@lifelesswks> From: "Robert Collins" To: "Gary R. Van Sickle" , References: Subject: Re: multiple mirror code && setup HEAD Date: Tue, 4 Dec 2001 22:44:25 +1100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 X-OriginalArrivalTime: 04 Dec 2001 11:44:23.0271 (UTC) FILETIME=[04B2DF70:01C17CB9] ----- Original Message ----- From: "Gary R. Van Sickle" > Coolness. One dime-a-dozen-notion that I've been having is an automatic site > selection ability that would ping 'em all and let God sort 'em out, or rather > qsort, and then fail over in order of increasing ping. qsort is history :}. The list.h template uses an insertion sort. I've already though about this: What you should do is have all the sites pinged when parsing mirrors.lst, and then store the resulting list and times for future reference on disk. Then in the site_list_type_constructor add a ping parameter, and pass it the ping. It should prepend the stringified ping to the sort key, giving the user a list of fastest->slowest sites, and meaning that all the linear code will automagically hit the fastest site first. Rob