Unsolved
This post is more than 5 years old
36 Posts
0
1406
November 16th, 2009 07:00
yacc stack overflow error while running DQL
Hi,
We have DQL where we pass large number of ids in the where clause. This query is working fine when we pass around 350 ids. However when we pass morethan 500 ids, we are getting "yacc stack overflow error"
select id from string_table where id in (1,2,3,.........................700)
Any help will be appreciated.
Regards,
Raj
No Events found!



JKRNO
2 Intern
•
428 Posts
0
November 16th, 2009 11:00
Hi,
this is a known limitation, and there is actually no workaround at all.
You simply can't execute DQL statements above a certain size. It's somehow close to 4K, I think.
The only possible solution is to execute the statement in two DQL's, if that's possible.
If you can't find any other way, you could store all your values in a registered table, and run a join against this one.
Regards
Jørg
Shroff_Vaishali
1 Message
0
July 8th, 2011 10:00
Thanks. I had the exact same issue. Also I want to know Does this apply to the SQL generated from a given shorter DQL as well. i.e. does the SQL that is run behind the scenes have a size llimit?