X-Git-Url: https://pd.if.org/git/?a=blobdiff_plain;f=db.sql;h=0a02470bf807c61cd4c42d959d4d6a549b1fa02f;hb=2e468963f264e40379425a83048000965320a78e;hp=020f228d658dcb0f464e92afef8e2de0ab04e910;hpb=383712eefa950c5dc619f8cd5fb60be8e8041502;p=zpackage diff --git a/db.sql b/db.sql index 020f228..0a02470 100644 --- a/db.sql +++ b/db.sql @@ -163,7 +163,7 @@ create index packagefile_hash_index on packagefiles (hash); create view packagefiles_pkgid as select printf('%s-%s-%s', package, version, release) as pkgid, *, -printf('%s:%o:%s:%s', filetype, mode, username, groupname) as mds +printf('%s:%s:%s:%s', filetype, mode, username, groupname) as mds from packagefiles ; @@ -493,10 +493,9 @@ newfiles as ( modified as ( select distinct SS.path, - SS.username, - SS.uid, SS.groupname, SS.gid, SS.mode, - SS.filetype, SS.mtime, SS.hash,SS.configuration, SS.target, SS.device, - null as ohash + SS.username, SS.uid, SS.groupname, SS.gid, SS.mode, SS.filetype, + SS.mtime, SS.hash, SS.configuration, SS.target, SS.device, + OS.hash as ohash, SS.mds, OS.mds as omds from syncstatus SS join syncstatus OS on SS.path = OS.path and SS.pkgid is not OS.pkgid @@ -545,15 +544,20 @@ expired as ( and path not in (select path from preserve) and rstatus in ('removed','updated') ) -select 'update' as op, * from modified +select 'update' as op, * +,(select group_concat(pkgid, ' ') + from syncstatus SS + where SS.rstatus = 'installing' and SS.path = M.path +) as pkglist +from modified M union -select 'remove' as op, * from remove +select 'remove' as op, *, null, null, null from remove union -select 'obsolete' as op, * from expired +select 'obsolete' as op, *, null, null, null from expired union -select 'new' as op, * from newfiles +select 'new' as op, *, null, null, null from newfiles union -select 'preserve' as op, * from preserve +select 'preserve' as op, *, null, null, null from preserve ; commit;