Ensure 1 Active Sync process runs against the change log before all others?

He folks,
We have a lot of LDAP active sync thread. We have a primary on that correlates to an individuals account. Then we have several that represent affiliations at our organization. The affiliations are represented in LDAP as subordinates of the main persons entry. These sets of data were set up as different resource adapters because the they are different object types in LDAP.
Now we are running into a problem where the active sync threads for subordinates are running before the thread for the main entry. What this means, is that an affiliation thread might run, see a new person was added and ignore it (since that isn't it's resource) but find the affiliation subordinate entry and want to process it. However, the thread can't find an associated account in IDM yet, so no processing takes place on that change, ever..
If the main account active sync thread had already run, it would see the main entry, and then make a correisponding IDM entry. If the IDM entry has been made, and the affiliation resource active sync adapter runs, it will then find the IDM entry and update that.
So.. We are experience problems when the affiliation processes a new account before the main account sync process.
Can we ensure somehow that the main account active sync process always runs first? These are all LDAP resources. If we could ensure the main account resource / sync happens before any other affiliation resource, then we would never ignore data, and would not have anyproblems.
Does anyone know of a good clean way to do this?
Thanks!

I had a similar issue, and solved it by using post process workflows and starting and stopping resource adapters manually. This will allow you to start the first resource, and any others you want can be started/stopped manually via the workflow. You can effectively "chain" resource adapters to run in any order you'd like.
On the first resource that you want to run before anything else, this will run as a post-process workflow:
     <Activity id='0' name='stopFirstResource'>
        <Action id='0' name='stop'>
          <expression>
            <block name='stop'>
              <invoke name='stopActiveSyncOnResource' class='com.waveset.session.SessionUtil'>
                <ref>displaySession</ref>
                <s>%%FIRSTRESOURCENAME%%</s>
              </invoke>
            </block>
          </expression>
        </Action>
        <Transition to='Process Errors'>
          <ref>WF_ACTION_ERROR</ref>
        </Transition>
        <Transition to='startSecondResource'/>
      </Activity>
      <Activity id='1' name='startSecondResource'>
        <Action id='0' name='start'>
          <expression>
            <invoke name='startActiveSyncOnResource' class='com.waveset.session.SessionUtil'>
              <ref>displaySession</ref>
              <s>%%SECONDRESOURCENAME%%</s>
            </invoke>
          </expression>
        </Action>
        <Transition to='Process Errors'>
          <ref>WF_ACTION_ERROR</ref>
        </Transition>
        <Transition to='end'/>
      </Activity>
This will stop the first one (after it has run) and start the second one.
Then, on the post process workflow of the second resource:
      <Activity id='1' name='stopSecondResource'>
        <Action id='0' name='stop'>
          <expression>
            <block name='start'>
              <invoke name='stopActiveSyncOnResource' class='com.waveset.session.SessionUtil'>
                <ref>displaySession</ref>
                <s>%%SECONDRESOURCENAME%%</s>
              </invoke>
            </block>
          </expression>
        </Action>
        <Transition to='Process Errors'>
          <ref>WF_ACTION_ERROR</ref>
        </Transition>
        <Transition to='end'/>
      </Activity>This stops the second one.

Similar Messages

  • ODS Activation Returns 0 records in the Change Log

    Hi All,
    I have question regarding the Change Log build after the ODS req has been activated.
    BW system - SAP NetWeaver BI 7.0 - Level 15
    Upon loading a delta request into the ODS and Activating, it adds no records to the change log table.But the active table gets correct records
    Checks I Did
    ODS -> Menu-> Environment -> Delete Change Log Data.
         No job scheduled or runing to delete the change log reqs (sm37)
    RSRV - Check the Status of the Generated Program of a Data Store Object
    ODS - reactivation to see if it works..
    ODS Manage - Auto Req Processing set Quality status, Activate DSO to Yes.
    The Activation Log shows at the end that they were no changed records added:
    Data pkgs 000001; Added records 0; Changed records 0; Deleted records 0                 
    Log for activation request ODSR_4APQQHKM459YNO7CIGCE0629U data package 000001...000001  
    Activation of records from DataStore object C_PUR_C sucessfully finished               
    U table for DataStore object C_PUR_C deleted successfully                              
    Job finished                                                                               
    Can anyone help on the above issue??
    Thanks
    Rao

    Hello Siggi,
    Referring to the previous post:
    I have a situation where few documents are not transferred to Change log during DSO Activation, though the After image values of these records are reflected in Active table.
    I have found one common pattern for those documents which are not recorded in Change Log.
    They have two pairs of After and Before image records.
    First Pair like this: Eg: Overall status as the only data field.
    Sales Doc     Overall Statuls   Recordmode
    1001             C                      X
    1001             A                      
    Second pair:
    1001            A                      X
    1001            C                     
    If we consolidate all these 4 records there seems to be no change for any data fields. Should I consider this as the standard behaviour while activating DSO - causing these records not to get recorded in change log?
    Or is there any SAP Note that can make sure the change log gets populated in such case.
    Hope my details are clear to you..
    - Varma

  • Active sync : process selection values are not persistent

    Hi,
    Version: IDM : 6
    I am attempting to provision oracle user accounts through IDM active sync process running against an AD LDAP server.
    I want to use default forms/views supplied by IDM product, and configure active sync to use my custom workflow on create/update events.
    I was not able to save my workflow for any of the events in process selection module of active sync configuration.
    this is what i did..
    ======================================================
    Active sync in (advanced mode) ->Process Selection
    Process Mode      
    Use the event type to determine the process / workflow ? (enabled)
    Create -> (from available workflows i select my custom workflow ) save
    ======================================================
    after saving my changes , i again re-visited active sync-> process selection : to confirm my changes.
    i do not see my saved workflow for create , but i see "default" as selected.
    Is assigning custom workflows through actives syncs process selection allowed?
    If Yes, How do i preserve my active sync-> process selection configurations?
    Thanks
    Edited by: idm_new_user on Jun 3, 2008 9:44 AM

    Hi Chapo,
    Thanks for trying to help me out...
    Issue is not with assigning my custom form to my active sync process, it works that way...(i can achieve AD->IDM->ORACLE provisioning) using custom form/workflow...i now want to use, forms/workflow shipped out of box by IDM product to achieve provisioning of oracle accounts(Target) with Active Sync configured on AD (source).I am having issues with this configuration...i am not sure , it even works, out of box with out editing any forms/workflows !!!
    what i now to achieve is a partial customization, i.e use forms supplied out of box by idm's active sync process, and ONLY use my custom workflows to do create/updates...
    This is what i am trying to do, for an active sync configured on AD resource in advanced mode.
    Find the AD LDAP resource under the Resources tab.
    The check the box on the left hand side.
    Now select "edit Active Sync process" from the drop down box.
    In the active sync ->process selection view...select "use event type to determine the process/workflow ?"
    and assign my custom workflows for create/update events...
    after saving this, i revisit to confirm my changes...only to find that , they get lost/replaced by "default"
    so, my question is how do i configure an active sync to use my workflow on create/update events...with out using my custom forms? if "process selection" module of active sync wizard is the way to do this, how can i save my configurations?

  • How to check and delete the change logs for DSO

    Hello All,
    I have build a process chain that will delete the change logs for DSO prior to 7 days but when i executed it, the number of entries are still the same within DSO.
    Then i tried deleting directly from "Environment" menu from DSO maintainance but does not work. Can anyone please explain how to resolve this issue or the proper process of deleting the change logs. Appreciated.
    Thanks,
    M

    Hi
    Check out the below two articles
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/1058b68f-96c4-2d10-fbb1-de8757ca6a58?QuickLink=index&overridelayout=true
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/a02ba9e7-bb6f-2c10-09b4-e86b9fcbad41?QuickLink=index&overridelayout=true
    Regards,
    Venkatesh

  • Some key figures are not being correctly reversed in the Change Log

    Hi Experts,
    I'm working with the BI 7 (SP 15) and I have created an ODS with Overwrite option (Record Mode equal to ' ') and a Cube receiving data from this ODS.
    Whenever I have a change in one existing record in R/3 side (already previously loaded to BW), it comes perfectly to the ODS and overwrite the record in the Active Data. However, in the change log table, the before image record is not reversing all the key figures, there is one (Quant type) which is not working and it is being doubled in the cube. All the other key figures are Amount type and are working fine. PLease see below some examples of the Change Log behavior:
    First time the record comes - Change log content:
    Material   Valid Dt   Cost Value      Quantity Rec. Mode      Req. ID
    1234     May/01   $  100.00       10          'N'     1
    Second time when the record changes the Date:
    Material     Date      Cost Value      Quantity Rec. Mode      Req. 1234     May/29   $  100.00       10          '  '     2
    1234     May/01   $  -100.00       10          'X'     2
    Then the final result in the cube, after it is compressed, is:
    Material     Date      Cost Value      Quantity
    1234     May/29   $  100.00       20      
    Also, I have a Counter in the transformation to the Cube which is a constant equal to 1, it is also being aggregated erroneously. I could create a routine to check the record mode coming, but I'm not sure it is the best solution.
    Can anybody help me to figure this out, please?
    Thanks in advance.

    Hi Rajkumar,
    Actually it is a generic extractor (customized) and the ODS active data is getting the delta records correctly. After I extract from R/3 and activate the ODS, the active table has correct results, but the change log table has the problem described before. All the fields comes from one single extractor.
    The 0RECORDMODE that I mentioned is about the setting in the transformation to the ODS. You have the Technical rule group where you can set the 0RECORDMODE, in my case it is set to ' ' (blank) which means it will receive After-Images from the extractor (which I think is correct in my case). The most curious is that it is working for almost all key figures (all amount type), except for the Price Unit which is Quantity type.
    Any other ideas?
    Thanks.

  • Active Sync process "hanging"

    Hi Experts,
    Last weekend an Acticve Sync task "hung" for 2 days. The Active Sync is scheduled to start every 24 hours at 8:30am.
    This morning however its status was "Started, executing" yet nothing was being logged. I would expect something as its log level is 4.
    The last time the AS was started was Friday but having the task in this state prevented the Saturday or Sunday morning runs from being executed.
    The only way to recover was to reset IdM by restarting the webserver.
    What circumstances could cause Active Sync to 'hang' like this?
    Has anyone else suffered this sort of situation and if so was the cause determined?
    Any hints or tips appreciated.

    We have experienced this behavior on a fairly frequent basis with our Active Directory Active Sync processes.
    We are not sure why the system behaves this way.
    We are in the habit of manually monitor the active sync jobs on a daily basis.
    We have the log level set to 2 on our 11 Active Directory resources.
    We view the timestamps on the log files to determine if the Active Syncs are truly running.
    Our 11 Active Directories run every 3 hours. I note this because the time stamp on the log files should be older than 3 hours (in our case) if the Active Sync (A/S) process is truly not running.
    Here is our process when restarting the A/S.
    1. Make sure the Task SARunner:<Active Directory Resource> is running.
    a. Go to the Tasks form and get a list of All Tasks.
    b. Find the SARunner:<Active Directory Resource>. If this task is not running then you need not read any further because you will need to recycle your Websever to get the Active Syncs to run.
    2. If the Task is running.
    a. Go into Debug and edit the Active Directory Resource.
    b. Change the Polling Start Time and Polling Start Date to the desired start time. Note: Set the start time at least 10 minutes into the future. So if at 11 am your making the change then set the polling start time to 11:10 (at a min.)
    b.     Save the changes.
    3. Navigate to the resources form.
    a. Stop the Active Sync
    b. Refresh the Active Sync
    c. Start the Active Sync
    d. Refresh the Active Sync.
    Good Luck.

  • How to shorten active sync process

    Hello, I am trying to setup IDM to use Database Table active sync to read SQL table then update couple IDM user's attributes. I used "used wizard generated input form" setting. Once it runs, IDM connects all the resources and fetches all the information of res account that each user has. We have over 6000 user. The active sync took over 10 hours to finish. Where and how can I let active sync not to connect other resource?

    I identify that the query allowing take a while.
    Periodicly, MGP send from 2 to 8 process which execute the query that takes all the processor. Even there are nothing to update.
    How to acelerate it? or how to avoid it?.
    UPDATE mobileadmin.cmp$wtgpi_10055 m
    SET dmltype$$ = 'D',
    seqno$$ = NULL,
    dtype$$ = NULL
    WHERE clid$$cs = 'XNC04615'
    AND nvl(dtype$$, 'N') <> 'D'
    AND (seqno$$ IS NOT NULL
    OR nvl(dmltype$$, 'N') <> 'D')
    AND NOT EXISTS (SELECT 'A'
    FROM (SELECT t1.*
    FROM shmk.designs_data t1, shmk.userdatakey t2
    WHERE t2.user_id = 'XNC04615'
    AND t1.ref = t2.ref) s
    WHERE s.ref = m.ref) ;

  • Re-Start Active Sync process where ever it was left

    I was forced to delete the SA runner active sync process. By this time the process completed 200 records.
    Now I want to re-start the Async process from 201 record.
    Any ideas how to achieve this?
    THanks.

    ActiveSync sorts by the uniqueId for each record.
    1) Backup the full files as you will need to copy back over the modified files for processing a subset of the records
    2) Make sure the ActiveSync & FFAS files are sorted correctly
    3) delete the 200 records that processed already such that the 201 is the beginning
    4) Before processing the diffs of the modified ActiveSync & FFAS files you need to complete a processing of the modified FFAS file without any diffs (ActiveSync = FFAS). This tricks AS into starting at the 201 without reprocessing the 1st 200.
    5) Now process the modified ActiveSync against the modified FFAS.
    6) On completion set both the modified files back to the saved full AS so all records exist for future executions

  • Problem with Active Sync Process in Flat File

    I have a flat file (Employee.csv) as a resource. I populated that data into IDM using Active Sync.
    Ive created another flat file that is empty (CopyEmployee.csv) and added that as resource to IDM.
    By using the Active Sync process I want to populate the data from Employee.csv to CopyEmployee.csv.
    I tried but unable to get the output. Is this really possible ?
    Im using IDM 6.0 on SunApp 8.1

    Nope, flatfile is a read only adapter, to the best of my knowledge. You can use it to feed IM, that's it. No recon, nothing else. That's coz IM doesn't maintain a state for it (just does a diff with an index file during ActiveSync).
    You can think of maintaining a simulated resource on a file though.
    Ankush

  • Two processes running at the same time in Lookout

    I have installed Lookout 5.0 with 200 I/O Points onto our server computer. The application of motion control is next to the 200 I/O points through OPC PMAC server/client. Now I would like to have a second process in the same server for trouble shooting and testing without stopping the motion control process. However, this second testing process could have also many I/O points through Serial and USB ports. I assume that the total amount of I/O points of both processes will be greater than 200.I prefer to have independent processes for control and testing because access levels. Can I have these two processes running at the same time when needed?

    Hi,
    From your description you are using a third party OPC server for the motion application. You could have a second Lookout process communicating with the same OPC server with no problems, as long as you do not exceed the number of I/O points your license supports.
    Also, the process you are using for testing obviously could not overwrite datamembers (or registers if you will) that would interfere in the overall application, in other words you can test your application as long as you keep the coherency of the test.
    So the answer would be, yes it is possible, however you are still limited to the number of I/O's your license supports... You may even consider upgrade the number of I/O's you have in your license.
    Best Regards
    Andre Oliveira

  • Why won't new version 4.0 open on my desktop while version3.6.17 works fine. When I check the processes running on the computer the firefox is running but it won't open on the desktop(monitor)

    When I updated firefox from version 3.6.16 to 4.0 the program would not open on the desktop after I double-clicked the short cut on the desk top. I checked the processes running on the computer and it showed firefox running. I followed the short cut to its file and clicked on the executable file with the same result(it won't open). I went back to the previous version and it works fine. What could be the problem?

    Hey djclark24,
    Have you tried starting Firefox in Safe Mode? Hold down "shift" while Firefox is starting up. If the crash doesn't happen in Safe Mode, you should read [[Troubleshooting extensions and themes]].
    There is also a lot of useful stuff in the [[Firefox crashes]] Knowledge Base article.
    You could also try [https://support.mozilla.org/en-US/kb/Managing-profiles?s=create+a+new+profile&r=2&e=es&as=s#w_creating-a-profile Creating a new profile].
    Hopefully this helps!

  • Get est time for sql without running against the db ??? possible ?

    hello,
    is there anyways to get a query execution time without running that against the database ?? even an estimate would be good...i am on 10.2.0.3 ......i am it might be impossible for it...but anyways to get estimate besides setting autotrace only ?? as i said want nothing but just like a estimate time for how long will it take to finish the query...i know we can very long_ops view but as i said..without running against the DB ...is that possible ?? as the explain plan i get shows time ?? but is that how long it will take to finish up or ?/
    select * from table(dbms_xplan.display);
    | Id  | Operation            | Name | Rows  | Bytes | Cost (%CPU)| Time     |  
    |   0 | SELECT STATEMENT     |      |    56 |  3192 |     9   (0)| 00:00:01 |  
    |   1 |  MERGE JOIN CARTESIAN|      |    56 |  3192 |     9   (0)| 00:00:01 |  
    |   2 |   TABLE ACCESS FULL  | DEPT |     4 |    80 |     3   (0)| 00:00:01 |  
    |   3 |   BUFFER SORT        |      |    14 |   518 |     6   (0)| 00:00:01 |  
    |   4 |    TABLE ACCESS FULL | EMP  |    14 |   518 |     2   (0)| 00:00:01 |  
    -----------------------------------------------------------------------------  

    user11168115 wrote:
    hello,
    is there anyways to get a query execution time without running that against the database ?? <snip>
    How long is a string?
    How deep is a hole?
    How long does it take to read an unknown number of blocks containing an unknown number of rows from an unknown disk system with an unknown contention load, pulling it across an network of unknown bandwidth and unknown load ....
    And I'm not saying that if you somehow provide all this that the answer can be known. I'm saying the too much of the information tht would be needed to make such an estimate is unknowable. Much of it will be widely variable from one execution of the query to the next execution of the exact same query. Which leaves you with exactly what to base your estimate on?
    Without even seeing your query, I can tell you with absolute certainty that it will take between 1 nano-second and 100 years to execute.

  • Hundreds of isql processes run as the time going in my solman server

    Hi dear experts,
    I have a tough issue in my solman. My solman SID is SMP. SMP always down once a week or two.Each time SMP is down, I find hundreds of isql processes running on the server:
    Then I find thousends of below log in /sybase/SMP/ASE-15_0/install/SMP_BS.log.
    Aug  1 00:24:12 2014: Backup Server: 2.23.1.1: Connection from Server SMP on Host smsp with HostProcid 19536.
    Aug  1 00:39:12 2014: Backup Server: 2.23.1.1: Connection from Server SMP on Host smsp with HostProcid 19536.
    Aug  1 00:54:12 2014: Backup Server: 2.23.1.1: Connection from Server SMP on Host smsp with HostProcid 19541.
    Aug  1 01:09:12 2014: Backup Server: 2.23.1.1: Connection from Server SMP on Host smsp with HostProcid 13800.
    Aug  1 01:24:12 2014: Backup Server: 2.23.1.1: Connection from Server SMP on Host smsp with HostProcid 19534.
    Aug  1 01:39:12 2014: Backup Server: 2.23.1.1: Connection from Server SMP on Host smsp with HostProcid 30385.
    Could you give me any advices?

    Hi Pan,
    Sysbase infocenter SyBooks Online and SAP note: 1982469 - SYB: Updating SAP ASE with saphostctrl / sapdbctrl  and 1590719 - SYB: Updates for SAP Adaptive Server Enterprise (SAP ASE) are the starting point to cover the update.
    Please refer those two links. I hope that is not going to be a big task.
    Divyanshu

  • Two java.exe processes running in the Task Manager in Windows XP

    I tried to find the best possible place to post this and after spending about 20 minutes searching for an appropriate forum starting from java.com I ended up here. So forgive me if the is a wrong place and if there?s a more appropriate place for my question, please provide a pointer to it.
    I don't know much about java and what it does but as the title says when I open the Task manager there are two java.exe processes running at the same time with about 20 000 k each.
    One of the processes is coming from:
    C:\Program Files\Alias\Maya6.5\docs\jre\bin\java.exe
    and the other from:
    C:\Program Files\Alias\Maya7.0\docs\jre\bin\java.exe
    in addition to that a jusched.exe process is also running coming from
    C:\Program Files\Java\jre1.5.0_10\bin\jusched.exe
    I rarely open the Maya 6.5 and 7 documentations but the two java.exe process are running all the time and I would like to stop them running when I don?t need them but I don?t know how.
    I can't end these processes from the Task Manager; they reappear immediately after I end them.
    Any help with this is greatly appreciated.
    Thank you

    Try to see:
    http://forums.cgsociety.org/showthread.php?t=294973
    Bye,
    leo

  • I am sharing a apple id acount with my family but when i synced my phone to the computer it erased all of my imformation and put the other phone's imformation on it. I was wondering how I can prevent this from happening?

    I am sharing a apple id acount with my family but when I synced my iphone to the computer it erased all of my imformation and put the other phone's imformation on it. I was wondering how I can prevent this from happening?

    If the ringtones are on the old device just plug it in and do a transfer of purchases then they will be on the computer to sync to the new device.

Maybe you are looking for

  • Release finished goods orders

    Is there a way to release a finished goods order if it has missing parts?  I would like to release certain orders now, prior to their production so there is no delay once they are finished.  How can I manually go in and release an entire order if the

  • WLC (Foreign-Anchor), problem with the external web auth -- ISE

    hello guys I am currently designing a platform for a guest network, which must be isolated from the local network, the following equipment: ISE 1.2 (Cisco SNS- 3415-K9) WLC 7.0.230.0 (Cisco controller 5508)---> wlc Foreign WLC 7.0.230.0 (Cisco contro

  • Restriction to access schema objects

    Hi, Is it possible to give restriction that connect with the user in oracle but can not view any object. And if we will run the query select count(*) from user_objects; will give "0" but if we write a query for user created table, we can access the t

  • I need help installing air on win xp sp3

    I uninstalled air a couple of months ago and something went wrong to the point that air will not install again.  I assume some piece of code or file is left over.  Air does not appear in the control panel to uninstall it there. Here is the most recen

  • I am unable to delete an old apple i.d. from my Ipad. It still comes up in the apps store and I can"t change it.

    I changed the apple i.d. on my ipad and i cant get rid off the old i.d. When I try to access the apps store the old i.d. comes up and I cant change it.