Quantcast
Channel: SCN : Discussion List - SAP on Oracle
Viewing all articles
Browse latest Browse all 1892

Row lock waits on BPGE when idocs parallel processing

$
0
0

For a long time we have a problem with mass parallel processing of IDOCs in SAP ERP. Big delay is in parallel UPDATE of BPGE table.

 

The description of process:
*) at night time, in SAP ERP come about 400-450 idocs at the same time.
*) now, begining processing of these idocs in RWPOS_PARA_ENQUEUE program, with 10-14 parallel streams.
*) about 10 minutes after begin, when function module SAPLKBPV is active, the BPGE table in all 14 streams locked for update. And only one process worked and switching other function modules and tables. There is no locks of all other tables: MVKE, MKPF, CE11000, S033, S110, S122 etc.

 

BPGE_performance3.PNG

 

The same way looks processing idocs in RBDAPP01 program.

 

I will give some screenshots, showing negative load in this timeframe:

 

Oracle Activity:
BPGE_performance1.PNG

(as we see, there is a large number of oracle "enq: TX - row lock contention")

 

Top 10 foreground events:
AWR_screen1.PNG

 

SQL by elapsed time:
AWR_screen2.PNG

 

Segments by Row Lock Waits
AWR_screen3.PNG

 

Segments by Buffer busy Waits
AWR_screen4.PNG

 

I tried too many optimizations of BPGE table:
*) creating/dropping indexes
*) put it in oracle KEEP POOL
*) change the technical parameters INITRANS, MAXTRANS, PCTFREE, PCTUSED
*) change number of parallel streams in RWPOS_PARA_ENQUEUE (or RBDAPP01)
It had no effect.

 

Why are the BPGE table updated? Can we update it at the end of processing, only ONCE? How can we disable this function module? (SAPLKBPV?)

If we could get rid of BPGE locks, the performance of parallel processing will increase significantly.


Viewing all articles
Browse latest Browse all 1892

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>