August 29, 2013 at 7:37 am
I've got a bit of a puzzle. I have a job that restores the production databases to reporting servers every morning, then runs a step to fix the logins so they have permissions to the restored databases.
Basically, it loops through all the logins, and for each one it runs:
sp_grantdbaccess
sp_changegroup
sp_defaultdb
When the job runs automatically, it gets partway through the list, then fails, but I don't see why. If I run the stored procedure, it completes. If the users are already in the database, I will get the message:
User, group, or role 'Angie' already exists in the current database.
But the SP keeps running until they are all processed.
Is there some limiter that causes it to fail after a certain # of errors in a scheduled job?
The scheduled job processed 6 of the 20 logins, even though "Angie" is first and throws an error. I can run the SP manually and after all the logins have been processed and in the DB, they all throw errors, but the SP at least runs all the way through.
August 29, 2013 at 9:17 pm
I'd be interested in knowing the answer to this because I have a similar problem with a backup proc. I specifically programmed it to catch an error in a TRY/CATCH and then continue. When I run it manually, it works correctly by noting the error in my "run log" table and continues. If I run it as a scheduled job, it fails and quits instead of continuing.
I know I'm going to feel like an idiot when someone exposes a simple answer for this but that' the tradeoff I'm willing to make for the fix for this problem... if it can be fixed.
--Jeff Moden
Change is inevitable... Change for the better is not.
Viewing 2 posts - 1 through 1 (of 1 total)
You must be logged in to reply to this topic. Login to reply