‎2013 Sep 19 7:23 AM
Hi All,
We have a program scheduled as a batch job which is throwing dump DBIF_RSQL_INVALID_RSQL. I have attached extract of dump as attachment.
This dump is coming in production system but if same program is executed with same data in any other non - production system then it is working perfectly fine.
Any pointers to resolve this query will be helpful.
Thanks
Siddarth
‎2013 Sep 19 7:41 AM
Hello Siddarth,
The dump DBIF_RSQL_INVALID_RSQL occurs if the internal table used in a statement is of large size. The size of the internal table should not exceed a certain size. This size will vary from database to database. This is the reason you not facing the same issue in other systems. The best person to solve the issue would be your basis contact. You can check with your basis contact for knowing the maximum allowed size for the internal table and proceed with your Batch execution process accordingly.
Hope it helps.
Best Regards,
Praveenkumar
‎2013 Sep 19 8:14 AM
Hi Praveen,
I checked with the help of my basis guy and he says everything is perfectly fine and in sync as compared to other systems wherever required.
Any further pointers??
Thanks
Siddarth
‎2013 Sep 19 7:48 AM
Could you look via SM21 at system log, often you can get there the actual error message returned by SQL (size of statements, invalid values, lock in the database, etc. for example an ORA-0060 in an insert statement, as you are on Oracle )
Regards,
Raymond
‎2013 Sep 19 8:12 AM
Hi Raymond,
Thanks for your reply.
I checked in SM21 and it says "Maximum length of the long field of table /VWK/011_S exceeded" which I assume is referring to my table but not able to understand which field it is pointing to. Because if any field length is exceeded in the table then dump for that should occur in other systems as well which is not happening in my case.
So any other pointers...
Thanks
Siddarth
‎2013 Sep 19 8:21 AM
Long fields are last field of the table structure, can you check the actual type of the field, in ddic SE11 (LCHR, LRAW, STRING, etc.) as well as in database with help of basis, also are every system and database at exatct same level ?
Regards,
Raymond
‎2013 Sep 19 7:59 AM
Hi Siddarth,
I guess there is a change in dictionay objects in production and other systems. Please verify once.
Regards,
Nivedita
‎2013 Sep 19 8:12 AM
Hi Nivedita,
Tables are exactly same between all the systems. There is no change in the objects.
Thanks
Siddarth
‎2013 Sep 19 9:20 AM
Is it a custom program ? Then you will need to add try catch block.
Even if the table is the same in production as in other environments that does not mean that the data you are selecting is the same. Probably the data in Production is too big and you will need to adjust your program.
If it is a custom program you will need to adjust your select statement(s).
If it is a SAP program then you should contact SAP after you checked that there are no notes for this program(because then you will have to implement these notes first, did you check this ?)
‎2013 Sep 19 9:46 AM
Hi Peter,
Thanks for your reply.
This is a custom program. And data in our test environment is exact replica of production system. So number of entries extracted are exactly same. So there is no data different.
I will try adjusting program and check if this issue resolves.
Thanks
Siddarth