]> git.donarmstrong.com Git - wannabuild.git/blobdiff - bin/wanna-build
wanna-build: lock_table: limit row lock to same distribution
[wannabuild.git] / bin / wanna-build
index 560a3d98307b1d421e2df33e016de2da9f6a9294..288d3f7722139f93fce1802f0e7c4ce69a74bcbf 100755 (executable)
@@ -275,7 +275,7 @@ if (!isin ( $op_mode, qw(list) ) && ( ($distribution//"") =~ /[ ,]/)) {
 if ($verbose) {
        my $version = '$Revision: db181a534e9d $ $Date: 2008/03/26 06:20:22 $ $Author: rmurray $';
        $version =~ s/(^\$| \$ .*$)//g;
-       print "wanna-build $version for $distribution on $arch\n";
+       print "wanna-build $version for ".($distribution//"sid")." on $arch\n";
 }
 
 if (!@ARGV && !isin( $op_mode, qw(list merge-quinn merge-partial-quinn import export
@@ -2082,8 +2082,8 @@ sub add_user_info {
 
 sub lock_table {
         return if $simulate;
-       $dbh->do('LOCK TABLE ' . table_name() .
-               ' IN EXCLUSIVE MODE', undef) or die $dbh->errstr;
+       $dbh->do('SELECT 1 FROM ' . table_name() .
+               ' WHERE distribution = ? FOR UPDATE', undef, $distribution) or die $dbh->errstr;
 }
 
 sub parse_argv {