Re: [mirrorbrain] Mirrorbrain handing of modified files.

From: Dr. Peter Pöml <peter_at_poeml.de>
Date: Wed, 8 Aug 2012 00:13:44 +0200
Am 07.08.2012 um 20:00 schrieb peter green <plugwash_at_p10link.net>:

> Dr. Peter Pöml wrote:
>> Looking around in the tree, I see several files named "Packages" or "Release", thus with no versioning indication in their name, and on the other hand, package files with version info (including build or release numbering). The latter files are easy to handle for MirrorBrain, because a file is assumed to never change - if a package is rebuilt, the release counter is incremented. The "version-less" files however are more difficult to handle. MirrorBrain doesn't store modification times or file size for what it finds on mirrors. (It would have been possible to implement it that way, but it was decided against for performance reasons [which might not affect some users in fact...].)   
> So what does it store? just the filenames/paths?
> 
> And how does it match files on the mirrors against files locally? does it just use their names or does it use some other components of their paths too?
> 
> Thanks for providing information so I know where it is and isn't safe to use mirrorbrain.

MirrorBrain stores the full path and uses that for redirection, anchored to the top-level directory of your file tree. For instance, your file tree could be locally at 

  /var/web/download/raspbian/

and you have configured the webserver to serve this at 

  http://downloads.raspberrypi.org/raspbian/

Mirrors will have their own local top-level dir (which doesn't matter) and serve all your files in some certain URL space like this:

  http://raspbian.coolspace.com/
  http://ftp.bigsite.org/mirrors/raspbian/

Assume a file in a subdirectory, locally:

  /var/web/download/raspbian/subdir/file1

MirrorBrain will look in the database for mirrors that have "subdir/file1". That would apply to the two mirrors in the above example if they deliver file1 via

  http://raspbian.coolspace.com/subdir/file1
  http://ftp.bigsite.org/mirrors/raspbian/subdir/file1

You don't have to worry about confusion with /anothersubdir/file1, because only the full (relative) path is used, not some part or trailing filename.

Thus, you can have as many "Packages" files as you like ;)

BTW, you can query MirrorBrain for mirrors of a certain file with this command:

mb file ls subdir/file1

In fact, you could think of an implied slash in from of the path ("/subdir/file1"). To query for just a part of a path, a wildcard needs to be used (like "*/subdir/file1").

Peter


_______________________________________________
mirrorbrain mailing list
Archive: http://mirrorbrain.org/archive/mirrorbrain/

Note: To remove yourself from this mailing list, send a mail with the content
 	unsubscribe
to the address mirrorbrain-request_at_mirrorbrain.org
Received on Tue Aug 07 2012 - 22:13:59 GMT

This archive was generated by hypermail 2.3.0 : Tue Aug 07 2012 - 22:47:06 GMT