Here we will discuss about How to Primavera Integration API creates duplicate records, Primavera creates duplicate object records when SAP Enterprise Project Connection(EPC) processes concurrent requests having same project or order data for creation in Primavera using Primavera P6 EPPM Integration API.
Reason and Prerequisites
SAP EPC is using Oracle Primavera P6 Integration API to read and write data to and from Primavera P6 EPPM System. SAP EPC Integration Engine that processes the data is multi-threaded. If thread is available for processing then it starts a thread for each request it gets from the asynchronous job queue.
When SAP EPC receives more than one request with exactly identical Project or Order data from SAP ERP then it might process these requests at the same time (concurrently) depending on the availability of the thread.
Primavera support confirmed that Primavera P6 Integration API creates duplicated records when using multiple-threads to create the Project, Activities and other objects.
Data duplication issue workaround: Till Oracle Primavera support fixes this issue, SAP EPC includes a work around that will prevent duplication data creation in Primavera P6 running SAP EPC release in single instance environment multi-threaded environment.
The following limitations and impact of this work around:
1) Multithreading/Performance impact of SAP EPC fix:
This workaround will have some impact on performance but that will be limited to data creation in Primavera and this impact will be a very minor in terms of performance but this performance impact will be balanced by other fixes included in this release.
2) Testing of SAP EPC fix:
Customers/Partners facing data duplication creation issue in Primavera using SAP EPC interface are advised to test build in their Development/QA/test environment first and test the data duplication issue.
3) SAP EPC running in a SAP NetWeaver AS Java Cluster:
This workaround will not fix the data duplication issue for customers running SAP EPC in a cluster environment. Attempt to integrate same data simultaneously will most likely result in creation of duplicate records.