Execute a stored procedure, returning a cursor. For internal use
        only.

def execute_proc(self, procname, args):
        """
        Execute a stored procedure, returning a cursor. For internal use
        only.
        """
        self.logger(procname, args)
        with self.cursor() as cursor:
            cursor.callproc(procname, args)
            return cursor