Either just ignore the course (put in pass) or reissue same exception rather than creating a new. If you issue the exception, then the caller needs to catch it. I think you should ignore the exception. If the user supposedly has access to a course which doesn't exist, it's just an extra db auth entry.