So this is really weird. I get an infinite select loop as shown below when I run this script right after rebuiling the rpm database: ================================================================ #!/bin/sh vv=-vv debug=--debug cli_prefix= cli_rpm_version='lms-cli-2.8' cli_rpm_file=`ls -1 'RPMS/i386/'"$cli_rpm_version"*'.i386.rpm' | tail -1` cli_rpm_buildnum=`echo "$cli_rpm_file" | sed 's,^RPMS/i386/\(.*\).i386.rpm$,\1,'` # echo Installing "$cli_rpm_version" ... if rpm -q lms-cli 2>/dev/null | grep -q '^lms-cli'; then strace -o strace rpm -i $vv\ $cli_prefix --oldpackage "$cli_rpm_file"\ || exit 3 fi =================================================================== If I do not execute the rpm -q in the "if", then it succeeds, but subsequent rpm operations will hang. Here is the strace - anything look familiar? -- cg gettimeofday({1083345356, 290024}, NULL) = 0 close(7) = 0 munmap(0x40360000, 4096) = 0 gettimeofday({1083345356, 290132}, NULL) = 0 write(2, "GZDIO:", 6) = 6 write(2, " 750 reads, 6136224 total b"..., 51) = 51 munmap(0x40361000, 8192) = 0 gettimeofday({1083345356, 290307}, NULL) = 0 gettimeofday({1083345356, 290342}, NULL) = 0 time(NULL) = 1083345356 rt_sigprocmask(SIG_BLOCK, ~[], [RTMIN], 8) = 0 rt_sigprocmask(SIG_BLOCK, ~[HUP INT QUIT TERM], NULL, 8) = 0 select(0, NULL, NULL, NULL, {0, 1000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 2000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 4000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 8000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 16000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 32000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 64000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 128000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 256000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 512000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {1, 0}) = 0 (Timeout) select(0, NULL, NULL, NULL, {1, 0}) = 0 (Timeout) _______________________________________________ Rpm-list mailing list Rpm-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/rpm-list