Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister
 
PerlMonks  

Re: Reconstructing List Order From Partial Subsets

by hv (Parson)
on Jul 27, 2006 at 09:23 UTC ( #563999=note: print w/replies, xml ) Need Help??


in reply to Reconstructing List Order From Partial Subsets

Interesting, I do a similar thing for database upgrades - I extract related changes for a particular upgrade from the individual table descriptions, but they may express additional constraints with a "do this after that one", or "do this before that one". It looks like this:

[version 92 replace: itemtype enum('publication') not null default 'publication' with: flavour int(11) not null using (do before publication): # database upgrade code for this change # which relies on the old version of the 'publication' table ... ]

I resolve the ordering using an approach similar to japhy's solution above, but at each pass I look for both things that can happen first and things that can happen last; when all constraints are satisfied, anything else can go in the middle. (If constraints remain, and a pass through the data finds neither a new 'first' nor a new 'last', there is a dependency loop.)

Hugo

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://563999]
help
Chatterbox?
[Corion]: marto: Live video or are they recording and storing inspection videos? If it's for archival, who is rewatching that stuff? ;)
[Discipulus]: imperial infiltration
[marto]: Corion none of it is live, all recordings, in the first instance they need to transfer video from dead/dying media (DVDR, VHS, Laserdisc and so on)
[marto]: Discipulus, yeah pretty much robots going around parts of the plant humans can't

How do I use this? | Other CB clients
Other Users?
Others cooling their heels in the Monastery: (8)
As of 2017-07-28 09:41 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    I came, I saw, I ...
























    Results (425 votes). Check out past polls.