def __exit__(self, *exc_info):
with closing(connection.cursor()) as cursor:
query = "SELECT %s(%%s, %%s)" % self.unlock
cursor.execute(query, self)
if cursor.fetchone() != (True,):
raise DatabaseLockNotHeld(self)