]> pd.if.org Git - zpackage/commitdiff
add sync columns for old metadata on update
authorNathan Wagner <nw@hydaspes.if.org>
Sat, 20 Oct 2018 02:49:15 +0000 (02:49 +0000)
committerNathan Wagner <nw@hydaspes.if.org>
Sat, 3 Nov 2018 12:39:52 +0000 (12:39 +0000)
db.sql

diff --git a/db.sql b/db.sql
index 020f228d658dcb0f464e92afef8e2de0ab04e910..0a02470bf807c61cd4c42d959d4d6a549b1fa02f 100644 (file)
--- 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;