Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Getting runtime error SAPSQL_ARRAY_INSERT_DUPREC In production

Former Member
0 Likes
2,955

Hi,

can somebody help me regarding below issue.i am abaper.

During SAP technical monitoring it has been noticed

that there are many System dumps SAPSQL_ARRAY_INSERT_DUPREC other terms in the dump file are SALLZED7, LZED7F01, and UPDATE_TORGUE_TABLE. The user is WF-BATCH and is in a dialogue session. Error Message : SAPSQL_ARRAY_INSERT_DUPREC

Report : SAPLZED7

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
2,571

Well SAPLZED7 is a customer report, so we cant check.

The INSERT_DUPREC error means you are trying to insert a record into a table which already exists (viewing key fields).

hope you get some further...

7 REPLIES 7
Read only

Former Member
0 Likes
2,571

There is some inconsistency in the data, System is trying to insert the records into a table with the same primary key which is existing in the table. You will get short dump in T-code ST22. Refer to the Dump details for Tablename and related information.

Regards

Vinod

Read only

Former Member
0 Likes
2,572

Well SAPLZED7 is a customer report, so we cant check.

The INSERT_DUPREC error means you are trying to insert a record into a table which already exists (viewing key fields).

hope you get some further...

Read only

0 Likes
2,571

Hello ,

Thanks for ur reply.

i am providing detailed dump information , please guide me if anything u get.

What happened? The database system detected a deadlock and avoided it by rolling back

your transaction.

Error analysis

An exception occurred that is explained in detail below.

The exception, which is assigned to class 'CX_SY_OPEN_SQL_DB', was not caught

in

procedure "/TOPFLOW/BDE_ZPRM_VERBUCHER" "(FUNCTION)", nor was it propagated by

a RAISING clause.

Since the caller of the procedure could not have anticipated that the

exception would occur, the current program is terminated.

The reason for the exception is:

The database system recognized that your last operation on the database

would have led to a deadlock.

Therefore, your transaction was rolled back

to avoid this.

ORACLE always terminates any transaction that would result in deadlock.

The other transactions involved in this potential deadlock

are not affected by the termination.

How to correct the error

Database error text........: "ORA-00060: deadlock detected while waiting for

resource"

Internal call code.........: "[RSQL/DELE//TOPFLOW/BTANM ]"

Please check the entries in the system log (Transaction SM21).

If the error occures in a non-modified SAP program, you may be able to

find an interim solution in an SAP Note.

If you have access to SAP Notes, carry out a search with the following

keywords:

"DBIF_RSQL_SQL_ERROR" "CX_SY_OPEN_SQL_DB"

"/TOPFLOW/SAPLBDE_ZPRM" or "/TOPFLOW/LBDE_ZPRMU25"

"/TOPFLOW/BDE_ZPRM_VERBUCHER"

If you cannot solve the problem yourself and want to send an error

notification to SAP, include the following information:

1. The description of the current problem (short dump)

To save the description, choose "System->List->Save->Local File

(Unconverted)".

2. Corresponding system log

Display the system log by calling transaction SM21.

Restrict the time interval to 10 minutes before and five minutes

after the short dump. Then choose "System->List->Save->Local File

(Unconverted)".

3. If the problem occurs in a problem of your own or a modified SAP

Information on where terminated Termination occurred in the ABAP program "/TOPFLOW/SAPLBDE_ZPRM" - in

"/TOPFLOW/BDE_ZPRM_VERBUCHER".

The main program was "SAPMSSY1 ".

In the source code you have the termination point in line 26

of the (Include) program "/TOPFLOW/LBDE_ZPRMU25".

The termination is caused because exception "CX_SY_OPEN_SQL_DB" occurred in

procedure "/TOPFLOW/BDE_ZPRM_VERBUCHER" "(FUNCTION)", but it was neither

handled locally nor declared

in the RAISING clause of its signature.

The procedure is in program "/TOPFLOW/SAPLBDE_ZPRM "; its source code begins in

line

1 of the (Include program "/TOPFLOW/LBDE_ZPRMU25 ".

Read only

0 Likes
2,571

"ORA-00060: deadlock detected while waiting for resource" - A deadlock has occured in database.

"Please check the entries in the system log (Transaction SM21)" - Ask the Basis team to findout against which table dead lock has occured. The dump shows the error occured while execution of function "/TOPFLOW/BDE_ZPRM_VERBUCHER". Findout the tables used inside this object.

Regards

Vinod

Read only

0 Likes
2,571

Hi,

last question from my side...

Its pure standard program. In the below marking delete sttement synatx giving dump . i saw in ST22.

Can u guess why this delete is giving dump??

IF ls_anm-satza IS INITIAL AND

ls_anm-aufnr IS INITIAL AND

ls_anm-rueck IS INITIAL.

DELETE lt_anm WHERE lfd_fa_nr = ls_anm-lfd_fa_nr.

DELETE FROM /topflow/btanm WHERE lfd_fa_nr = ls_anm-lfd_fa_nr.

CLEAR: ls_anm.

ENDIF.

ENDLOOP.

COMMIT WORK AND WAIT.

Read only

0 Likes
2,571

Hi,

Check with Basis Team to find out whether Deadlock (Ora-600) was detected against the table mentioned by you.

Regards

Vinod

Read only

Former Member
0 Likes
2,571

I think you can see the Dump history.

If the data is not SORTED before inserting we will get dump.

Sort internal table before inserting with key fields.

Regards,

Pravin