2010-02-18 13:16:59 +00:00
|
|
|
create table if not exists ValidPaths (
|
2010-02-18 13:40:46 +00:00
|
|
|
id integer primary key autoincrement not null,
|
|
|
|
path text unique not null,
|
2010-02-18 13:16:59 +00:00
|
|
|
hash text not null,
|
2010-02-18 13:48:18 +00:00
|
|
|
registrationTime integer not null,
|
|
|
|
deriver text
|
2010-02-18 13:16:59 +00:00
|
|
|
);
|
|
|
|
|
|
|
|
create table if not exists Refs (
|
2010-02-18 13:40:46 +00:00
|
|
|
referrer integer not null,
|
|
|
|
reference integer not null,
|
2010-02-18 13:16:59 +00:00
|
|
|
primary key (referrer, reference),
|
2010-02-18 13:40:46 +00:00
|
|
|
foreign key (referrer) references ValidPaths(id) on delete cascade,
|
|
|
|
foreign key (reference) references ValidPaths(id) on delete restrict
|
2010-02-18 13:16:59 +00:00
|
|
|
);
|
|
|
|
|
2010-02-18 13:40:46 +00:00
|
|
|
create index if not exists IndexReferrer on Refs(referrer);
|
|
|
|
create index if not exists IndexReference on Refs(reference);
|
|
|
|
|
2010-02-22 11:15:50 +00:00
|
|
|
create table if not exists DerivationOutputs (
|
|
|
|
drv integer not null,
|
|
|
|
id text not null, -- symbolic output id, usually "out"
|
|
|
|
path text not null,
|
|
|
|
primary key (drv, id),
|
|
|
|
foreign key (drv) references ValidPaths(id) on delete cascade
|
|
|
|
);
|
|
|
|
|
|
|
|
create index if not exists IndexDerivationOutputs on DerivationOutputs(path);
|
|
|
|
|
2010-02-19 17:15:22 +00:00
|
|
|
create table if not exists FailedPaths (
|
2010-02-18 13:16:59 +00:00
|
|
|
path text primary key not null,
|
|
|
|
time integer not null
|
|
|
|
);
|