[packages/rpm/rpm.org] - reset/cleanup rpmdb only if the current backend is bdb, sqlite backend uses different layout

baggins baggins at pld-linux.org
Sun Nov 1 10:45:16 CET 2020


commit c70db203c387e7faed390e5807e46c759b2eee4f
Author: Jan Rękorajski <baggins at pld-linux.org>
Date:   Sun Nov 1 10:44:09 2020 +0100

    - reset/cleanup rpmdb only if the current backend is bdb, sqlite backend uses different layout

 dbupgrade.sh | 39 +++++++++++++++++++++------------------
 1 file changed, 21 insertions(+), 18 deletions(-)
---
diff --git a/dbupgrade.sh b/dbupgrade.sh
index a000935..575aeb2 100755
--- a/dbupgrade.sh
+++ b/dbupgrade.sh
@@ -12,26 +12,29 @@ if [ "$1" = "-r" ]; then
 	fi
 fi
 
-if ! /usr/lib/rpm/rpmdb_reset -r lsn "$ROOTDIR"/var/lib/rpm/Packages ; then
-	echo
-	echo "rpm database conversion failed!"
-	echo
-	echo "You have to run:"
-	echo
-	echo "	/usr/lib/rpm/rpmdb_reset -r lsn /var/lib/rpm/Packages"
-	echo "	/bin/rm -f /var/lib/rpm/__db.00*"
-	echo "	/bin/rm -rf /var/lib/rpm/log"
-	echo "	/usr/bin/rpmdb --rebuilddb"
-	echo
-else
-	/bin/rm --interactive=never -f "$ROOTDIR"/var/lib/rpm/__db.00* >/dev/null 2>/dev/null || :
-	/bin/rm --interactive=never -rf "$ROOTDIR"/var/lib/rpm/log >/dev/null 2>/dev/null || :
-	/bin/rm --interactive=never -rf "$ROOTDIR"/var/lib/rpm/tmp >/dev/null 2>/dev/null || :
-
-	if ! /usr/bin/rpmdb --rebuilddb ${ROOTDIR:+--root="$ROOTDIR"}; then
+if [ -f "$ROOTDIR"/var/lib/rpm/Packages ]; then
+	if ! /usr/lib/rpm/rpmdb_reset -r lsn "$ROOTDIR"/var/lib/rpm/Packages ; then
 		echo
 		echo "rpm database conversion failed!"
-		echo "You have to run /usr/bin/rpmdb manually"
 		echo
+		echo "You have to run:"
+		echo
+		echo "	/usr/lib/rpm/rpmdb_reset -r lsn /var/lib/rpm/Packages"
+		echo "	/bin/rm -f /var/lib/rpm/__db.00*"
+		echo "	/bin/rm -rf /var/lib/rpm/log"
+		echo "	/usr/bin/rpmdb --rebuilddb"
+		echo
+		exit
 	fi
+
+	/bin/rm --interactive=never -f "$ROOTDIR"/var/lib/rpm/__db.00* >/dev/null 2>/dev/null || :
+	/bin/rm --interactive=never -rf "$ROOTDIR"/var/lib/rpm/log >/dev/null 2>/dev/null || :
+	/bin/rm --interactive=never -rf "$ROOTDIR"/var/lib/rpm/tmp >/dev/null 2>/dev/null || :
+fi
+
+if ! /usr/bin/rpmdb --rebuilddb ${ROOTDIR:+--root="$ROOTDIR"}; then
+	echo
+	echo "rpm database conversion failed!"
+	echo "You have to run /usr/bin/rpmdb manually"
+	echo
 fi
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/rpm.git/commitdiff/c70db203c387e7faed390e5807e46c759b2eee4f



More information about the pld-cvs-commit mailing list