Concurrent execution of the same interface

Hi,
we use ODI in an application that waits for incoming data files in a directory and uploads their content into a target database.
The principal question I have is this:
Can ODI handle concurrent executions of a single interface? In our use case, this happens when two (or more) users submit their files within short period of time, but I think this question is important in general. Is ODI a good fit for concurrent data flows targeting a single datastore?
I personally doubt that. An ODI interface consists of loading and integration steps. That is, loading data into one or more temporary work tables, joining into a flow table (if having more than one source datastore), and finally integrating (merging) data into the target datastore. Most of the loading and integration knowledge modules follow this pattern:
1. drop work table
2. create work table
3. populate work table
4. use work table (e.g. for joining into a flow table)
5. drop work table
This seems to be a problem - indeed testing with two concurrent executions failed due to the faster instance dropping the work table being used by the other instance.
I know you can configure the KMs not to drop the work table and/or design custom LKMs/IKMs as you see fit, yet the idea of two concurrent processes using the same work table doesn't look right to me.
So back to my original question - what is the best practice for concurrent ODI executions on the same target? Is serializing of executions on single target a must? Does ODI provide means to achieve the serialization? Are there other options?
Thanks in advance for your feedback.

Sure, I like the idea.
It's a pity that such KMs do not come out of the box with ODI. Even though I agree with you that it's an easy customization, it's still effort that someone has to pay, on top of the ODI license cost. After all, ODI is supposed to reduce the amount of development work. Hopefully Oracle realizes this and ships more reusable KMs in the future (the product is still pretty new in the Oracle portfolio).
Thanks for your feedback, it's definitely more elegant than serializing execution (which remains an option for less demanding scenarios).
Further elaborating your idea...How about creating an ad-hoc work schema dynamically? Is that feasible? Say by cloning a template physical schema and setting the work schema? That way the existing KMs could be reused.
Another fancy idea would be using the substitution API in the work table prefix definition, e.g. "C$<%=odiRef.getSession("SESS_NO")%>". That would be a nice feature for Oracle to implement.

Similar Messages

  • How to config. different Operations of the same Interface to different BPM

    Hi Gurus
       I have a very urgent problem.
       The requirement is like this:
       Customer creates an invoice in A1S and release it. Information of the invoice is retrieved via two service interfaces:
            CustomerInvoiceProcessingInvoiceAccountingOut
            CustomerInvoiceProcessingReceivablesPayablesOut
            with operation NotifyOfInvoice;
       These two interfaces will transfer the information into XI and the information will be filled into a BAPI, BAPI_ACC_DOCUMENT_A1S, to R3. Then the finacial document together with the invoice will be created in the R3.
       when customer cancels the invoice in A1S, Information of the cancellation is retrieved via the same two service interfaces:
            CustomerInvoiceProcessingInvoiceAccountingOut
            CustomerInvoiceProcessingReceivablesPayablesOut
            with operation NotifyOfInvoiceCancellation;
       These two interfaces will transfer the information into XI and the information will be filled into a BAPI, BAPI_ACC_DOCUMENT_REV_POST, to R3. Then the reverse finacial document will be created in R3.
        My solution is like this:
        1. for invoice creation:
         Both messages sent to BPM_1, then send to R3.  3 interface determinations are needed for 3 abstract interfaces.
        2. for invoice cancellation:
         Both messages sent to BPM_2, then send to R3. 3 interface determinations are needed for 3 abstract interfaces.
        My problem is this:
        No matter during creation or cancellation, the same interfaces are triggered. The related receiver determination will distribute the information to both of two BPMs. However the information only contains data of one operaton: creation or cancellation. Error messages will appear in monitor for the other BPM. For example, when customer creates an invoice, the information only contains data of creation whereas it is sent to two BPMs via the receiver determination. the BPM for cancellation surely can not deal with this information then error appears.
        My question is : how can i solve the problem? How can i avoid the appearance of the error? thanks
    Message was edited by:
            SAP LCR

    Hi,
    In the receiver determination you can route the message to the RIGHT BPM according to the content of the payload. So each time only one BPM is called.
    Regards,
    Hui

  • ¿Can Extended and Ethertype (input) ACLs be applied to the same interface?

    Hello team:
    ¿ Is it possible to apply one Extended ACL and one Ethertype ACL, in input mode, to the same interface?
    Thank you very much in advance.
    Mariela Musitani

    Thank you very much Borys. I assumed that it was possible, but the documentation was not clear in this context.
    regards, Mariela

  • Stetting up FTP and SFTP adapters for the same interface

    Experts-
    I have a situation in which client has a requirement to setup both FTP and SFTP adapters (from adapetive adapters) for the same interface. They want to have a copy of file locally and also want a file to be sent out securly using SFTP. In my interface which was previously developed they have used one business system and added FTP and SFTP to the same. If try to add new Receiver Agreement it will say that the object already exists as the Interface Mapping is same.
    Please send me any suggestions which would resolve my problem

    Hi Hari,
    As you cannot create two Receiver agreement using only one receiver interface , please create a new receiver Interface, add that in interface determination step and then assing a different channel to new receiver agreement.
    If your requirement is to store the file ,i would suggest write the file in your unix directory using NFS( /usr/sap...). then run a AFT job (if already set up in your landscape) to transfer file securly to target destination.Not sure if its feasible in your case otherwise you can use  SFTP for the secure transfer.
    Best Regards
    Srinivas

  • Assigning multiple IP address to the same Interface in rc.conf

    Hi,
    Is there any way to assign multiple IP address to the same Interface in rc.conf ?
    Or else how is it done?
    Thanks
    --Siju

    Like oh so many things, IP aliasing is covered in the wiki.
    Or you can just add the commands to /etc/rc.local if you need to do it some other way.

  • NATting using the same interface ?

    hi there,
    I was wondering, is it possible to set up NAT/PAT for packets arriving/leaving (after being routed) the same interface , e.g. not going "through" the router ?
    I think that this is not possible but I need to be sure... Any help ?
    Thanks,
    Alex

    That is called nat on a stick.
    http://www.cisco.com/en/US/tech/tk648/tk361/technologies_tech_note09186a0080094430.shtml
    Once you understand how to do this NAT will never confuse you again.
    There may be a newer method with the new NAI interfaces in the latest IOS but I have not had time to test this and have not seen any documentation on using these new nat features for this purpose.

  • Issue in concurrent update of the same attribute

    Hi All,
    We have a requirement to populate an attribute on user profile from target resource process form during reconciliation. This attribute can hold the multiple values separated by '|' (pipe). A user can have multiple account on this target resource. Now we are facing the issue where if the user's multiple account is updated and during reconciliation when they are trying to update the user form (concurrently...almost at the same time..) via different recon events (and hence process task on recon update received), only last update came into effect. Lets say if two recon event R1 and R2 created for a user and trying to copy the value ATTRVAL1 and ATTRVAL2 on user profile attribute attr1. In ideal scenerio the value of attr1 should be ATTRVAL1|ATTRVAL2, but in our case the value we received is either ATTRVAL1 or ATTRVAL2 (depending on the last update). The process task to update the value on user profile is successfully completed. It seems till the time last one capture the value, it stale the first update usr_rowver field that used in profile update.
    Please let me know if you ever face this issue and how to deal with this. There is no caching enabled in OIM (under config file)

    Hi,
    Can you just tell me which type of Recon you are using is it GTC or any other recon?
    What is target resource from which recon is happening?
    Just check the metadata.xml whehter it gives you option to make attribute as multivalued or not. IF it is there then you just define your attribute as multivalued and proceed..
    Regards
    Alabhya Goel

  • Not working traffic inside of the same interface

    Hi Guys.
    I need your help to configure a Cisco ASA 5510.
    Connencted the a single interface I have a switch. To this switch (same VLAN) there are connected:
    1. The Subnet of the main office (192.168.1.253)
    2. A router  (IP 192.168.1.254) that routes the traffic to a remote location (Subnet 192.168.8.0/24)
    I have so allowed any traffic incoming to the inside interface as follows:
    access-list inside_access_in extended permit ip any any
    and I have permitted traffic intra interface as follows:
    same-security-traffic permit intra-interface
    Then I created a static route:
    route inside 192.168.8.0 255.255.255.0 EXTERNAL_ROUTER 1
    Now I can successfully ping the destination:
    Pinging 192.168.8.10 with 32 bytes of data:
    Reply from 192.168.8.10: bytes=32 time=135ms TTL=123
    Reply from 192.168.8.10: bytes=32 time=146ms TTL=123
    Reply from 192.168.8.10: bytes=32 time=143ms TTL=123
    Reply from 192.168.8.10: bytes=32 time=188ms TTL=123
    Unfortunately I cannot RDP into that server. When I simulate the connection via Packet tracer, it tells me that the implicit deny on the bottom of the conncections from "inside" (firewall) does not allow the connection.
    It sounds to me like that "same-security-traffic permit intra-interface" does work only if there are 2 interfaces and not a single one.
    Unfortunately I cannot just unplug the cable and connect it into another port as the ip is on the same subnet and I cannot configure the other end router.
    Please help :-(
    Thanks,
    Dario Vanin

    Ahh OK, telco router.
    You can quickly test if it's working by configuring the PC with static routes for 192.168.8.0/24 pointing towards the router (192.168.1.254).
    Here is sample configuration on TCP State Bypass:
    http://www.cisco.com/en/US/products/ps6120/products_configuration_example09186a0080b2d922.shtml
    access-list tcp-bypass-acl permit tcp 192.168.1.0 255.255.255.0 192.168.8.0 255.255.255.0
    access-list tcp-bypass-acl permit tcp 192.168.8.0 255.255.255.0 192.168.1.0 255.255.255.0
    class-map tcp-bypass-cm
       match access-list tcp-bypass-acl
    policy-map tcp-bypass-policy
       class tcp-bypass-cm
           set connection advanced-options tcp-state-bypass
    service-policy tcp-bypass-policy inside

  • Running concurrent SAPEHPI on the same OS

    Hello
    We have to upgrade more then one SAP system running SAPEHPI, the SAP system are running on the same server.
    if running more then SAPEHPI on the same host for diffrent SAP system, tcp port will be busy (4239 and other)
    Do you know of a way to run SAPEHPI concurrent on the same server (change of http ports)
    TIA
    Erez

    Hi Erez,
    Kindly note that running concurrent EHPI's on the same system is a complicated process and unless very much required better not to use this.
    If you run several enhancement package installations in parallel on the
    same host, you have to use different port numbers for each. When you
    start the installation program, specify the port numbers as follows:
           o  httpport=<http port number>
           o  guiport=<GUI port number>
           o  -srvarg=/DSUService/abaptoolport=<port number for ABAP inst.
              tool>
    You can only run multiple SAP Enhancement Package Installer on ABAP only
    systems, not on dual stack or Java only systems.
    Do you use different port numbers? Are all ports accessible, especially
    on the frontend? (See port usage with netstat -a command)
    For configuring the different EHPI-Directories you can for instance
    use this: usr/sap/<SID>/EHPI
    where <SID> is the of the systems, where you execute the EHP
    installation.
    Please take care that the paths of the different EHPI-Directories
    that you will define are not very long!
    I hope this answers your query.
    Regards,
    Abhishek

  • BR Synthax error : Multiple executions at the same time

    Hi,
    we are currently doing stress tests on our system and one of the tests is to launch 6 times the same rule on 6 different workstations simultaneously.
    We got a drop in performance as expected but we also got some error like this one below:
    [Wed Sep 30 14:03:01 2009]Local/SBQ/Wrkforce/essadmin/Error(1200315)
    Error parsing formula for [FIX STATEMENT] (line 17): invalid object type
    [Wed Sep 30 14:03:01 2009]Local/SBQ/Wrkforce/essadmin/Error(1012001)
    Invalid Calc Script syntax [
    FIX("S0000","STOUS","A0000","ATOUS","P0000.0000","PTOUS","E23.1023","E23","I00","ITS")
    @MATCH("CR_Planif_Strat","CR*");
    ENDFIX]
    [Wed Sep 30 14:03:01 2009]Local/SBQ/Wrkforce/essadmin/Error(1200421)
    Error encountered on or after line [18]
    The problem here is that the same business rule runs for 5 users without problems and 1 user with a syntax error. The user who gets the error can later run the same business rule without errors.
    Did anyone ever experience something like that?
    We are using System 9.3.1.0.
    Thanks

    Hi,
    forget this issue. The users ran the wrong business rules (they took the "Wrkforce" version of the rule instead of the "Finance" one).
    We just saw it the log:
    Wed Sep 30 14:03:01 2009Local/SBQ/ Wrkforce /essadmin/Error(1200315)
    Thanks

  • Concurrently logging into the same file from 2 VMs

    If two processes running in the same machine.
    There is only one file name specified in logging.properties, e.g., test.log.
    VM 1 is logging into file test.log while VM 2 does the same thing to the same file.
    Based on the javadoc of FileHandler, the second vm will create another file
    like test.0.log to logging its data.
    Is that true?
    If true, then, when VM1 stops logging, VM2 starts logging again. Will the new logging messages from VM2 go to test.log?
    Thanks in advance.

    I have tested it out.
    When two applications in two processes logging to the same disk file (e.g. test.log) specified by the logging.properties at the same time, the two processes actually log to two different files: test.log.0 and test.log.1.
    When two applicatoins in two processes logging to the same disk file specified by the logging.properties as test.log at different time, e.g., the first process exits, then the second process executes, there are still two different files
    created for each process: test.log.0 and test.log.1.

  • Two separate address pools on the same interface?

    I'm something of a routing novice so bear with me...
    We have an ASA 5510 and we also have two separate address pools which have been provided by our ISP.  The addresses are not contiguous.  Is there a way to configure an interface on the ASA to handle both sets of public address pools?  If the outside interface is set up on eth0/0 would I create two subinterfaces (eth0/0.1, eth0/0.2) and assign each subinterface an address pool?  Then just NAT/PAT to my heart's content?   At that point I would want both to route to our inside network.  So it's basically two inbound sets of IP addresses comming into one interface and then comming into the network...  Right now the outside interface is configured with our first set of IP addresses.  We wanted additional addresses and when we called our ISP they told us we already had them - just a different pool.  Hence the question.  I'm guessing that I wouldn't put anything specific on the outside interface and I would put the specifics on the subinterfaces?
    I've never done something like this before - that's why I'm asking the question!  Any help/direction would be appreciated!
    Thank you!

    Hi,
    You shoud not create subinterfaces for this purpose. You will only complicate your setup and cause problems.
    To  be able to use the new public IP address range its basicly mostly up to  the ISP configurations. As long as the ISP has routed the new public  subnet towards ASA outside interface it should be usable. What you do  with it is up to you.
    You could
    Start  using the new public IP address range for server NAT addresses directly  on the ASA firewall and configure Static NAT when a new LAN/DMZ server  needs it.
    You can also route the new public subnet further in to  your LAN behind the ASA and use the public subnet directly as some  subnet for server etc.
    You could also configure the public  subnet directly to some interface on the ASA if you want the ASA to be  the gateway of the network. (This would be ofcourse some other interface than the current "outside" interface)
    All of the above  depends on how your network is built. Meaning for example how your link  to ISP is configured and what kind of devices you have on your network.
    Pleare rate if the information was helpfull and/or ask more questions if the above didnt answer your questions.
    - Jouni

  • To Find the Number of Execution of the same Documnet Number

    Hi,
    As i am working in one report, I would need to find a solution for the following problem.
    If i execute a report with a PO number as input, i want to know in which time this same PO number is getting executed through my report.
    Thanks In Advance,
    Prabu

    Hi,
    Please use GET TIME STAMP command before running your logic on PO and after completion like as follows:
    DATA: l_ts_start type timestamp,
               l_ts_end   type timestamp,
               l_total_time type i.
    GET TIME STAMP FIELD l_ts_start.
    Your logic of handling PO
    GET TIME STAMP FIELD l_ts_end.
    l_total_time = l_ts_end - l_ts_start.
    l_total_time gives you total time taken for processing you PO(s).
    Regards,
    Prasanth

  • Is ATA and ATA150 the same interface?

    Is this hd compatible with a MacBook?
    http://www.newegg.com/Product/Product.asp?Item=N82E16822146053

    When you boot from the install DVD can you see it under the system profiler or disk utility to initialize it for the Mac? Most HDs come formatted for Windows and while our Mac should still see it, you will want to format it HFS+ for use in your Mac.

  • Read Inbound payload at mapping execution of the outbound interface

    Hi,
    The sap system is sending us a field, that is not avaible on the web service we are consuming.
    The problem is that the sap system requires this field at the responce.
    How can I read the inbound payload, when I'm mapping the outbound responce?
    Thanks in advance,
    A

    Hi!
    Thanks for your responce.
    Well, I will ignore solutions 1 and 3. The project has an a "must" not tu use BPM and is not possible to modify the web service due it's a closed system (legal issues).
    And regarding the second point, are you proposing to create an RFC on the sap system?, The problem is that is not possible to reconstruct the relationship between the responce and the sended message. That is why I need to read the outbound payload.
    Is there any walkaround to "export" this field at the outbound mapping (Context objects?) and then import it at the inbound mapping? Where are the messages stored?... I was thinking that maybe i'll be able to read the sended message using ABAP mapping,  using the msgid to read an ABAP table (dont know which one). Can this be done?
    Thanks again,
    A

Maybe you are looking for

  • Lumia 625 dosn't connect to my W7 computer

    I have connected my Lumia 625 to my Windows 7 computer via the short Nokia USB cable. However, the W7 Explorer doesn't see it despite the usually beeps when I connect the phone.

  • Why does my screen turn green when I optimize a video in iMovie?

    When I optimize a video in iMovie, it turns the clip to a blank green screen.. Why? And how do I get that clip back to its original format?

  • HT4539 I  am being restricted from downloading items already purchased.

    For a long time now, items which I have purchased will not down load automatically. Now I can not select SD versions. I have not been able to track prior purchases to redown load. It seems as though my ablility to download purchased items is being sy

  • Re:Combining Sql Query

    hi friends         I am having 8 sql queries each query return some values i want combine the result of all the queries can you any one tell me how to do this is there anyother way other than union and normalaisation action to get the result after co

  • SMTP 553 Error w/ ATT Broadband - Can't send email

    I am having an issue sending email. Messages are getting caught up in the outbox and the verification is rejecting the messages b/c of what appears to be CAPITAL LETTERS. Ie. The sender address [email protected] was rejected by the server smtp.att.ya