On Fri 2013-06-28 18:25:38 -0400, Daniel Kahn Gillmor wrote:

> sorry, i'm running out of time today, and need to head out.  I was
> unable to get a clean example of the problem to happen that would be
> fixed by this proposed change -- i got tripped up by some other problems
> that i haven't had the time to report.

ok, in trying to get this upgrade to work smoothly, i'm not convinced
that the upgrade path is clean anyway.

I set up a squeeze system, and did the following as root:

 apt-get install sks

then, as debian-sks, i did:

 cd /var/lib/sks/dump
 wget http://ftp.prato.linux.it/pub/keyring/dump-latest/sks-dump-000{0,1}.php
 /usr/lib/sks/sks_build.sh
 cat > /var/lib/sks/DB/DB_CONFIG <<EOF
set_mp_mmapsize         268435456
set_cachesize    0      134217728 1
set_flags               DB_LOG_AUTOREMOVE
set_lg_regionmax        1048576
set_lg_max              104857600
set_lg_bsize            2097152
set_lk_detect           DB_LOCK_DEFAULT
set_tmp_dir             /tmp
set_lock_timeout        1000
set_txn_timeout         1000
mutex_set_max           98304
EOF

I looked up a user ID i could experiment with:

 gpg --list-packets 2>/dev/null < /var/lib/sks/dump/sks-dump-0000.pgp | head | 
grep ^:user

I stored a reasonable fragment of this User ID the UID_FRAGMENT
environment variable.

and then as root again, i did:

 echo initstart=yes > /etc/defauilt/sks
 /etc/init.d/sks start

This set up a server which i could check by searching for the user i
found above:

wget -O- 
"http://localhost:11371/pks/lookup?op=vindex&fingerprint=on&search=$UID_FRAGMENT";

so far, so good.

but then the upgrade process fails, even with the new postinst script fixes:


root@squeeze:~# dpkg --install sks_1.1.3-2+deb7u1_amd64.deb 
(Reading database ... 36497 files and directories currently installed.)
Preparing to replace sks 1.1.1+dpkgv3-6+squeeze1 (using 
sks_1.1.3-2+deb7u1_amd64.deb) ...
Stopping sks daemons: sksrecon.. sksdb.. done.
Unpacking replacement sks ...
Setting up sks (1.1.3-2+deb7u1) ...
Installing new version of config file /etc/sks/sksconf ...
Installing new version of config file /etc/sks/mailsync ...
Installing new version of config file /etc/init.d/sks ...
Installing new version of config file /etc/cron.daily/sks ...
debian-sks uid check: ok
debian-sks homedir check: ok
db4.7_archive: DB_ENV->log_archive: DB_NOTFOUND: No matching key/data pair found
dpkg: error processing sks (--install):
 subprocess installed post-installation script returned error exit status 1
Processing triggers for man-db ...
Errors were encountered while processing:
 sks
root@squeeze:~# 

a bit of digging online suggests that this error message might happen
when one of the tables has no data in it (maybe a recon-related table,
since this demo installation isn't gossiping with anyone?), so this
might be another failed upgrade scenario that we need to take into
account.  argh.

sorry to not have sorted this out yet.

      --dkg

Attachment: pgptex9i8aEcl.pgp
Description: PGP signature

Reply via email to