none
Failed-modification-via-web-services RRS feed

  • Question

  • Hi,

    I am getting the failed-modification-via-web-services error on a few user objects when exporting updates to the FIM portal.  I have followed all the links under Related Topics and couldn't find a solution to this problem.  Everything else is working fine except for the few failed-modification-via-web-services errors.  These errors prevent the few users, currently 11, from moving out of the Set.

    I am running on FIM 2010 R2 SP1 and have a scaled out solution running on three servers.  Below is the error text:

    Fault Reason: The endpoint could not dispatch the request.\r\n\r\nFault Details: <DispatchRequestFailures xmlns="http://schemas.microsoft.com/2006/11/ResourceManagement" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><DispatchRequestAdministratorDetails><FailureMessage>Exception: Other
    Stack Trace: Microsoft.ResourceManagement.WebServices.Exceptions.UnwillingToPerformException: Other ---> System.Data.SqlClient.SqlException: Reraised Error 2627, Level 14, State 1, Procedure DoEvaluateRequestInner, Line 1073, Message: Violation of PRIMARY KEY constraint 'PK__#A21B034__5330D0775A284A9E'. Cannot insert duplicate key in object 'dbo.@transitionOutApplicableRuleBuffer'. The duplicate key value is (13733, 68724, 147).
       at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
       at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
       at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
       at System.Data.SqlClient.SqlDataReader.ConsumeMetaData()
       at System.Data.SqlClient.SqlDataReader.get_MetaData()
       at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
       at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)
       at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)
       at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
       at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
       at System.Data.SqlClient.SqlCommand.ExecuteReader()
       at Microsoft.ResourceManagement.Data.DataAccess.DoRequestCreation(RequestType request, Guid cause, Guid requestMarker, Boolean doEvaluation, Int16 serviceId, Int16 servicePartitionId)
       --- End of inner exception stack trace ---
       at Microsoft.ResourceManagement.WebServices.RequestDispatcher.CreateRequest(UniqueIdentifier requestor, UniqueIdentifier targetIdentifier, OperationType operation, String businessJustification, List`1 requestParameters, CultureInfo locale, Boolean isChildRequest, Guid cause, Boolean doEvaluation, Nullable`1 serviceId, Nullable`1 servicePartitionId, UniqueId messageIdentifier, UniqueIdentifier requestContextIdentifier, Boolean maintenanceMode)
       at Microsoft.ResourceManagement.WebServices.ResourceManagementService.Put(Message request)</FailureMessage><DispatchRequestFailureSource>Other</DispatchRequestFailureSource><AdditionalTextDetails>Request could not be dispatched.</AdditionalTextDetails></DispatchRequestAdministratorDetails><CorrelationId>bac66e49-f888-4e68-a1d7-823c57e82487</CorrelationId></DispatchRequestFailures>

    On the FIM portal, the request to update the users is not completed, it is shown with status as 'Validating'.

    1. How can one troubleshoot these errors to find the cause? (As I said, it only happen for certain users not everyone.)

    2. Has anyone successfully resolved these type of errors?

    Any help or ideas are appreciated.

    Thanks

    Johan Marais


    JkM6228

    Monday, March 18, 2013 7:47 AM

Answers

  • Hi,

    I managed to find the cause of the "failed-modification-via-web-services" error in my case.  I am using a single Set for contractors and have a few workflows which are triggered when a contractors moves out of this Set, for example when a contract expires.  After disabling the MPRs that activate the relevant workflows and doing an export on the FIM MA, no more "failed-modification-via-web-services" error.

    Not sure if this is a bug on the side of FIM or not, but I can't remember reading anywhere that you can't have more than one workflow working on an object in a particular Set. Part of the error message is"...Error 2627, Level 14, State 1, Procedure DoEvaluateRequestInner, Line 1073, Message: Violation of PRIMARY KEY constraint 'PK__#A21B034__5330D0775A284A9E'. Cannot insert duplicate key in object 'dbo.@transitionOutApplicableRuleBuffer'. The duplicate key value is (13733, 68724, 147)..."

    To workaround this problem I will have to change my design slightly.  The Set is used to provision contractors to multiple directories and also used to de-provision the contractor from the directories when he / she moves out of the Set - this is the part which caused the error.

    Regards

    Johan Marais


    JkM6228

    • Marked as answer by Johan Marais Thursday, March 28, 2013 5:50 AM
    Thursday, March 28, 2013 5:50 AM

All replies

  • Are there JOBS related to FIM listed in the SQL Agent Jobs in your SQL Server? and are they Running?

    You can check that by using the View History option of the jobs.

    Run them manually and check again.

    And did you temper with the FIMService Database? because that is not recommended under any circumstances.

    If nothing solves it, try deleting the SET and Create it again, and add the members again.


    Regards Furqan Asghar

    Monday, March 18, 2013 8:21 AM
  • Furqan,

    Thanks for your reply. Which jobs are you refereeing to? the only jobs there, are the ones installed by default.  I did notice two disabled jobs , maintainsets and maintaingroups, but this is the same in my dev environment

    I haven't tamper with the FIMService DB. 

    I am a bit reluctant to mess with the Set as this is on a production server.  Will see what I can do here.

    Regards

    Johan


    JkM6228

    Monday, March 18, 2013 8:43 AM
  • Furqan,

    I have changed the set criteria so that the user objects move out of the Set.  Even by doing this, the object can still not be updated, it fails with the same error.  isn't there a way to determine what is causing this?

    This Set is used to manage contractors in our AD - disabling them when the expiry date is reached. But with this few users, about 11, even by changing the date in AD and because updating the portal fails, it keeps on disabling them.  Users is becoming very frustrated with this.

    it is only a few users affected by this problem, they all were fine before.

    Regards

    Johan


    JkM6228

    Tuesday, March 19, 2013 5:27 AM
  • Hi,

    More information on this issue.  In the end the only way to solve the "failed-modification-via-web-services" error was to move the affected objects in the AD out of the scope of the ADMA.  This resulted in the objects been removed from the FIM portal.  I also removed any orphaned EREs and DREs.  Also did all the all the import, export and sync stuff until the environment was clean.  After this I moved the users back to their respective OUs and let the sync process put them back in the FIM portal.

    After this it seemed that the issue is solved for these 11 users. 

    During the trouble shooting I noticed that some requests were cancelled for these users due to some problems with the environment, see my question about that here:

    http://social.technet.microsoft.com/Forums/en-US/ilm2/thread/d2dc0116-3b5b-48aa-8d64-7a29da15fcd4. I am wondering if this could have caused this issue.

    I also noted that the request to update the user stays on status "Validating" and some past requests were cancelled due to some error possibly due to the issue in post above.

    Does anyone have an idea about this or experienced a similar issue?

    Regards

    Johan Marais


    JkM6228

    Wednesday, March 20, 2013 9:10 AM
  • Hi,

    I managed to find the cause of the "failed-modification-via-web-services" error in my case.  I am using a single Set for contractors and have a few workflows which are triggered when a contractors moves out of this Set, for example when a contract expires.  After disabling the MPRs that activate the relevant workflows and doing an export on the FIM MA, no more "failed-modification-via-web-services" error.

    Not sure if this is a bug on the side of FIM or not, but I can't remember reading anywhere that you can't have more than one workflow working on an object in a particular Set. Part of the error message is"...Error 2627, Level 14, State 1, Procedure DoEvaluateRequestInner, Line 1073, Message: Violation of PRIMARY KEY constraint 'PK__#A21B034__5330D0775A284A9E'. Cannot insert duplicate key in object 'dbo.@transitionOutApplicableRuleBuffer'. The duplicate key value is (13733, 68724, 147)..."

    To workaround this problem I will have to change my design slightly.  The Set is used to provision contractors to multiple directories and also used to de-provision the contractor from the directories when he / she moves out of the Set - this is the part which caused the error.

    Regards

    Johan Marais


    JkM6228

    • Marked as answer by Johan Marais Thursday, March 28, 2013 5:50 AM
    Thursday, March 28, 2013 5:50 AM
  • I ran into the same problem: getting this error when users were trying to leave a particular (criteria-based) set.  I don't know why it happened; there is only one workflow associated with the transition-out MPR, and it usually works.

    For me, the work around was:

    1. Identity the set whose transition out is causing the error.
    2. Manually add the users to the set, and save.
    3. Run delta import/delta sync and then an export for FIM MA.  The errors go away.
    4. Manually remove the users from the set, and save.
    5. Run another delta import/delta sync and then export for FIM MA to verify that the errors do not return.
    Tuesday, December 3, 2013 6:37 PM
  • I have noticed the same...I see the user keep a "Validating" status. I get errors in Event Log like:

    Violation of PRIMARY KEY constraint 'PK__#45104AF__5330D07746F89365'. Cannot insert duplicate key in object 'dbo.@transitionOutApplicableRuleBuffer'. The duplicate key value is (938880, 150315, 32644).

    Friday, December 6, 2013 6:00 PM