on 08-18-2014 12:49 PM
Hello Guru,
I have IDM 7.2 SP9 on Oracle 11.2.0.4.
The problem is - some users have provisioning status=20 with message "Wait for result audit:xxxxxxx" in table MXP_AUDIT.
And provisioning doesn't start when I try to modify such accounts via WEB-interface with 'Modify' task. Only new record with provstatus=0 is added to table MXP_AUDIT and nothing else has happenned.
If I select information about audit with provstatus=0 from table mxp_ext_audit, I get null result:
I tried to use recommendation from topic SAP IDM: Provisioning is stuck (yet again) - My checklist
update mxp_audit set provstatus=1100 where auditid = <auditid>
But nothing changed.
I have 367 records with status '20' and message 'Wait for audit'. And I can't change these item, because of such stuck.
Could you please help me to solve this problem?
Thanks in advance!
Natalia.
Hello Natalia,
did you use
update mxp_audit set provstatus=1100 where auditid = <auditid>
with the audit-id, that is shown in "Wait for result audit:xxxxxxx" or with the audit-id this message came up for?
Regards,
Steffi.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
State = 0 just means the task has been initiated and doesn't tell much more. Finding the reason why the audits it's waiting for did not complete is usually a good start. You can check the audit listed in as "wait for result audit:xxxxx" and look at the LastAction column to find out what the last task that executed or failed was and then check the syslog entries for this task. If you have extended audit enabled you can also look at this
select t.taskname,a.* from mxp_tasks T, mxp_ext_audit A where T.taskid = A.aud_task and A.aud_ref = <wait for auditid> order by aud_datetime
If I recall correctly, setting the audit that has a wait for... to state 1100 will do nothing as entries in that state are ignored by the dispatcher and will not be picked up or processed at any point. This state is only set by procedures called by the dispatcher.
Br,
Chris
Hello Per,
last action for audit mentioned in message 'Wait for" is 223 "2. Modify ABAP User":
Syslog for this task (13.06.14 16:45:20) has no errors:
I've updated system to the last release of SP9, but it hasn't helped me.
Have you any ideas how to unfroze provisioning for such accounts?
Best regards,
Natala.
Per,
maybe this information could be helpful to solve my issue. I used your queries from On queue processing, or the lack thereof. Part #2 :
select
count(P.mskey) numEntries,t.taskid,t.taskname,A.Name ActionType,s.name StateName,
case when js.name = 'Running' then 'Running, processed:'||to_char(NVL(J.CurrentEntry,0)) else js.name end as Jstate
from
mxp_provision P
inner join mxp_Tasks T on T.taskid = P.actionid
inner join mxp_state S on S.StatID = P.state
inner join MXP_ActionType A on A.ActType=P.ActionType
left outer join mc_jobs J on J.JobGuid = T.JobGuid
left outer join mc_job_state JS on j.State = JS.State
group by
t.taskid,T.taskname, A.name, S.name,case when js.name = 'Running' then 'Running, processed:'||to_char(NVL(J.CurrentEntry,0)) else js.name end
order by
A.name, S.name
and got result - I have big Queue for Modify task:
What I have to do with such Queue? How to reset it?
Best regards,
Natalia.
I see that they have the state Queued in the provisioning queue (37). This is a new state that was introduced with SP9 and it is used to queue events that trigger the provisioning framework "modify" task so that they are not run in parallel but in order.
To release it you should only need to change the state of the oldest one (per mskey) to 2:
update mxp_provision set State = 2, PrevState = State where AuditRef = <auditid> and State = 37;
You can try running this and see what it lists:
BEGIN
FOR c IN (select min(auditref) auditref,mskey from mxp_provision where state = 37 group by mskey) LOOP
DBMS_OUTPUT.PUT_LINE('update mxp_provision set State = 2, PrevState = State where AuditRef = ' || to_char(c.auditref) || ' and State = 37;');
-- update mxp_provision set State = 2, PrevState = State where AuditRef = c.auditref and State = 37;
END LOOP;
END;
and then run one or two of the resulting updates it lists using F5 (run script) in SQL developer and see if things are released (commit if required). If it works correctly you can remove the -- in front of the update statement or run the rest manually.
BIG WARNING THOUGH: I have not been able to test this myself, so use with extreme caution outside development systems...
Br,
Chris
Dear Per,
THANK YOU A LOT!!!
I've did as you recommended on Development system and result is amazing - Provisioning started!
I want to add some notes to your script, maybe it can be helpful for someine else:
We need to set State=2 for the oldest audit for every Repository ID.
After this magic trick other audits in Queue for Repository_ID were started for provisioning.
So I changed your script to this one:
BEGIN
FOR c IN (select min(auditref) auditref,mskey,repositoryid from mxp_provision where state = 37 group by mskey,repositoryid) LOOP
DBMS_OUTPUT.PUT_LINE('update mxp_provision set State = 2, PrevState = State where AuditRef = ' || to_char(c.auditref) || ' and State = 37 and repositoryid=' || to_char(c.repositoryid) || ';');
-- update mxp_provision set State = 2, PrevState = State where AuditRef = c.auditref and State = 37;
END LOOP;
END;
run only once and waited.
So, problem is solved now.
Many thanks for your help!
Best regards,
Natalia.
Hello all,
today I do not see any new audit record with status 'Wait for audit:xxxxxxxx'.
Hope SP9 update is helped.
But... what I have to do with queued records? I can't change huge amount of users.
Please help me.
Best regards,
Natalia.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hello Natalia,
what patch level of SP9 are you using? There is a bug where modify task is not working properly for early SP9 release and as far as I remember the symptoms were like what you describe. Even though you clean it up now it will appear again.
Regards
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Natalia,
I would recommend you to patch all components to latest release as there might be dependencies.
That means without VDS it would be at least 4 steps:
Designtime executables
Designtime DB
Runtime
UI
But is basically all just executing a file or script and not really much of an effort.
Regards
Norman
Hi Norman,
there are 5 entries with status 'Wait for audit:" appered today. I tried to change one of them (via 'Modify' web-task), set valid_to, but I got the same result - Provisioning was not started, only new string was added to mxp_audit with provstatus=0.
I didn't do any updates in DB level for this user. It's fresh.
Best regards,
Natalia.
User | Count |
---|---|
98 | |
11 | |
11 | |
10 | |
10 | |
8 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.