2009 Nov 26 10:19 AM
Hello All,
We have a strange dump DBIF_RSQL_INVALID_CURSOR coming up in of our Custom Query in MM module. The Query goes in dump for some users and for other user it is working perfectly.
There has been no change done from ABAP side in the Query and it was working well before.
We analyzed the Dump in ST22 and found that dump is triggered at Select statement (Join statement for MARC)..However this is happening for some users.
There seems to be no ABAP error as nothing has been done on it.
Could any one let me know why this DUMP is coming..is it a KERNEL change issue or something in BASIS triggers it.
Please suggest!!
Thank you
Arvind
2009 Nov 26 10:21 AM
2009 Nov 26 10:22 AM
may be those user debugging you code. Incorrect place of debug point will trigger this error. Ask your user not to debug the code.
venkat
2009 Nov 26 10:26 AM
Hello,
Users are not in debugging mode and they are simply executing transaction which is attached to program name of ABAP Query.
here is the erroneous select:
select MARCAUFTL MARCBESKZ MARCBSTMI MARCBSTRF MARCDIBER MARCDISLS
MARCMAABC MARCMATNR MARCMINBE MARCMMSTA MARCMTVFP MARCPERKZ
T001WWERKS MARAGEWEI MARAMATKL MARAMATNR MARAMEINS MARAMSTA
ZMM_MATCATEWERKS ZMM_MATCATEZXYZ MBEWBWKEY MBEWBWTAR MBEW~MAT
T001KBUKRS T001KBWKEY T001BUKRS T001WAERS
into (MARC-AUFTL , MARC-BESKZ , MARC-BSTMI , MARC-BSTRF , MARC-DIBER , M
, MARC-EISBE , MARC-EKGRP , MARC-MAABC , MARC-MATNR , MARC-MINBE ,
, MARC-SOBSL , MARC-WEBAZ , MARC-WERKS , T001W-SPRAS , T001W-WERKS
, MARA-MSTAV , MARA-MTART , MARA-NTGEW , MARA-PRDHA , ZMM_MATCATE-M
, MBEW-BWTAR , MBEW-MATNR , MBEW-PEINH , MBEW-SALK3 , MBEW-STPRS ,
, T001-BUKRS , T001-WAERS )
from ( MARC
inner join T001W
on T001WWERKS = MARCWERKS
inner join MARA
on MARAMATNR = MARCMATNR
left outer join ZMM_MATCATE
on ZMM_MATCATEMATNR = MARCMATNR
and ZMM_MATCATEWERKS = MARCWERKS
inner join MBEW
Thanks
Arvind
Edited by: Arvind Soni on Nov 26, 2009 12:26 PM
2009 Nov 26 10:33 AM
Hello Arvind,
This is the longest SELECT query i have seen till date. JOIN on 5 tables, phew !!!
May be you can try to split the selects into smaller entities & see.
BR,
Suhas
2009 Nov 26 10:26 AM
Hi
The error is as the system has lost the cursor to read the database table, so it can't know in which position of reading is.
Now it can be several causes for that dump, for example if a COMMIT is raised while selecting
Max
2009 Nov 26 10:29 AM
Hello Max,
I agree....commit/Roll back/break statement will remove the cursor..but here the Query is executing properly for some users and for some users issue is coming.
Also we have looked into the code and there is no such statement between select..Endselect
Thanks
Arvind
2009 Nov 26 10:30 AM
try separating the join to two selects using for all entries..
2009 Nov 26 10:31 AM
As per my understanding , some one made a change in Z table ZMM_MATCATE , check it or you can re-generate your query.
2009 Nov 26 10:40 AM
We have regenerated the Query again but still the problem persists.
I donot understand how Splitting the JOIN will effect it, as the issue is not because of huge data...its going in dump even for some users if Query is executed with two materials.
2009 Dec 02 1:30 PM
When responding to this question, please take into account the following information:
- The report which is dumping is an ABAP query, which means the code is generated by SAP, not by a programmer.
- The query is created in the global query area and thus equal across systems.
- The last change to the query was made in 2007, no issues were reported until now.
- The last change to table ZMM_MATCATE was done in 2005.
- The query is working fine in all envinroments excep the production environment.
- In order to verify that the issue is specific to the production environment, I downloaded the query from production and uploaded it to the QA-system in the standard query area. The query then executed without problems in QA. This was the exact same query which dumps in production (both in global area and standard area).
- The dump happens always when processing the second record between the SELECT and ENDSELECT statement. So first a SELECT is performed successfully for the first record selected, all processing is complete for the first record, then when the report reaches the ENDSELECT and start processing the next record with the SELECT statement the program dumps. Note that this happens irrespective of selection criteria and which record is the first or second.
- Our technical team had a maintenance break with support packages installed just prior to this issue started to appear. The same support packages are however in all other environments. Our support package levels are listed below:
SAP_BASIS 620 0063 SAPKB62063 SAP Basis Component
SAP_ABA 620 0063 SAPKA62063 Cross-Application Component
SAP_APPL 470 0029 SAPKH47029 Logistics and Accounting
2014 Oct 05 1:54 PM
Hello Geir,
I am also facing the same issue. Its been very emergency. I am having a BKPF query using SELECT ENDESLCT with PAKAGE SIZE. First execution happenes fine. As soon as it reaches the ENDSELECT and go for second selection, I am getting a dump: DBIF_RSQL_INVALID_CURSOR.
Read through the SCN posts and yous were the most apt reply. Can you please tell me how to resolve this issue.
Please help.
Thanks,
LT
2009 Dec 02 2:15 PM
Can you provide the st22 dump here.. looking at that might give some ideas...
2014 Oct 05 5:29 PM
As I already told Linda: There is an interrupt between select and enselect.
See my reply to Lindas inquiry.
Regards
Clemens