Hoi Stijn, first, best wishes for the new year!
On 05 Jan, 2013, at 05:18, Stijn De Weirdt wrote: > disclaimer: i was never a big fan of the auto-download/source_urls option in > EB for exact this reason, ie sometimes EB will appear to be failing, due to > external reasons (however, the augmented userfriendliness far outweighs this) A common case "for the impatient user" like me is, that you parallelize builds and you end up overwriting the downloads (eg. GCC-Cloog fighting with plain GCC). I have done it a few times already and it takes a bit to understand what the issue is. Whatever solution we may pick, it will likely address nicely this case, too. > > For instance, if you try to build DOLFIN from zero, you will quickly realize >> that that is doomed to fail, since source for MTL4/4.0.8878 is no longer >> avail. >> There are work-arounds that someone can do (eg. I now symlink the newer >> version, >> faking it to be older) but, these are all inferior to having a copy of the >> tarball. > please contribute the newer working .eb files so others don't run into this > same issue Done, along with its deps: easyconfigs/#76 >> Now, I understand that not everything will be possible but, I would really >> like we had a mirroring solution, at least for the open source software >> codes. > i'm not sure what you mean with "open source", but afaik it is mainly the > software license that defnies who can distribute what. Yeah, better clarify: normally OSS codes, as per OSI definition, allow infinite redistribution; I hereby liberally put under OSS label all such codes but further clarification may be needed. For now, let's focus on the codes which present no problem to build a combo repo from. (whatever that definition means) >> a) Have you heard of any other kind of "open source" registry project, >> perhaps something that we could ride on registering specific tarballs? > most p2p tools offer something along these lines. (but i'm still waiting for > a fuse interface ;) FUSE and any filesystem will likely give you one more interface with potential new failure modes; but, we can shop from the idea and export the data via AFS, your p2p-FUSE code and so on ;-) ie. it could be yet another interface to export the bunch of files, and that's easily doable. >> b) What technology do you think should be deployed? What are your >> preferences? >> (http, ftp, git, rsync, zsync ... whatever you think should be offered) >> > most have master/slave models, so that might not be what you are looking for > (granted, you can write scripts to keep things in sync). > a better solution would be distributed filesystem with one (or more) replica > per site. > i'm aware of a project called REDDnet/L-store that aims for something similar. > i'm not sure if accessing data from a WAN shared filesystem counts as > distributing, so that might be a way out. Do people prefer to have an exact local complete copy or rather a "subset cache"? your stance? One aspect I like about zsync or git, is that hashes make the copy mechanism irrelevant (if there is an issue, you are going to catch it). With that property on, anything goes! ie. why limit ourselves? every HPC site could pick/introduce the technology it prefers. But I agree there are important design criteria to fulfill and the picture is not 100% clear. We will likely start with something and fix as we go. >> c) Is your preference to integrate this to easybuild or, perhaps, keep it >> orthogonal? >> (eg. someone could bootstrap .local/easybuild/source with zsync & then >> let it go) > i would keep it out of EB. integration should be provided, but it is a data > management issue, EB has enough problems to deal with as is. (but i'll be > more then happy to test/contribute ;) Good. Orthogonality has the advantage of being future-proof. >> ps3. >> Ubuntu's "LTS" lineage is a good example of a commendable vendor retention >> policy. >> Somehow, not everybody around understands the universal need for LTS style >> solutions... > what do you mean? LTS is only 5 years, hardly the lifetime of any of long > running experiment ;) IMHO, long running experiments have eventually to face the fate of their obsolete hardware :-( Here is a description of good design aspects of LTS: https://wiki.ubuntu.com/LTS (I am not promoting LTS, RHEL has even longer life cycle; I just don't have its commitments). Anyway, the point above is that typically software providers are not as serious as OS vendors for backward compatibility, at the expense of user time. eg. Intel, with a 3-year window, may pull the plug of past compilers/MPI stack etc. If you know some contradicting story, let it be known... thanks, Fotis

