From 662fb163936fbe55b67159496ab86c5b34ff6351 Mon Sep 17 00:00:00 2001 From: Aaron Griffin Date: Tue, 8 Apr 2008 13:07:18 -0400 Subject: Correct lockfile usage We want a lock per repo not per user. Signed-off-by: Aaron Griffin --- db-inc | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/db-inc b/db-inc index 7f5a66a..3f0e286 100644 --- a/db-inc +++ b/db-inc @@ -19,7 +19,7 @@ fi WORKDIR="~/.dbscripts" CHECKOUTDIR="$WORKDIR/checkout" -LOCKFILE="$WORKDIR/lock" +LOCKFILE="/tmp/.repolck.$arch.$repoid" DBFILE="$WORKDIR/$reponame.db.tar.gz" if [ ! `type -p fakeroot` ]; then @@ -46,7 +46,7 @@ getpkgname() { cleanup() { # unlock - rm -f "~/.dbscripts/lock" + rm -f "$LOCKFILE" [ "$1" ] && exit $1 } @@ -61,15 +61,16 @@ die() { } # check for locks -if [ -f ~/.dbscripts/lock ]; then - echo "error: db generation is already in progress" - exit 1 +if [ -f "$LOCKFILE" ]; then + owner=$(/bin/ls -l $LOCKFILE | /bin/awk '{print $3}') + echo "error: db generation is already in progress (started by $owner)" + exit 1 fi # catch ^C breaks trap ctrl_c SIGINT # lock -touch ~/.dbscripts/lock +touch "$LOCKFILE" if [ -d $CHECKOUTDIR ]; then cd $CHECKOUTDIR -- cgit v1.2.3-24-g4f1b