#!/usr/bin/env python
-# Debian Archive Kit Database Update Script
+""" Database Update Script - Remove unused versioncmp """
# Copyright (C) 2008 Michael Casadevall <mcasadevall@debian.org>
# Copyright (C) 2009 Joerg Jaspert <joerg@debian.org>
################################################################################
-import psycopg2, time
+import psycopg2
+import time
+from daklib.dak_exceptions import DBUpdateError
################################################################################
try:
c = self.db.cursor()
- c.execute("DROP FUNCTION versioncmp(text, text);")
+ try:
+ # This might not exist on a fresh install, so don't fail
+ # needlessly
+ c.execute("DROP FUNCTION versioncmp(text, text);")
+ except:
+ pass
c.execute("UPDATE config SET value = '3' WHERE name = 'db_revision'")
self.db.commit()
except psycopg2.ProgrammingError, msg:
self.db.rollback()
- print "FATAL: Unable to apply db update 3!"
- print "Error Message: " + str(msg)
- print "Database changes have been rolled back."
+ raise DBUpdateError, "Unable to appy versioncmp removal, rollback issued. Error message : %s" % (str(msg))