Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 28 Jul 2010 17:11:25 +0200
From:      "Julian H. Stacey" <jhs@berklix.com>
To:        Marcin Wisnicki <mwisnicki+freebsd@gmail.com>
Cc:        freebsd-ports@freebsd.org
Subject:   Re: Strange contents on some ftp mirrors 
Message-ID:  <201007281511.o6SFBPw7040652@fire.js.berklix.net>
In-Reply-To: Your message "Wed, 28 Jul 2010 13:48:27 -0000." <i2pcfb$dri$3@dough.gmane.org> 

next in thread | previous in thread | raw e-mail | index | archive | help
Marcin Wisnicki wrote:
> On Wed, 28 Jul 2010 15:43:43 +0200, Julian H. Stacey wrote:
> 
> >> Mirroring must be atomic (mirror to temporary directory then rename).
> > 
> > That could double disc requirement, & reduce mirror sites willing to
> > provide space ?
> 
> Indeed it would. But there is no other way to solve it.
> 
> Alternatively it could be prevented with no disk cost by putting
> "MIRROR-IN-PROGRESS" file and making all package utilities check for its
> existence and fail with explanation to try again later.

Perhaps a less visible &/or top listing semaphore of ./.MIRROR-IN-PROGRESS ?
Content could be empty, or mirror master could generate into it, eg:
	Version:	Number of format of .MIRROR-IN-PROGRESS\n
	Master-URL:	Of master\n
	Protocol:	Of mirror\n
	Date: 		(GMT) start of mirror\n
	Contact:	If mirror fails\n
	Text:		Any other text.\n
	EOR:		End of record\n

Various FreeBSD etc stuff gets mirrored as nested directories, so
one might want to to be able to check up to N steps up the parent
tree structure for lock(s).

One might also want an optional force- fetch- regardless flag.

Awkward conditions to allow for:
  What if mirror is not mirroring when you start your fetch, 
  but is when you finish ?
  What if mirror is not mirroring when you start your fetch,
  then mirror starts & finishes a mirror before you finish your fetch ?

One might want to generalise a mechanism that could be added to
multiple tools, eg  ports/net/ mirror/ rdist6/ rsync/ ?...

http://wiki.freebsd.org/FreeBSDMirrors   by EdwinGroothuis (edwin@) 
mentions orphan/ stale mirrors.  Perhaps some are even cascaded mirrors ?

I don't see anything in:
	http://www.freebsd.org/projects/ideas/ideas.html
	"The FreeBSD list of projects and ideas for volunteers"
Maybe someone might add something ?

See also:
	mirror-admin@freebsd.org
	http://wiki.freebsd.org/IvanVoras/pkg_patchhttp://wiki.freebsd.org/IvanVoras/pkg_patch

Cheers,
Julian
-- 
Julian Stacey: BSD Unix Linux C Sys Eng Consultants Munich http://berklix.com
	Mail plain text.  Not HTML, Not quoted-printable, Not Base64.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201007281511.o6SFBPw7040652>